(CAN) using any type of character and strings with a maxim of 8 bits

Dependencies:   mbed

Files at this revision

API Documentation at this revision

Comitter:
sherckuith
Date:
Tue Jan 08 06:15:53 2013 +0000
Child:
1:328932c34ba1
Commit message:
(CAN) using any type of character and strings with a maxim of 8 bits

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show annotated file Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Tue Jan 08 06:15:53 2013 +0000
@@ -0,0 +1,78 @@
+#include "mbed.h"
+#include "CAN.h"
+
+DigitalOut led1(LED1);
+DigitalOut led2(LED2);
+DigitalOut led3(LED3);
+DigitalOut led4(LED4);
+CAN can1(p9, p10);
+CAN can2(p30, p29);
+Serial pc(USBTX,USBRX); //tx. rx
+
+int main()
+{
+    char a[8] = {0x6D,0x62,0x65,0x64,0x00,0x00,0x00,0x00};
+    char b[5] = "hola";
+    char c[8] = {"1234567"};
+    const char d[8] = {0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x00};
+    CANMessage msg;
+    pc.baud(9600);
+    can1.frequency(125000);
+    can2.frequency(125000);
+    while(1) {
+        if(can2.read(msg))
+            led1 = 1;
+
+        /***********inicio de comunicacion****************************/
+        pc.printf("************************************\n\r");
+        can1.write(CANMessage(01, &a[0], 8));
+        pc.printf("write a: %s    ",&a[0]);
+        if(can2.read(msg)) {
+            led1 = 1;led2 = 0;led3 = 0;led4 = 0;
+            pc.printf("read a:-%s-\n",&msg.data[0]);
+        }
+        can1.write(CANMessage(01, &b[0], 4));
+        pc.printf("write b: %s    ",&b[0]);
+        if(can2.read(msg)) {
+            led1 = 0;led2 = 2;led3 = 0;led4 = 0;
+            pc.printf("read b:-%s-\n",&msg.data[0]);
+        }
+        can1.write(CANMessage(01, &c[0], 8));
+        pc.printf("write c: %s    ",&c[0]);
+        if(can2.read(msg)) {
+            led1 = 0;led2 = 0;led3 = 3;led4 = 0;
+            pc.printf("read c:-%s-\n",&msg.data[0]);
+        }
+        can1.write(CANMessage(01, &d[0], 8));
+        pc.printf("write d: %s    ",&d[0]);
+        if(can2.read(msg)) {
+            led1 = 0;led2 = 0;led3 = 0;led4 = 4;
+            pc.printf("read d:-%s-\n",&msg.data[0]);
+        }
+        //wait(0.25);
+        led1 = 0;led2 = 0;led3 = 0;led4 = 0;
+        
+        /************************fin**********************************/
+    }
+}
+
+
+/*
+        (NXP TJA 1051/3)
+mbed    TJA1    TJA2
+----------------------
+5V      Vcc     Vcc
+GND     GND     GND
+p9      RXD     -
+p10     TXD     -
+p29     -       TXD
+p30     -       RXD
+-       CANL    CANL
+-       CANH    CANH
+3.3v    Vio     Vio
+
+GND -> 60Ohm-CANL 
+GND -> 60Ohm-CANH
+GND -> 10KOhm-S-TJA1
+GND -> 10KOhm-S-TJA2
+*/
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Tue Jan 08 06:15:53 2013 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/mbed/builds/63cdd78b2dc1
\ No newline at end of file