canok

main.cpp

Committer:
mvargas_dtk
Date:
19 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);

   }
}