Mario Vargas
/
CANTX
canok
main.cpp@1:5750eb0e53b2, 23 months ago (annotated)
- Committer:
- mvargas_dtk
- Date:
- Thu Oct 13 00:29:59 2022 +0000
- Revision:
- 1:5750eb0e53b2
- Parent:
- 0:0e8e4d659972
ok
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mvargas_dtk | 0:0e8e4d659972 | 1 | /* mbed Microcontroller Library |
mvargas_dtk | 0:0e8e4d659972 | 2 | * Copyright (c) 2019 ARM Limited |
mvargas_dtk | 0:0e8e4d659972 | 3 | * SPDX-License-Identifier: Apache-2.0 |
mvargas_dtk | 0:0e8e4d659972 | 4 | */ |
mvargas_dtk | 0:0e8e4d659972 | 5 | |
mvargas_dtk | 0:0e8e4d659972 | 6 | #include "mbed.h" |
mvargas_dtk | 0:0e8e4d659972 | 7 | #include "platform/mbed_thread.h" |
mvargas_dtk | 0:0e8e4d659972 | 8 | |
mvargas_dtk | 0:0e8e4d659972 | 9 | |
mvargas_dtk | 0:0e8e4d659972 | 10 | DigitalOut led1(PB_4); |
mvargas_dtk | 0:0e8e4d659972 | 11 | DigitalOut led2(PB_12); |
mvargas_dtk | 0:0e8e4d659972 | 12 | DigitalOut BT_RST(PB_5); |
mvargas_dtk | 0:0e8e4d659972 | 13 | InterruptIn Button (PC_13); |
mvargas_dtk | 0:0e8e4d659972 | 14 | DigitalOut Stby_can(PD_3); |
mvargas_dtk | 0:0e8e4d659972 | 15 | DigitalOut re_5v(PB_10); |
mvargas_dtk | 0:0e8e4d659972 | 16 | Serial RS232_2(PC_12, PE_7); |
mvargas_dtk | 0:0e8e4d659972 | 17 | Serial RS485(PC_6, PC_7); |
mvargas_dtk | 0:0e8e4d659972 | 18 | Serial BT(PA_9, PA_10); |
mvargas_dtk | 0:0e8e4d659972 | 19 | |
mvargas_dtk | 0:0e8e4d659972 | 20 | //Ticker ticker; |
mvargas_dtk | 0:0e8e4d659972 | 21 | |
mvargas_dtk | 0:0e8e4d659972 | 22 | CAN can1(PD_0, PD_1); |
mvargas_dtk | 0:0e8e4d659972 | 23 | char counter = 'a'; |
mvargas_dtk | 0:0e8e4d659972 | 24 | char counter1 = 'b'; |
mvargas_dtk | 0:0e8e4d659972 | 25 | char counter2 = 'c'; |
mvargas_dtk | 0:0e8e4d659972 | 26 | char counter3 = 'd'; |
mvargas_dtk | 0:0e8e4d659972 | 27 | char counter4 = 'e'; |
mvargas_dtk | 0:0e8e4d659972 | 28 | char counter5 = 'f'; |
mvargas_dtk | 0:0e8e4d659972 | 29 | char counter6 = 'g'; |
mvargas_dtk | 0:0e8e4d659972 | 30 | char counter7 = 'h'; |
mvargas_dtk | 0:0e8e4d659972 | 31 | |
mvargas_dtk | 0:0e8e4d659972 | 32 | int main() { |
mvargas_dtk | 0:0e8e4d659972 | 33 | led2 = 1; |
mvargas_dtk | 0:0e8e4d659972 | 34 | re_5v = 1; |
mvargas_dtk | 0:0e8e4d659972 | 35 | Stby_can = 0; |
mvargas_dtk | 0:0e8e4d659972 | 36 | led1 = 0; |
mvargas_dtk | 0:0e8e4d659972 | 37 | BT_RST = 1; |
mvargas_dtk | 0:0e8e4d659972 | 38 | wait_ms(5000); |
mvargas_dtk | 1:5750eb0e53b2 | 39 | CANMessage msg1; |
mvargas_dtk | 1:5750eb0e53b2 | 40 | CANMessage msg2; |
mvargas_dtk | 1:5750eb0e53b2 | 41 | CANMessage msg3; |
mvargas_dtk | 1:5750eb0e53b2 | 42 | // msg.format = CANExtended;// or CANExtended; // standard or extended ID (can be skipped for standard) |
mvargas_dtk | 1:5750eb0e53b2 | 43 | msg1.id = 1337; |
mvargas_dtk | 1:5750eb0e53b2 | 44 | msg1.len = 8;//length in bytes (1 to 8); |
mvargas_dtk | 1:5750eb0e53b2 | 45 | //msg1.data[0] = 1; // repeat for each byte. |
mvargas_dtk | 1:5750eb0e53b2 | 46 | //msg1.data[1] = 2; |
mvargas_dtk | 1:5750eb0e53b2 | 47 | //msg1.data[2] = 3; |
mvargas_dtk | 1:5750eb0e53b2 | 48 | //msg1.data[3] = 4; |
mvargas_dtk | 1:5750eb0e53b2 | 49 | //msg1.data[4] = 5; |
mvargas_dtk | 1:5750eb0e53b2 | 50 | //msg1.data[5] = 6; |
mvargas_dtk | 1:5750eb0e53b2 | 51 | //msg1.data[6] = 7; |
mvargas_dtk | 1:5750eb0e53b2 | 52 | //msg1.data[7] = 8; |
mvargas_dtk | 0:0e8e4d659972 | 53 | |
mvargas_dtk | 0:0e8e4d659972 | 54 | |
mvargas_dtk | 1:5750eb0e53b2 | 55 | msg2.id = 1338; |
mvargas_dtk | 1:5750eb0e53b2 | 56 | msg2.len = 8;//length in bytes (1 to 8); |
mvargas_dtk | 1:5750eb0e53b2 | 57 | msg2.data[0] = 100; // repeat for each byte. |
mvargas_dtk | 1:5750eb0e53b2 | 58 | msg2.data[1] = 200; |
mvargas_dtk | 1:5750eb0e53b2 | 59 | msg2.data[2] = 40; |
mvargas_dtk | 1:5750eb0e53b2 | 60 | msg2.data[3] = 30; |
mvargas_dtk | 1:5750eb0e53b2 | 61 | msg2.data[4] = 20; |
mvargas_dtk | 1:5750eb0e53b2 | 62 | msg2.data[5] = 10; |
mvargas_dtk | 1:5750eb0e53b2 | 63 | msg2.data[6] = 5; |
mvargas_dtk | 1:5750eb0e53b2 | 64 | msg2.data[7] = 0; |
mvargas_dtk | 1:5750eb0e53b2 | 65 | |
mvargas_dtk | 1:5750eb0e53b2 | 66 | |
mvargas_dtk | 1:5750eb0e53b2 | 67 | msg3.id = 1339; |
mvargas_dtk | 1:5750eb0e53b2 | 68 | msg3.len = 8;//length in bytes (1 to 8); |
mvargas_dtk | 1:5750eb0e53b2 | 69 | msg3.data[0] = 10; // repeat for each byte. |
mvargas_dtk | 1:5750eb0e53b2 | 70 | msg3.data[1] = 20; |
mvargas_dtk | 1:5750eb0e53b2 | 71 | msg3.data[2] = 10; |
mvargas_dtk | 1:5750eb0e53b2 | 72 | msg3.data[3] = 20; |
mvargas_dtk | 1:5750eb0e53b2 | 73 | msg3.data[4] = 10; |
mvargas_dtk | 1:5750eb0e53b2 | 74 | msg3.data[5] = 20; |
mvargas_dtk | 1:5750eb0e53b2 | 75 | msg3.data[6] = 10; |
mvargas_dtk | 1:5750eb0e53b2 | 76 | msg3.data[7] = 20; |
mvargas_dtk | 1:5750eb0e53b2 | 77 | |
mvargas_dtk | 1:5750eb0e53b2 | 78 | |
mvargas_dtk | 1:5750eb0e53b2 | 79 | |
mvargas_dtk | 0:0e8e4d659972 | 80 | BT.printf("BT Inicio\n"); |
mvargas_dtk | 0:0e8e4d659972 | 81 | |
mvargas_dtk | 0:0e8e4d659972 | 82 | while(1) { |
mvargas_dtk | 0:0e8e4d659972 | 83 | |
mvargas_dtk | 1:5750eb0e53b2 | 84 | for (int i = 1; i<=5; i++){ |
mvargas_dtk | 1:5750eb0e53b2 | 85 | |
mvargas_dtk | 1:5750eb0e53b2 | 86 | msg1.data[0] = i; // repeat for each byte. |
mvargas_dtk | 1:5750eb0e53b2 | 87 | msg1.data[1] = i+20; |
mvargas_dtk | 1:5750eb0e53b2 | 88 | msg1.data[2] = i+40; |
mvargas_dtk | 1:5750eb0e53b2 | 89 | msg1.data[3] = i+60; |
mvargas_dtk | 1:5750eb0e53b2 | 90 | msg1.data[4] = i+80; |
mvargas_dtk | 1:5750eb0e53b2 | 91 | msg1.data[5] = i+100; |
mvargas_dtk | 1:5750eb0e53b2 | 92 | msg1.data[6] = i+120; |
mvargas_dtk | 1:5750eb0e53b2 | 93 | msg1.data[7] = i+140; |
mvargas_dtk | 1:5750eb0e53b2 | 94 | can1.write(msg1); |
mvargas_dtk | 1:5750eb0e53b2 | 95 | wait_ms(1000); |
mvargas_dtk | 1:5750eb0e53b2 | 96 | } |
mvargas_dtk | 1:5750eb0e53b2 | 97 | |
mvargas_dtk | 1:5750eb0e53b2 | 98 | |
mvargas_dtk | 1:5750eb0e53b2 | 99 | // can1.write(msg2); |
mvargas_dtk | 1:5750eb0e53b2 | 100 | |
mvargas_dtk | 1:5750eb0e53b2 | 101 | // can1.write(msg3); |
mvargas_dtk | 1:5750eb0e53b2 | 102 | |
mvargas_dtk | 0:0e8e4d659972 | 103 | BT.printf("BTMessage sent: %d\n", counter); |
mvargas_dtk | 1:5750eb0e53b2 | 104 | |
mvargas_dtk | 1:5750eb0e53b2 | 105 | led1 = !led1; |
mvargas_dtk | 1:5750eb0e53b2 | 106 | wait_ms(1000); |
mvargas_dtk | 1:5750eb0e53b2 | 107 | |
mvargas_dtk | 0:0e8e4d659972 | 108 | } |
mvargas_dtk | 0:0e8e4d659972 | 109 | } |