URS - LV11 - HMI - 3. zadatak - Servo

Dependencies:   mbed

Revision:
1:a59853df510d
Parent:
0:0bb9abf8a951
Child:
2:71767bf8e14d
diff -r 0bb9abf8a951 -r a59853df510d main.cpp
--- a/main.cpp	Wed Jan 19 14:42:24 2022 +0000
+++ b/main.cpp	Mon Jan 24 09:13:29 2022 +0000
@@ -1,26 +1,25 @@
-#include "mbed.h"
-
+#include "mbed.h" 
+ 
 Serial nextion(p28, p27); 
 PwmOut servo(p21);            
-
+ 
 char buffer[20]; 
 int znak = 0; 
-
+ 
 uint8_t pozicija = 0;
-
+ 
 void Rx_interrupt(void){
     char c;
-
+ 
     if(nextion.readable()) {
         c = nextion.getc();
         buffer[znak] = c;
         znak++;
-
-        if ((znak >= 3) && (buffer[znak-1] == 0xff) && (buffer[znak-2] == 0xff) && (buffer[znak-3] == 0xff)) {  
-            buffer[znak-3] = '\0';
+ 
+        if ((znak >= 2) && (buffer[znak-1] == 0x0d)) {  
             pozicija = 0;
             for(int i = 0; i < 3; i++) {
-                if(buffer[i] == '\0') break;
+                if(buffer[i] == 0x0d) break;
                 pozicija = pozicija * 10 + (buffer[i] - 48);
             }
             servo.pulsewidth_us(5.56*pozicija+1000);
@@ -29,7 +28,7 @@
         }
     }
 } 
-
+ 
 int main(){
     nextion .attach(&Rx_interrupt, Serial::RxIrq); 
     servo.period(0.02);