Acuqisition de valeur sous Interrupt
Dependents: souflerie-sp3-wifi-F411re-2
bouton.cpp@0:28e814664b6e, 2021-05-23 (annotated)
- Committer:
- schnf30
- Date:
- Sun May 23 13:17:57 2021 +0000
- Revision:
- 0:28e814664b6e
Bouton
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
schnf30 | 0:28e814664b6e | 1 | #include "mbed.h" |
schnf30 | 0:28e814664b6e | 2 | #include "bouton.h" |
schnf30 | 0:28e814664b6e | 3 | |
schnf30 | 0:28e814664b6e | 4 | // Joystick Pins |
schnf30 | 0:28e814664b6e | 5 | InterruptIn up(A2); |
schnf30 | 0:28e814664b6e | 6 | InterruptIn down(D4); |
schnf30 | 0:28e814664b6e | 7 | InterruptIn left(A4); |
schnf30 | 0:28e814664b6e | 8 | InterruptIn right(A5); |
schnf30 | 0:28e814664b6e | 9 | volatile char DataEvent; // 0 pas de changement |
schnf30 | 0:28e814664b6e | 10 | |
schnf30 | 0:28e814664b6e | 11 | void Eventleft() |
schnf30 | 0:28e814664b6e | 12 | { |
schnf30 | 0:28e814664b6e | 13 | DataEvent = AIp; |
schnf30 | 0:28e814664b6e | 14 | } |
schnf30 | 0:28e814664b6e | 15 | void Eventright() |
schnf30 | 0:28e814664b6e | 16 | { |
schnf30 | 0:28e814664b6e | 17 | DataEvent = AIm; |
schnf30 | 0:28e814664b6e | 18 | } |
schnf30 | 0:28e814664b6e | 19 | void Eventup() |
schnf30 | 0:28e814664b6e | 20 | { |
schnf30 | 0:28e814664b6e | 21 | DataEvent = VFAirp; |
schnf30 | 0:28e814664b6e | 22 | } |
schnf30 | 0:28e814664b6e | 23 | void Eventdown() |
schnf30 | 0:28e814664b6e | 24 | { |
schnf30 | 0:28e814664b6e | 25 | DataEvent = VFAirm; |
schnf30 | 0:28e814664b6e | 26 | } |
schnf30 | 0:28e814664b6e | 27 | void InitBouton(void) |
schnf30 | 0:28e814664b6e | 28 | { |
schnf30 | 0:28e814664b6e | 29 | up.rise(&Eventup); |
schnf30 | 0:28e814664b6e | 30 | down.rise(&Eventdown); |
schnf30 | 0:28e814664b6e | 31 | left.rise(&Eventleft); |
schnf30 | 0:28e814664b6e | 32 | right.rise(&Eventright); |
schnf30 | 0:28e814664b6e | 33 | |
schnf30 | 0:28e814664b6e | 34 | DataEvent = Nochange; |
schnf30 | 0:28e814664b6e | 35 | } |
schnf30 | 0:28e814664b6e | 36 | char EtatBouton(void) |
schnf30 | 0:28e814664b6e | 37 | { |
schnf30 | 0:28e814664b6e | 38 | char temp = DataEvent; |
schnf30 | 0:28e814664b6e | 39 | DataEvent = Nochange; |
schnf30 | 0:28e814664b6e | 40 | return temp; |
schnf30 | 0:28e814664b6e | 41 | } |