Kaspars D
/
CAN-node-loop
Testing CAN network with two nodes in loopback
Embed:
(wiki syntax)
Show/hide line numbers
main.cpp
00001 #include "mbed.h" 00002 00003 Ticker ticker; 00004 DigitalOut led1(LED1); 00005 DigitalOut led2(LED2); 00006 CAN can1(p9, p10); 00007 CAN can2(p30, p29); 00008 char counter = 0; 00009 00010 void send() { 00011 if(can1.write(CANMessage(1337, &counter, 1))) { 00012 counter++; 00013 printf("Message sent: %d\r\n", counter); 00014 } 00015 00016 printf("CAN1 rderror: %d, tderror: %d\r\n", can1.rderror(), can1.tderror() ); 00017 printf("CAN2 rderror: %d, tderror: %d\r\n", can2.rderror(), can2.tderror() ); 00018 00019 led1 = !led1; 00020 } 00021 00022 int main() { 00023 ticker.attach(&send, 1); 00024 CANMessage msg; 00025 while(1) { 00026 if(can2.read(msg)) { 00027 printf("Message received: %d\r\n", msg.data[0]); 00028 led2 = !led2; 00029 } 00030 wait(0.2); 00031 } 00032 }
Generated on Wed Jul 20 2022 14:53:00 by 1.7.2