Mario Vargas
/
CANTX
canok
main.cpp
- Committer:
- mvargas_dtk
- Date:
- 23 months ago
- Revision:
- 1:5750eb0e53b2
- Parent:
- 0:0e8e4d659972
File content as of revision 1:5750eb0e53b2:
/* mbed Microcontroller Library * Copyright (c) 2019 ARM Limited * SPDX-License-Identifier: Apache-2.0 */ #include "mbed.h" #include "platform/mbed_thread.h" DigitalOut led1(PB_4); DigitalOut led2(PB_12); DigitalOut BT_RST(PB_5); InterruptIn Button (PC_13); DigitalOut Stby_can(PD_3); DigitalOut re_5v(PB_10); Serial RS232_2(PC_12, PE_7); Serial RS485(PC_6, PC_7); Serial BT(PA_9, PA_10); //Ticker ticker; CAN can1(PD_0, PD_1); char counter = 'a'; char counter1 = 'b'; char counter2 = 'c'; char counter3 = 'd'; char counter4 = 'e'; char counter5 = 'f'; char counter6 = 'g'; char counter7 = 'h'; int main() { led2 = 1; re_5v = 1; Stby_can = 0; led1 = 0; BT_RST = 1; wait_ms(5000); CANMessage msg1; CANMessage msg2; CANMessage msg3; // msg.format = CANExtended;// or CANExtended; // standard or extended ID (can be skipped for standard) msg1.id = 1337; msg1.len = 8;//length in bytes (1 to 8); //msg1.data[0] = 1; // repeat for each byte. //msg1.data[1] = 2; //msg1.data[2] = 3; //msg1.data[3] = 4; //msg1.data[4] = 5; //msg1.data[5] = 6; //msg1.data[6] = 7; //msg1.data[7] = 8; msg2.id = 1338; msg2.len = 8;//length in bytes (1 to 8); msg2.data[0] = 100; // repeat for each byte. msg2.data[1] = 200; msg2.data[2] = 40; msg2.data[3] = 30; msg2.data[4] = 20; msg2.data[5] = 10; msg2.data[6] = 5; msg2.data[7] = 0; msg3.id = 1339; msg3.len = 8;//length in bytes (1 to 8); msg3.data[0] = 10; // repeat for each byte. msg3.data[1] = 20; msg3.data[2] = 10; msg3.data[3] = 20; msg3.data[4] = 10; msg3.data[5] = 20; msg3.data[6] = 10; msg3.data[7] = 20; BT.printf("BT Inicio\n"); while(1) { for (int i = 1; i<=5; i++){ msg1.data[0] = i; // repeat for each byte. msg1.data[1] = i+20; msg1.data[2] = i+40; msg1.data[3] = i+60; msg1.data[4] = i+80; msg1.data[5] = i+100; msg1.data[6] = i+120; msg1.data[7] = i+140; can1.write(msg1); wait_ms(1000); } // can1.write(msg2); // can1.write(msg3); BT.printf("BTMessage sent: %d\n", counter); led1 = !led1; wait_ms(1000); } }