projet TC
Dependencies: mbed
Diff: main.cpp
- Revision:
- 5:4282a1fee4cd
- Parent:
- 4:fdb2d0fefd66
--- a/main.cpp Wed Sep 18 08:29:56 2019 +0000 +++ b/main.cpp Sun Oct 06 13:27:40 2019 +0000 @@ -1,38 +1,40 @@ -#include "mbed.h" // +#include "mbed.h" +// carte MERE432 pour projet TC -//-------- programme de test carte mes432 ---------------- -// chaque seconde, numérise 4 valeurs sur ch1 ch2 -// et envoie betement une trame neutre en codage duj2 -// -// configuration liaison série à 19200 bps ( driver stlink) -// A0 et A1 sont placées en entrée analogique ( mesure sortie AOP) -// A3 et A4 sont placées en sortie analogique ( offset vers AOP) -// sorties led sur carte nommée LL , IO sur D3 , pol sur D2 -// broches D0 D1 sont précablées en I2C ( sans plus) -// connecteur (vue de face)*** I2C I2C IO Ov Ov 3.3V ch2 ch1 *** -//------------------------------------ +//-------- programme pour tester la carte ---------------- +// clignote 2 diodes une sur le module L432 l'autre sur mere432 +// et envoie betement une trame neutre en codage duj2 sur Xbbe +// configuration liaison série à 19200 bps vers Xbedd +//----------------------------------------------------------- //****************** déclaration des broches **************** -Serial pc(SERIAL_TX, SERIAL_RX); // PORT SERIE SUR usb !! -AnalogIn Ch1(A0) ;AnalogIn Ch2(A1); // entrées ana nommées Ch1 Ch2 -AnalogOut out1(A3);AnalogOut out2(A4); // sorties ana nommées out1 out2 -I2C i2c(D0,D1); // (sda,scl) canal I2C nommé i2c -DigitalOut pol(D2); // polarisation à 3.3V I2C ( si à 1) -DigitalOut IO(D3); // sortie TTL nommée S0 -DigitalOut LL(LED1); // led nommée LL ( sur module L432 -// nota IO peut etre déclarée en entrée en ecrivant DigitalIn IO(D3); -//********************************************************************** -uint16_t chi[5]; // déclaratiion d'un tableau d'entiers 16bits sans signe -float chf[5]; // déclaration d'un tableau de float +// *** broches sur la carte mere +Serial pc(D1, D0); // PORT SERIE vers xbee +DigitalOut led(D2); // led sur carte mere432 +DigitalOut LL(LED1); // led nommée LL sur module L432 +AnalogIn Chx(A5) ; AnalogIn Chy(A6); // entrées ana nommées Ch1 Ch2 + +//*** broches vers connecteur A ( le 1 est proche du xbee) +// broche A1 est a 10 V si la carte fille est un récepteur ( sans usb) +DigitalOut outA2(D5); DigitalOut outA3(D6); DigitalOut outA4(D7); DigitalOut outA5(D8); +DigitalOut outA6(D9); DigitalOut outA7(D10); DigitalOut outA8(D11); DigitalOut outA9(D12); +//broche A10 = 0V + +//****broches vers connecteur B ( le 1 est vers le adxl335 ) +// broche B1 = 0V +// broche B2 rien réserve +//AnalogOut outanaB2(A4);AnalogOut out2anaB3(A3); // si sorties ana utiles +AnalogIn anaB2(A4) ;AnalogIn anaB3(A3) ; // ici en entrées ana +AnalogIn anaB4(A2) ;AnalogIn anaB5(A1);AnalogIn anaB6(A0); +DigitalOut outB7(D5); DigitalOut outB8(D4); + void init(void) // initialisation { - pc.baud(19200); // vitesse liaison série - pol = 1; // polarisation résistancesde l' I2C - LL = 0 ; // led du L432 on - out1.write(0.5); // sortie ana A3 = 0.5 * 3.3V soit 1.6 V - out2.write(0.25); // sortie ana A4 = 0.25* 3.3V soit 0.8 V - IO = 0 ; // sortie I/O mise à 0 + pc.baud(19200); // vitesse liaison série + LL = 0 ; led = 1 ; // led du L432 on + // out1.write(0.5); // si sortie ana A3 = 0.5 * 3.3V soit 1.6 V + // out2.write(0.25); // si sortie ana A4 = 0.25* 3.3V soit 0.8 V } int main() @@ -41,32 +43,20 @@ while(1) // boucle sans fin { - LL = 1 ; // re allume Led carte - IO = 1; // sortie IO mise à 1 ( led hors carte ) + LL = 1 ; led = 0 ; // re allume Led carte wait(0.5); // delai 0.5s - LL= 0 ; - IO = 0 ; + LL= 0 ; led = 1 ; wait(0.5); - - chi[1] = Ch1.read_u16(); // lecture ch1 mise en memoire 16bits - chf[1] = Ch2.read(); // lecture ch2 mise en float en mémoire - - // transfert d'une trame de 4 entiers au protocole duj2 ( exemple) + + // transfert d'une trame de 4 entiers au protocole duj2 pc.putc('i'); // pointeur 1 = 0 pc.putc('e'); pc.putc('0'); pc.putc('1'); pc.putc('0'); pc.putc('0');//Pt++ pc.putc('e'); pc.putc('0'); pc.putc('1'); pc.putc('0'); pc.putc('1'); pc.putc('e'); pc.putc('0'); pc.putc('1'); pc.putc('0'); pc.putc('2'); pc.putc('e'); pc.putc('0'); pc.putc('1'); pc.putc('0'); pc.putc('3'); pc.putc('q'); // mise en mémoire - // on verra sur Tera Term - // ceci " ie0100e0101e0102e0103q " - // cette partie sera celle qui vous servira a valider votre processing - - //zone pour tester la carte et son cablage ( inutile pour processing) - printf(" chi =0x%04x " , chi[1] ); - printf(" chf =%.6f \n", 3.3*( chf[1])); - // on lira sur Tera Term ( hors modifs sur le programme) - // ceci " chi =0x80b8 chf =0.710769 " + // on verra sur Tera Term " ie0100e0101e0102e0103q " + // cette partie sera à faire evoluer vers l'exemple pour projet TC } }