dujardin stephane
/
duj401_projets
projets de S3 S4 année 21 22
main.cpp
- Committer:
- dujardin
- Date:
- 2016-05-12
- Revision:
- 2:1af4d847d589
- Parent:
- 1:95a7e179a181
- Child:
- 5:10349dda4f42
File content as of revision 2:1af4d847d589:
// duj401 pour TR de s2 // sans serie wdt ou autre // lieu de programmation >>> dans le draw !! #include "mbed.h" #define LOW 0 #define HIGH 1 #define R 0 #define V 1 #define B 2 AnalogIn canx(PC_4);AnalogIn cany(PB_1); DigitalOut plus(PB_15); //adxl335 DigitalOut sd(PC_9); Serial serie(NC, PC_7); // tx, rx BusOut ABCD(PA_14,PB_0,PA_15,PC_1); // version 32/32 nucleo f401 BusOut RVB(PA_7,PA_5,PA_4,PA_1,PA_6,PA_0); // RVB ( R a droite )un seul a ecrire DigitalOut CLK(PC_2); // Data clock - rising edge DigitalOut LAT(PC_0); // Data latch - active low (pulse up after data load) DigitalOut OE(PC_3); // Output enable - active low (hold high during data load, bring low after LAT pulse) char T[32][16][4]; // Tampon affichage 4 temps R1R2V1V2B1B2 32x32 (2*16 ) char I[32][32][3]; // Y X rvb .. Image 32x32 en RVB 0 à 15 0: noir int L; int M ; int O ; // variables globales idiotes char J; char K ; char Q; char S ; char D; char F; // variables à la con char G; char H ; char GG; char T0 ; char T1 ; char T2 ; char T3; int arr ; int prim ; int ptdat ;// arr char arrivé, prim temoin inactivité; ptdata nombre d'octet a recevoir .. char rect[55]; // rec et commende 55 octets max char tabc[1024] ; // pour y placer 256x4 = r+v+b+1 char tabp[200][200]; // pour y placer les pixels arrives ici 200/200 long ptfin ; // pointeur fin ( 2 + 256 3 + 256*256* 4 ) int pt1 ; int pt2 ; int pt3 ;int pt4 ; int pttr ; int pttv ; int pttb; int etat ; // etat des actions a faire .. draw .. bmp .. .. int com ; int com1 ; int com2 ; int com3 ; int com4 ; int ordrefait ; // com et passage parrametre commande int longtempsa0 ; int trop ; // indique très longtemps sans RX ?? que faire ? on verra int Li ; int Hi ;// indicateurs : taille, largeur, hauteur int dx ; int dy ; // position du 32/32 dans l'image li hi int ax ; int ay ; int comf ; // ax offset en plus de dx et dy char pixt ; int rr; int vv ; int bb ; // pour des couleurs int ptx; int pty ; int xx ; int yy ; // utile dans recv > 1078 int bcl ; float xin; float yin; // lecture accelero int accx ; int accy ; // acceleration #include "LED.h" // transferts LED <>401 #include "char.h" // transfert RX 401<>1768 #include "draw.h" // le tableau effectue un programme dans draw //***************************************************fin wdt void init () { prim = 3; // compteur de vides de rx ptfin = 54 ; // preset au cas ou trame de commande dx = 0 ; dy = 0 ; // recherche adresse du tableau dans un 8*8 ax = 0 ; ay = 0; // offset a ajouter a dx et dy pour mouvement // etat = 'd' ; // d draw état natif au reveil Tr(); // efface T Ir(); // efface I ordrefait = 0; plus = HIGH ; } int main() { init(); // initialisations importantes // while(1) // boucle sans fin ( temps d'execution 30 ms ) { xin = canx.read(); yin= cany.read(); accx = xin * 150-75; accy = yin * 150 - 75 ; draw(); // dans draw.h c'est le lieu de votre programme en Tr IversT(); // recharge votre image I vers T Taffi(); // passe T vers les LEDs Ir(); // efface le dessin dans image I } }