@@ -92,7 +92,7 @@ namespace ExtUI {
9292 DWIN_SERIAL.begin (115200 );
9393 rtscheck.recdat .head [0 ] = rtscheck.snddat .head [0 ] = FHONE;
9494 rtscheck.recdat .head [1 ] = rtscheck.snddat .head [1 ] = FHTWO;
95- memset (rtscheck.databuf , 0 , sizeof (rtscheck. databuf ) );
95+ ZERO (rtscheck.databuf );
9696
9797 delay_ms (TERN (DWINOS_4, 1500 , 500 )); // Delay to allow screen startup
9898 SetTouchScreenConfiguration ();
@@ -206,7 +206,7 @@ namespace ExtUI {
206206
207207 if (waitway_lock > 100 ) {
208208 waitway_lock = 0 ;
209- waitway = 0 ; // clear waitway if nothing is going on
209+ waitway = 0 ; // clear waitway if nothing is going on
210210 }
211211
212212 switch (waitway) {
@@ -416,7 +416,7 @@ namespace ExtUI {
416416 RTSSHOW::RTSSHOW () {
417417 recdat.head [0 ] = snddat.head [0 ] = FHONE;
418418 recdat.head [1 ] = snddat.head [1 ] = FHTWO;
419- memset (databuf, 0 , sizeof (databuf) );
419+ ZERO (databuf);
420420 }
421421
422422 int16_t RTSSHOW::RTS_RecData () {
@@ -494,8 +494,8 @@ namespace ExtUI {
494494 return -1 ;
495495 }
496496
497- void RTSSHOW::RTS_SndData (void ) {
498- if (( snddat.head [0 ] == FHONE) && ( snddat.head [1 ] == FHTWO) && snddat.len >= 3 ) {
497+ void RTSSHOW::RTS_SndData () {
498+ if (snddat.head [0 ] == FHONE && snddat.head [1 ] == FHTWO && snddat.len >= 3 ) {
499499 databuf[0 ] = snddat.head [0 ];
500500 databuf[1 ] = snddat.head [1 ];
501501 databuf[2 ] = snddat.len ;
@@ -527,7 +527,7 @@ namespace ExtUI {
527527 }
528528
529529 memset (&snddat, 0 , sizeof (snddat));
530- memset (databuf, 0 , sizeof (databuf) );
530+ ZERO (databuf);
531531 snddat.head [0 ] = FHONE;
532532 snddat.head [1 ] = FHTWO;
533533 }
@@ -539,7 +539,6 @@ namespace ExtUI {
539539 }
540540
541541 void RTSSHOW::RTS_SndData (const char *str, uint32_t addr, uint8_t cmd/* =VarAddr_W*/ ) {
542-
543542 int16_t len = strlen (str);
544543 constexpr int16_t maxlen = SizeofDatabuf - 6 ;
545544 if (len > 0 ) {
@@ -556,25 +555,29 @@ namespace ExtUI {
556555 DWIN_SERIAL.write (databuf[i]);
557556 delay_us (1 );
558557 }
559- memset (databuf, 0 , sizeof (databuf) );
558+ ZERO (databuf);
560559 }
561560 }
562561
563- void RTSSHOW::RTS_SndData (char c, uint32_t addr, uint8_t cmd/* =VarAddr_W*/ ) {
562+ void RTSSHOW::RTS_SndData (const char c, const uint32_t addr, const uint8_t cmd/* =VarAddr_W*/ ) {
564563 snddat.command = cmd;
565564 snddat.addr = addr;
566- snddat.data [0 ] = uint32_t (c);
567- snddat.data [0 ] = snddat.data [0 ] << 8 ;
565+ snddat.data [0 ] = uint32_t (uint16_t (c) << 8 );
568566 snddat.len = 5 ;
569567 RTS_SndData ();
570568 }
571569
572- void RTSSHOW::RTS_SndData (uint8_t *str, uint32_t addr, uint8_t cmd) { RTS_SndData ((char *)str, addr, cmd); }
573-
574- void RTSSHOW::RTS_SndData (int16_t n, uint32_t addr, uint8_t cmd/* =VarAddr_W*/ ) {
570+ void RTSSHOW::RTS_SndData (const int n, const uint32_t addr, const uint8_t cmd/* =VarAddr_W*/ ) {
575571 if (cmd == VarAddr_W) {
576- snddat.data [0 ] = n;
577- snddat.len = 5 ;
572+ if ((unsigned int )n > 0xFFFF ) {
573+ snddat.data [0 ] = n >> 16 ;
574+ snddat.data [1 ] = n & 0xFFFF ;
575+ snddat.len = 7 ;
576+ }
577+ else {
578+ snddat.data [0 ] = n;
579+ snddat.len = 5 ;
580+ }
578581 }
579582 else if (cmd == RegAddr_W) {
580583 snddat.data [0 ] = n;
@@ -589,13 +592,7 @@ namespace ExtUI {
589592 RTS_SndData ();
590593 }
591594
592- void RTSSHOW::RTS_SndData (uint16_t n, uint32_t addr, uint8_t cmd) { RTS_SndData (int16_t (n), addr, cmd); }
593-
594- void RTSSHOW::RTS_SndData (float n, uint32_t addr, uint8_t cmd) { RTS_SndData (int16_t (n), addr, cmd); }
595-
596- void RTSSHOW::RTS_SndData (int32_t n, uint32_t addr, uint8_t cmd) { RTS_SndData (uint32_t (n), addr, cmd); }
597-
598- void RTSSHOW::RTS_SndData (uint32_t n, uint32_t addr, uint8_t cmd/* =VarAddr_W*/ ) {
595+ void RTSSHOW::RTS_SndData (const unsigned long n, uint32_t addr, uint8_t cmd/* =VarAddr_W*/ ) {
599596 if (cmd == VarAddr_W) {
600597 if (n > 0xFFFF ) {
601598 snddat.data [0 ] = n >> 16 ;
@@ -632,11 +629,11 @@ namespace ExtUI {
632629 if (recdat.addr == Addrbuf[i]) {
633630 if (Addrbuf[i] == NzBdSet || Addrbuf[i] == NozzlePreheat || Addrbuf[i] == BedPreheat || Addrbuf[i] == Flowrate)
634631 Checkkey = ManualSetTemp;
635- else if (Addrbuf[i] >= Stopprint && Addrbuf[i] <= Resumeprint)
632+ else if (WITHIN ( Addrbuf[i], Stopprint, Resumeprint) )
636633 Checkkey = PrintChoice;
637- else if (Addrbuf[i] >= AutoZero && Addrbuf[i] <= DisplayZaxis)
634+ else if (WITHIN ( Addrbuf[i], AutoZero, DisplayZaxis) )
638635 Checkkey = XYZEaxis;
639- else if (Addrbuf[i] >= FilamentUnit1 && Addrbuf[i] <= FilamentUnit2)
636+ else if (WITHIN ( Addrbuf[i], FilamentUnit1, FilamentUnit2) )
640637 Checkkey = Filament;
641638 else
642639 Checkkey = i;
@@ -1054,7 +1051,7 @@ namespace ExtUI {
10541051 else if (recdat.data [0 ] == 2 ) { // Exchange filament
10551052 InforShowStatus = true ;
10561053 TPShowStatus = false ;
1057- memset (ChangeMaterialbuf, 0 , sizeof (ChangeMaterialbuf) );
1054+ ZERO (ChangeMaterialbuf);
10581055 ChangeMaterialbuf[1 ] = ChangeMaterialbuf[0 ] = 10 ;
10591056 RTS_SndData (10 * ChangeMaterialbuf[0 ], FilamentUnit1); // It's ChangeMaterialbuf for show,instead of current_position[E_AXIS] in them.
10601057 RTS_SndData (10 * ChangeMaterialbuf[1 ], FilamentUnit2);
0 commit comments