Adaptation K22F

Dependencies:   mbed

Committer:
singularity
Date:
Tue Dec 16 15:52:17 2014 +0000
Revision:
0:6004a7230f87
Creation k22F

Who changed what in which revision?

UserRevisionLine numberNew contents of line
singularity 0:6004a7230f87 1 #include "main.h"
singularity 0:6004a7230f87 2
singularity 0:6004a7230f87 3
singularity 0:6004a7230f87 4 //VOIR LA PRIORITE DES INTERRUPTIONS
singularity 0:6004a7230f87 5 //INTERRUPTION SUR LES CLICKS DES CAPTEURS DE VITESSE DOIT AVOIR UNE PRIORITE PLUS IMPORTANTE
singularity 0:6004a7230f87 6 //QUE LA CAMERA OU LE RESTE
singularity 0:6004a7230f87 7
singularity 0:6004a7230f87 8 // COMMANDE: 53 43 FF FF FF 0A
singularity 0:6004a7230f87 9 // Freescale de merde
singularity 0:6004a7230f87 10
singularity 0:6004a7230f87 11 Propulsion propulsion;
singularity 0:6004a7230f87 12 DigitalOut led_run(LED_RED);
singularity 0:6004a7230f87 13 Camera cam(P_SI,P_CLK,P_AO,5);
singularity 0:6004a7230f87 14 Ticker timer;
singularity 0:6004a7230f87 15 Timer t;
singularity 0:6004a7230f87 16 int begin,end;
singularity 0:6004a7230f87 17 int t_int;
singularity 0:6004a7230f87 18 bool acquisition;
singularity 0:6004a7230f87 19
singularity 0:6004a7230f87 20 unsigned short valeurs[128];
singularity 0:6004a7230f87 21
singularity 0:6004a7230f87 22 void call() {
singularity 0:6004a7230f87 23 acquisition = true;
singularity 0:6004a7230f87 24 }
singularity 0:6004a7230f87 25
singularity 0:6004a7230f87 26 void setTIntegration(int t)
singularity 0:6004a7230f87 27 {
singularity 0:6004a7230f87 28 timer.detach();
singularity 0:6004a7230f87 29 timer.attach_us(&call,t);
singularity 0:6004a7230f87 30 }
singularity 0:6004a7230f87 31
singularity 0:6004a7230f87 32 //TEMPS INTEGRATION 0.065-100 ms
singularity 0:6004a7230f87 33 int main()
singularity 0:6004a7230f87 34 {
singularity 0:6004a7230f87 35 init();
singularity 0:6004a7230f87 36 t.start();
singularity 0:6004a7230f87 37 acquisition = false;
singularity 0:6004a7230f87 38 t_int = 10000;
singularity 0:6004a7230f87 39 timer.attach_us(&call,t_int);
singularity 0:6004a7230f87 40 /*Attente active !! Argh ! */
singularity 0:6004a7230f87 41
singularity 0:6004a7230f87 42 /*Ou est ce que tu vois une attente active, il n'y a qu'un pauvre vieux test a chaque passage*/
singularity 0:6004a7230f87 43 /*De plus, je te paie une bière si tu me codes un OS pour Freescale qui me gère la préemption et le réveil de Thread*/
singularity 0:6004a7230f87 44
singularity 0:6004a7230f87 45 while (true) {
singularity 0:6004a7230f87 46 if(acquisition) {
singularity 0:6004a7230f87 47 led_run = !led_run;
singularity 0:6004a7230f87 48
singularity 0:6004a7230f87 49 //Lancement acquisition
singularity 0:6004a7230f87 50 begin = t.read_us();
singularity 0:6004a7230f87 51 cam.capture(valeurs);
singularity 0:6004a7230f87 52 end = t.read_us();
singularity 0:6004a7230f87 53
singularity 0:6004a7230f87 54 acquisition = false;
singularity 0:6004a7230f87 55 }
singularity 0:6004a7230f87 56 }
singularity 0:6004a7230f87 57 }