car chassis
Dependencies: Servo mbed-rtos mbed
driver.cpp
- Committer:
- mariob
- Date:
- 2015-08-31
- Revision:
- 1:79b1ee0f97ef
- Child:
- 2:7dfc8dd6aab3
File content as of revision 1:79b1ee0f97ef:
#include "car_config.hpp" #include "mbed.h" #include "rtos.h" extern can_cmd_driver_t can_cmd_driver; extern can_sts_driver_t can_sts_driver; void init_driver () { } void thread_driver (void const *args) { while(1) { //printf("DRIVER\r\n"); if (can_cmd_driver.flag == CAN_FLAG_RECEIVED) { uint16 cmd = can_cmd_driver.payload.msg.cmd; //uint16 opt = can_cmd_driver.payload.msg.opt; uint32 data = can_cmd_driver.payload.msg.data; switch(cmd) { case CMD_ECHO: can_sts_driver.payload.msg.data = data; can_sts_driver.flag = CAN_FLAG_SEND; printf("ECHO %d\r\n", can_cmd_driver.payload.msg.data); break; default: //ignore it break; } can_cmd_driver.flag = CAN_FLAG_EMPTY; } Thread::wait(DRIVER_THREAD_PERIOD); } }