+ ; receive routine (byte stored in uart_rxtx)
+ rcall UART_RX
+
+ ; loop back the received byte
+ rcall UART_TX
+
+ ; drive the motor
+ rcall MOTOR_STOP
+ cpi uart_rxtx,CTRL_FWD
+ brne CTRL1
+ rcall MOTOR_FWD
+ rjmp CTRL4
+ CTRL1:
+ cpi uart_rxtx,CTRL_BWD
+ brne CTRL2
+ rcall MOTOR_BWD
+ rjmp CTRL4
+ CTRL2:
+ cpi uart_rxtx,CTRL_RIGHT
+ brne CTRL3
+ rcall MOTOR_RIGHT
+ rjmp CTRL4
+ CTRL3:
+ cpi uart_rxtx,CTRL_LEFT
+ brne CTRL4
+ rcall MOTOR_LEFT
+ CTRL4: