Gerardo Antonio
/
CANnucleo_Hello3
CAN a enviar_TLMoto
Fork of CANnucleo_Hello by
Embed:
(wiki syntax)
Show/hide line numbers
main.cpp
00001 #include "mbed.h" 00002 #include "CAN.h" 00003 00004 // const unsigned int TX_ID = 0x101; 00005 const unsigned int TX_ID = 0x155; //em binario: 101010101 00006 00007 DigitalOut led(PA_5); 00008 int ledState; 00009 CAN can1(PA_11, PA_12); // CAN Rx pin name, CAN Tx pin name 00010 CAN can2(PB_12, PB_13); // CAN Rx pin name, CAN Tx pin name 00011 CANMessage txMsg; 00012 CANMessage rxMsg; 00013 int counter = 0; 00014 00015 //Serial pc(SERIAL_TX, SERIAL_RX); 00016 00017 int main() { 00018 can1.frequency(40000); // set bit rate to 1Mbps 00019 can2.frequency(40000); // set bit rate to 1Mbps 00020 led = 1; // turn LED on 00021 //pc.printf("pcprintf check"); 00022 00023 while(1) { 00024 wait(10); 00025 00026 counter++; // increment counter 00027 // ledState = led.read(); // get led state 00028 ledState = 1; 00029 txMsg.clear(); // clear Tx message storage 00030 // txMsg.id = TX_ID; // set ID (9 bits) 00031 00032 00033 00034 txMsg=CANMessage(TX_ID,"a",1,CANData,CANStandard); 00035 00036 //txMsg << counter; // append first data item (32? bits?=4bytes) 00037 //txMsg << ledState; // append second data item (total data lenght must be <= 8 bytes!) (=4bytes) 00038 00039 00040 can1.write(txMsg); 00041 // if(can1.write(txMsg)) // transmit message 00042 // led = 1; // turn LED on 00043 // else 00044 // led = 0; // turn LED off 00045 00046 if(can2.read(rxMsg,0)) { 00047 // pc.printf("Message received: %d\n", rxMsg.data[0]); 00048 // pc.printf("Message received: %d\n"); 00049 led = !led; 00050 } 00051 00052 00053 } 00054 }
Generated on Fri Jul 15 2022 00:18:44 by 1.7.2