@@ -23,15 +23,18 @@ SensorTofMatrix tof(alvik.wire, EXT_GPIO3, EXT_GPIO2);
2323ucPack packeter (200 );
2424
2525uint8_t code;
26+ uint8_t label;
27+ uint8_t control_type;
2628uint8_t msg_size;
2729
30+
2831unsigned long tmotor=0 ;
2932unsigned long tsend=0 ;
3033unsigned long tsensor=0 ;
3134unsigned long timu=0 ;
3235
3336
34- float left, right;
37+ float left, right, value ;
3538uint8_t leds;
3639
3740uint8_t sensor_id = 0 ;
@@ -40,6 +43,7 @@ uint8_t sensor_id = 0;
4043uint8_t pid;
4144float kp, ki, kd;
4245
46+ uint8_t servo_A, servo_B;
4347
4448
4549void setup (){
@@ -75,11 +79,24 @@ void loop(){
7579 packeter.unpacketC2F (code,left,right);
7680 alvik.setRpm (left, right);
7781 break ;
78- /*
82+ case ' W' :
83+ packeter.unpacketC2B1F (code,label,control_type,value);
84+ if ((label == ' L' ) && (control_type == ' V' )) {
85+ alvik.motor_control_left ->setRPM (value);
86+ }
87+ else if ((label == ' R' ) && (control_type == ' V' ))
88+ {
89+ alvik.motor_control_right ->setRPM (value);
90+ }
91+
92+ break ;
93+
7994 case ' S' :
80- alvik.setRpm(0,0);
95+ packeter.unpacketC2B (code,servo_A,servo_B);
96+ alvik.setServoA (servo_A);
97+ alvik.setServoB (servo_B);
8198 break ;
82- */
99+
83100 case ' L' :
84101 packeter.unpacketC1B (code,leds);
85102 alvik.setAllLeds (leds);
@@ -135,7 +152,6 @@ void loop(){
135152 if (millis ()-tmotor>20 ){
136153 tmotor=millis ();
137154 alvik.updateMotors ();
138- alvik.updateImu ();
139155 msg_size = packeter.packetC2F (' j' , alvik.getRpmLeft (),alvik.getRpmRight ());
140156 alvik.serial ->write (packeter.msg ,msg_size);
141157
0 commit comments