CAN_ex_1

Dependencies:   mbed

main.cpp

Committer:
lscordovar
Date:
2019-01-17
Revision:
3:9d2d0b0189be
Parent:
2:d6cbcdb04ada

File content as of revision 3:9d2d0b0189be:

#include "mbed.h"

//#if defined (DEVICE_CAN) || defined(DOXYGEN_ONLY)

Ticker ticker;
DigitalOut led1(PD_12);
DigitalOut led2(PD_14);
/** The constructor takes in RX, and TX pin respectively.
  * These pins, for this example, are defined in mbed_app.json
  */
CAN can1(PD_0, PD_1);
//CAN can2(PB_5, PB_6);

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(can1.read(msg)) {
            printf("Message received: %d\n", msg.data[0]);
            led2 = !led2;
        } 
        wait(0.2);
    }
}
/*
#else
  #error CAN NOT SUPPORTED
  
#endif
*/