dujardin stephane
/
duj401_projets
projets de S3 S4 année 21 22
main.cpp@6:edb27e228558, 2018-10-12 (annotated)
- Committer:
- dujardin
- Date:
- Fri Oct 12 09:16:23 2018 +0000
- Revision:
- 6:edb27e228558
- Parent:
- 5:10349dda4f42
- Child:
- 7:315630fad89f
version octobre
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
dujardin | 6:edb27e228558 | 1 | //*************************************************** |
dujardin | 6:edb27e228558 | 2 | // the "base" pour 1 plaque a led 32/32 sur f401 |
dujardin | 6:edb27e228558 | 3 | // version utilisable en TP de S2 et dans les projets de S3 |
dujardin | 6:edb27e228558 | 4 | // reception série à 115K bauds protocole "duj" |
dujardin | 6:edb27e228558 | 5 | // A B C D A B adresses C couleur D commande et couleur |
dujardin | 6:edb27e228558 | 6 | // consulter la doc du protocole |
dujardin | 6:edb27e228558 | 7 | //************************************************** |
dujardin | 1:95a7e179a181 | 8 | |
dujardin | 0:3cb0bc1eb7fa | 9 | #include "mbed.h" |
dujardin | 0:3cb0bc1eb7fa | 10 | #define LOW 0 |
dujardin | 0:3cb0bc1eb7fa | 11 | #define HIGH 1 |
dujardin | 0:3cb0bc1eb7fa | 12 | #define R 0 |
dujardin | 0:3cb0bc1eb7fa | 13 | #define V 1 |
dujardin | 0:3cb0bc1eb7fa | 14 | #define B 2 |
dujardin | 6:edb27e228558 | 15 | // definition des broches pour carte F401 |
dujardin | 6:edb27e228558 | 16 | AnalogIn canx(PC_4);AnalogIn cany(PB_1); DigitalOut plus(PB_15); DigitalOut gnd(PB_14);//adxl335 |
dujardin | 6:edb27e228558 | 17 | DigitalOut sd(PC_9); // indicateur de fonctionnement |
dujardin | 0:3cb0bc1eb7fa | 18 | BusOut ABCD(PA_14,PB_0,PA_15,PC_1); // version 32/32 nucleo f401 |
dujardin | 6:edb27e228558 | 19 | DigitalOut B1(PA_7);DigitalOut V1(PA_4);DigitalOut R1(PA_6); |
dujardin | 6:edb27e228558 | 20 | DigitalOut B0(PA_5);DigitalOut V0(PA_1);DigitalOut R0(PA_0); |
dujardin | 0:3cb0bc1eb7fa | 21 | DigitalOut CLK(PC_2); // Data clock - rising edge |
dujardin | 6:edb27e228558 | 22 | DigitalOut LAT(PC_0); // Data latch - active low |
dujardin | 6:edb27e228558 | 23 | DigitalOut OE(PC_3); // Output enable - active low |
dujardin | 6:edb27e228558 | 24 | Serial serie(NC, PC_7); // tx, rx ( pas de tx utilisé) |
dujardin | 6:edb27e228558 | 25 | |
dujardin | 6:edb27e228558 | 26 | // variables de lecture |
dujardin | 6:edb27e228558 | 27 | int ccx ; int ccy ; // acceleration |
dujardin | 6:edb27e228558 | 28 | // variables en écriture |
dujardin | 6:edb27e228558 | 29 | int br = 4 ; int bb = 0; int bv= 0 ; // prepo couleurs ( circle et char) |
dujardin | 6:edb27e228558 | 30 | //variables de travail diverses |
dujardin | 6:edb27e228558 | 31 | int ZX ; int ZY ; int ZR ; int ZV ; int ZB ; // pour tirrage aléatoire couleurs |
dujardin | 6:edb27e228558 | 32 | int Zin = 100; // variable de decomptage ( timer soft ) |
dujardin | 6:edb27e228558 | 33 | int vc = 0; // ? |
dujardin | 0:3cb0bc1eb7fa | 34 | |
dujardin | 6:edb27e228558 | 35 | #include "LED2.h" // commandes gestion des led en ligne a ligne |
dujardin | 6:edb27e228558 | 36 | #include "char.h" // char pour écrire à creuser |
dujardin | 6:edb27e228558 | 37 | #include "draw.h" // char pour écrire à creuser |
dujardin | 6:edb27e228558 | 38 | #include "serie.h" // gestion demandes par liaison serie |
dujardin | 6:edb27e228558 | 39 | //*************************************************** |
dujardin | 0:3cb0bc1eb7fa | 40 | |
dujardin | 0:3cb0bc1eb7fa | 41 | void init () |
dujardin | 6:edb27e228558 | 42 | { |
dujardin | 6:edb27e228558 | 43 | serie.baud(115200); // from xbee k bits/sec |
dujardin | 6:edb27e228558 | 44 | serie.attach(&interrupt, Serial::RxIrq); // autorise IT de liaison serie |
dujardin | 6:edb27e228558 | 45 | g1 = 10 ; g2 = 100 ; g3 = 200 ; // initialisation petit gamma |
dujardin | 6:edb27e228558 | 46 | gnd = 0 ;plus = 1 ; // accéléro en marche |
dujardin | 6:edb27e228558 | 47 | Tr2(); // efface les tableaux |
dujardin | 0:3cb0bc1eb7fa | 48 | } |
dujardin | 0:3cb0bc1eb7fa | 49 | |
dujardin | 0:3cb0bc1eb7fa | 50 | int main() |
dujardin | 0:3cb0bc1eb7fa | 51 | { |
dujardin | 0:3cb0bc1eb7fa | 52 | init(); // initialisations importantes |
dujardin | 6:edb27e228558 | 53 | charr(5,5,'y'); |
dujardin | 6:edb27e228558 | 54 | |
dujardin | 6:edb27e228558 | 55 | |
dujardin | 6:edb27e228558 | 56 | while( Zin > 0) // |
dujardin | 6:edb27e228558 | 57 | { |
dujardin | 6:edb27e228558 | 58 | Taffi(); // on met T vers les LEDs |
dujardin | 6:edb27e228558 | 59 | Zin = Zin-1; |
dujardin | 6:edb27e228558 | 60 | } // etape de 2 secondes |
dujardin | 6:edb27e228558 | 61 | Tr2(); // efface |
dujardin | 6:edb27e228558 | 62 | clown(); |
dujardin | 6:edb27e228558 | 63 | |
dujardin | 6:edb27e228558 | 64 | while(1) // boucle principal |
dujardin | 6:edb27e228558 | 65 | { // permanence |
dujardin | 6:edb27e228558 | 66 | accel(); // mesure sur capteur accéleration x et y |
dujardin | 6:edb27e228558 | 67 | draw(); |
dujardin | 6:edb27e228558 | 68 | Taffi(); // on met T vers les LEDs |
dujardin | 0:3cb0bc1eb7fa | 69 | |
dujardin | 0:3cb0bc1eb7fa | 70 | } |
dujardin | 0:3cb0bc1eb7fa | 71 | } |