Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Diff: main.cpp
- Revision:
- 0:0da0fd430e20
- Child:
- 1:10f557e7216d
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp Thu Dec 06 14:43:47 2018 +0000
@@ -0,0 +1,72 @@
+ #include "mbed.h" //5.4.7 (144)
+
+const PinName can1rxPins[] = {PA_11};
+const PinName can1txPins[] = {PA_12};
+const PinName can2rxPins[] = {PB_12};
+const PinName can2txPins[] = {PB_13};
+
+//CAN1
+//0,0=OK 0,1=OK 0,2=OK 1,0=OK 1,1=OK 1,2=OK 2,0=OK 2,1=OK 2,2=OK
+//CAN2
+//0,0=RX_OK 0,1=OK 1,0=RX_OK 1,1=OK
+
+CAN can1(can1rxPins[0], can1txPins[0]);
+CAN can(can2rxPins[0], can2txPins[0]);
+
+ //UART1, Tx, Rx (Debug)
+DigitalOut led1(LED1);
+
+
+Thread sendThread(osPriorityAboveNormal, 2048);
+Thread canrx;
+CANMessage messageIn;
+CANMessage messageOut;
+
+void canRxIsr()
+{
+ while(1)
+ {
+ if(can1.read(messageIn))
+ {
+ led1 = !led1;
+ printf("received\n\r");
+ }
+ }
+ }
+void sendMessage()
+{
+ int status = can.write(messageOut);
+ printf("Send status: %d\r\n", status);
+}
+
+void sendMessageLoop()
+{
+ while (true)
+ {
+ sendMessage();
+ osDelay(1000);
+ }
+}
+
+int main()
+{
+
+ printf("CAN receive / transmit test.\r\n");
+ //can.frequency(125000);
+
+ messageOut.id = 1337;
+ //messageOut.format = CANExtended;
+ //messageOut.len = 0;
+
+ canrx.start(canRxIsr);
+ printf("CAN receive / .\r\n");
+ sendThread.start(&sendMessageLoop);
+ printf("CAN \r\n");
+
+ while (true)
+ {
+
+ led1 = 0;
+ osDelay(1000);
+ }
+}
\ No newline at end of file