bruno LARNAUDIE
/
Can
main.cpp
- Committer:
- slowness
- Date:
- 2011-08-28
- Revision:
- 0:85bca9d6be51
File content as of revision 0:85bca9d6be51:
#include "mbed.h" /*Configuration des LED en sortie num�rique*/ DigitalOut led_write(LED1); DigitalOut led_read(LED4); DigitalOut led_can(LED3); Serial pc(p9, p10); CAN can(p30, p29); /*Configuration des ports du CAN : rd p30 td p29*/ Ticker ticker; /*Fonction timer*/ Ticker ticker1; /*Fonction timer*/ /*Fonction de configuration du message d'envoi*/ char compteur=0; void send(){ /*Initialisation des variables*/ char message[8]={compteur,0x10,0x11,0x10,0x11,0x10,0x11,0x00}; /*Initialisation du tableau de donn�e du message � envoyer*/ CANMessage canmsg = CANMessage(); /*Variable de type CANMessage*/ char i; /*Variable compteur i*/ /*Caract�ristique du message � envoyer sur le CAN*/ canmsg.id=0x001; /*L'identification du message*/ canmsg.len=8; /*Longeur de la trame en octet*/ canmsg.format=CANStandard; /*Format de la trame CANStandart 11 octet*/ canmsg.type=CANData; /*Type de la trame CANData*/ for(i=0;i<8;i++){ /*Copie du tableau de donn�e dans le tableau du messge*/ canmsg.data[i]=message[i]; } led_write=can.write(canmsg); /*Si la transmission se fait sans error, allume une led*/ compteur++; }/*Fin Fontion*/ void send1(){ /*Initialisation des variables*/ char message[8]={compteur,0x20,0x22,0x20,0x22,0x20,0x22,0x20}; /*Initialisation du tableau de donn�e du message � envoyer*/ CANMessage canmsg = CANMessage(); /*Variable de type CANMessage*/ char i; /*Variable compteur i*/ /*Caract�ristique du message � envoyer sur le CAN*/ canmsg.id=0x010; /*L'identification du message*/ canmsg.len=8; /*Longeur de la trame en octet*/ canmsg.format=CANStandard; /*Format de la trame CANStandart 11 octet*/ canmsg.type=CANData; /*Type de la trame CANData*/ for(i=0;i<8;i++){ /*Copie du tableau de donn�e dans le tableau du messge*/ canmsg.data[i]=message[i]; } led_write=can.write(canmsg); /*Si la transmission se fait sans error, allume une led*/ compteur++; }/*Fin Fontion*/ /*DEBUT PROGRAMME*/ int main() { char message[8]={0x00,0x10,0x11,0x10,0x11,0x10,0x11,0x00}; /*Initialisation du tableau de donn�e du message � envoyer*/ CANMessage canmsg = CANMessage(); /*Variable de type CANMessage*/ char i; can.frequency(1000000); /*Baud rate : kbits/s */ pc.baud(9600); canmsg.id=0x001; /*L'identification du message*/ canmsg.len=8; /*Longeur de la trame en octet*/ canmsg.format=CANStandard; /*Format de la trame CANStandart 11 octet*/ canmsg.type=CANData; for(i=0;i<8;i++){ canmsg.data[i]=message[i]; } while(1){ /*Variable compteur i*/ /*Type de la trame CANData*/ led_write=can.write(canmsg); wait(0.1); }/*Fin while*/ } /*FIN PROGRAMME*/