Loup Langard / Mbed 2 deprecated base_mbed_SAE1_S2-V0

Dependencies:   mbed

Committer:
dujardin
Date:
Mon Sep 16 14:39:31 2019 +0000
Revision:
3:032c516c2ffa
Parent:
2:6566f09256dc
Child:
4:fdb2d0fefd66
evol 2

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dujardin 2:6566f09256dc 1 #include "mbed.h" //
dujardin 0:5945217144be 2
dujardin 3:032c516c2ffa 3 //-------- exemple dit <toto> dans mes432 ----------------
dujardin 3:032c516c2ffa 4 // chaque seconde, numérise 4 valeurs sur ch1 ch2
dujardin 3:032c516c2ffa 5 // et envoie betement une trame neutre en codage duj2
dujardin 2:6566f09256dc 6 //
dujardin 2:6566f09256dc 7 // configuration liaison série à 19200 bps ( driver stlink)
dujardin 1:1779a3279496 8 // A0 et A1 sont placées en entrée analogique ( mesure sortie AOP)
dujardin 1:1779a3279496 9 // A3 et A4 sont placées en sortie analogique ( offset vers AOP)
dujardin 2:6566f09256dc 10 // sorties led sur carte nommée LL , IO sur D3 , pol sur D2
dujardin 3:032c516c2ffa 11 // broches D0 D1 sont précablées en I2C ( sans plus)
dujardin 0:5945217144be 12 //------------------------------------
dujardin 0:5945217144be 13
dujardin 2:6566f09256dc 14 //****************** déclaration des broches ****************
dujardin 1:1779a3279496 15 Serial pc(SERIAL_TX, SERIAL_RX); // PORT SERIE SUR usb !!
dujardin 1:1779a3279496 16 AnalogIn Ch1(A0) ;AnalogIn Ch2(A1); // entrées ana nommées Ch1 Ch2
dujardin 1:1779a3279496 17 AnalogOut out1(A3);AnalogOut out2(A4); // sorties ana nommées out1 out2
dujardin 1:1779a3279496 18 I2C i2c(D0,D1); // (sda,scl) canal I2C nommé i2c
dujardin 2:6566f09256dc 19 DigitalOut pol(D2); // polarisation à 3.3V I2C ( si à 1)
dujardin 2:6566f09256dc 20 DigitalOut IO(D3); // sortie TTL nommée S0
dujardin 1:1779a3279496 21 DigitalOut LL(LED1); // led nommée LL ( sur module L432
dujardin 2:6566f09256dc 22 // nota IO peut etre déclarée en entrée en ecrivant DigitalIn IO(D3);
dujardin 2:6566f09256dc 23 //**********************************************************************
dujardin 0:5945217144be 24 uint16_t ch1i[5]; // tableaux d' int
dujardin 0:5945217144be 25 uint16_t ch2i[5];
dujardin 0:5945217144be 26
dujardin 3:032c516c2ffa 27 void init(void) // initialisation
dujardin 3:032c516c2ffa 28 {
dujardin 2:6566f09256dc 29 pc.baud(19200); // initialisations
dujardin 2:6566f09256dc 30 pol = 1; //on polarise l'I2C au cas ou
dujardin 3:032c516c2ffa 31 LL = 0 ; // led du L432 on
dujardin 1:1779a3279496 32 out1.write(0.5); // sortie A3 = 0.5 * 3.3V soit 1.6 V
dujardin 1:1779a3279496 33 out2.write(0.25); // sortie A4 = 0.25* 3.3V soit 0.8 V
dujardin 3:032c516c2ffa 34 IO = 1 ; // sortie I/O commande mise à 1 ou 3.3V
dujardin 3:032c516c2ffa 35 }
dujardin 3:032c516c2ffa 36
dujardin 3:032c516c2ffa 37 int main()
dujardin 3:032c516c2ffa 38 {
dujardin 3:032c516c2ffa 39 init();
dujardin 1:1779a3279496 40
dujardin 0:5945217144be 41 while(1) // boucle sans fin
dujardin 3:032c516c2ffa 42 {
dujardin 3:032c516c2ffa 43 LL = 1 ; // re allume Led
dujardin 3:032c516c2ffa 44 wait(0.5);
dujardin 3:032c516c2ffa 45 LL= 0 ;
dujardin 3:032c516c2ffa 46 wait(0.5);
dujardin 3:032c516c2ffa 47 for ( int i = 0 ; i < 5 ; i++)
dujardin 3:032c516c2ffa 48 {
dujardin 3:032c516c2ffa 49 ch1i[i] = Ch1.read_u16()/16; // lecture 1
dujardin 3:032c516c2ffa 50 ch2i[i] = Ch2.read_u16()/16; // c'est tout
dujardin 3:032c516c2ffa 51 }
dujardin 3:032c516c2ffa 52 // transfert comme dans l'avant dernier exemple de la fiche duj2
dujardin 3:032c516c2ffa 53 pc.putc('i'); // poiteur 1 = 0
dujardin 3:032c516c2ffa 54 pc.putc('e'); pc.putc('0'); pc.putc('1'); pc.putc('0'); pc.putc('0');//Pt++
dujardin 3:032c516c2ffa 55 pc.putc('e'); pc.putc('0'); pc.putc('1'); pc.putc('0'); pc.putc('1');
dujardin 3:032c516c2ffa 56 pc.putc('e'); pc.putc('0'); pc.putc('1'); pc.putc('0'); pc.putc('2');
dujardin 3:032c516c2ffa 57 pc.putc('e'); pc.putc('0'); pc.putc('1'); pc.putc('0'); pc.putc('3');
dujardin 3:032c516c2ffa 58 pc.putc('q'); // mise en mémoire vers utilisateur + pointeur1 = 0
dujardin 3:032c516c2ffa 59 }
dujardin 3:032c516c2ffa 60 }