TP

Dependencies:   mbed

Committer:
jomfec
Date:
Mon May 02 09:08:25 2016 +0000
Revision:
0:2de5803e5d23
TP

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jomfec 0:2de5803e5d23 1 #include "mbed.h"
jomfec 0:2de5803e5d23 2 #include "math.h"
jomfec 0:2de5803e5d23 3
jomfec 0:2de5803e5d23 4 #define T1 7
jomfec 0:2de5803e5d23 5 #define T2 1
jomfec 0:2de5803e5d23 6 #define T3 0
jomfec 0:2de5803e5d23 7 #define T4 6
jomfec 0:2de5803e5d23 8
jomfec 0:2de5803e5d23 9
jomfec 0:2de5803e5d23 10 BusIn clavier(p11,p12,p13,p14,p15,p16,p17,p18,p19,p20,p21,p22);
jomfec 0:2de5803e5d23 11 int lire_clavier();
jomfec 0:2de5803e5d23 12
jomfec 0:2de5803e5d23 13 int main()
jomfec 0:2de5803e5d23 14 {
jomfec 0:2de5803e5d23 15
jomfec 0:2de5803e5d23 16 int n0,n;
jomfec 0:2de5803e5d23 17 int etat=0;
jomfec 0:2de5803e5d23 18 clavier.mode(PullDown);
jomfec 0:2de5803e5d23 19 while(1)
jomfec 0:2de5803e5d23 20
jomfec 0:2de5803e5d23 21 {
jomfec 0:2de5803e5d23 22 n0=n
jomfec 0:2de5803e5d23 23 n=lire_clavier();
jomfec 0:2de5803e5d23 24
jomfec 0:2de5803e5d23 25 switch(etat)
jomfec 0:2de5803e5d23 26 {
jomfec 0:2de5803e5d23 27 case 0: if(n0==-3 && n==T1) etat=1;
jomfec 0:2de5803e5d23 28 if(n0==-3 && n!=T1 && n!==-3) etat=5; break;
jomfec 0:2de5803e5d23 29
jomfec 0:2de5803e5d23 30 case 1: if(n0==-3 && n==T2) etat=2;
jomfec 0:2de5803e5d23 31 if(n0==-3 && n!=T2 && n!==-3) etat=5; break;
jomfec 0:2de5803e5d23 32
jomfec 0:2de5803e5d23 33 case 2: if(n0==-3 && n==T3) etat=3;
jomfec 0:2de5803e5d23 34 if(n0==-3 && n!=T3 && n!==-3) etat=5; break;
jomfec 0:2de5803e5d23 35
jomfec 0:2de5803e5d23 36 case 3: if(n0==-3 && n==T4) etat=4;
jomfec 0:2de5803e5d23 37 if(n0==-3 && n!=T4 && n!==-3) etat=5; break;
jomfec 0:2de5803e5d23 38
jomfec 0:2de5803e5d23 39 case 4: etat=0; break;
jomfec 0:2de5803e5d23 40
jomfec 0:2de5803e5d23 41 case 5: etat=0; break;
jomfec 0:2de5803e5d23 42
jomfec 0:2de5803e5d23 43 }
jomfec 0:2de5803e5d23 44
jomfec 0:2de5803e5d23 45 switch(etat)
jomfec 0:2de5803e5d23 46
jomfec 0:2de5803e5d23 47 {
jomfec 0:2de5803e5d23 48
jomfec 0:2de5803e5d23 49 case 0: printf("LED VERDE ALLUMEE") ; break;
jomfec 0:2de5803e5d23 50
jomfec 0:2de5803e5d23 51 case 1: printf("ETEINTE") ; break;
jomfec 0:2de5803e5d23 52
jomfec 0:2de5803e5d23 53 case 2: printf("ETEINTE") ; break;
jomfec 0:2de5803e5d23 54
jomfec 0:2de5803e5d23 55 case 3: printf("ETEINTE") ; break;
jomfec 0:2de5803e5d23 56
jomfec 0:2de5803e5d23 57 case 4: printf("LED ROUGE ALLUMEE"); wait(5) ; break;
jomfec 0:2de5803e5d23 58
jomfec 0:2de5803e5d23 59 case 5: printf("ERREUR")wait(1) ; break;
jomfec 0:2de5803e5d23 60
jomfec 0:2de5803e5d23 61 }
jomfec 0:2de5803e5d23 62 }
jomfec 0:2de5803e5d23 63
jomfec 0:2de5803e5d23 64
jomfec 0:2de5803e5d23 65
jomfec 0:2de5803e5d23 66
jomfec 0:2de5803e5d23 67 int lire_clavier()
jomfec 0:2de5803e5d23 68 {
jomfec 0:2de5803e5d23 69 int i,n;
jomfec 0:2de5803e5d23 70 i=clavier.read();
jomfec 0:2de5803e5d23 71
jomfec 0:2de5803e5d23 72 if(i==1) n=1;
jomfec 0:2de5803e5d23 73 else if(i==2) n=2;
jomfec 0:2de5803e5d23 74 else if(i==4) n=3;
jomfec 0:2de5803e5d23 75 else if(i==8) n=4;
jomfec 0:2de5803e5d23 76 else if(i==16) n=5;
jomfec 0:2de5803e5d23 77 else if(i==32) n=6;
jomfec 0:2de5803e5d23 78 else if(i==64) n=7;
jomfec 0:2de5803e5d23 79 else if(i==128) n=8;
jomfec 0:2de5803e5d23 80 else if(i==256) n=9;
jomfec 0:2de5803e5d23 81 else if(i==512) n=0;
jomfec 0:2de5803e5d23 82 else if(i==1024) n=-1;
jomfec 0:2de5803e5d23 83 else if(i==2048) n=-2;
jomfec 0:2de5803e5d23 84 else n=-3;
jomfec 0:2de5803e5d23 85
jomfec 0:2de5803e5d23 86 return(n);
jomfec 0:2de5803e5d23 87 }