mbed_example
/
CAN_ex_1
Additional CAN example
main.cpp
- Committer:
- aashishc1988
- Date:
- 2018-10-11
- Revision:
- 2:d6cbcdb04ada
- Parent:
- 1:5791101761f9
File content as of revision 2:d6cbcdb04ada:
#include "mbed.h" #if defined (DEVICE_CAN) || defined(DOXYGEN_ONLY) Ticker ticker; DigitalOut led1(LED1); DigitalOut led2(LED2); /** The constructor takes in RX, and TX pin respectively. * These pins, for this example, are defined in mbed_app.json */ CAN can1(MBED_CONF_APP_CAN1_RD, MBED_CONF_APP_CAN1_TD); CAN can2(MBED_CONF_APP_CAN2_RD, MBED_CONF_APP_CAN2_TD); char counter = 0; void send() { printf("send()\n"); if(can1.write(CANMessage(1337, &counter, 1))) { printf("wloop()\n"); counter++; printf("Message sent: %d\n", counter); } led1 = !led1; } int main() { printf("main()\n"); ticker.attach(&send, 1); CANMessage msg; while(1) { printf("loop()\n"); if(can2.read(msg)) { printf("Message received: %d\n", msg.data[0]); led2 = !led2; } wait(0.2); } } #else #error CAN NOT SUPPORTED #endif