Boris Tournier
/
WappAutomation2_With_Reset_WO_Switch_Cable
WappAutomation 2 : - WITH RESET - WITHOUT Switch Cable Tested on TEL50
main.cpp@2:50210204232a, 2017-08-23 (annotated)
- Committer:
- dalbanf
- Date:
- Wed Aug 23 13:44:42 2017 +0000
- Revision:
- 2:50210204232a
- Parent:
- 1:24db8b26b816
First release
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
dalbanf | 0:8814d243dfec | 1 | #include "mbed.h" |
dalbanf | 0:8814d243dfec | 2 | |
dalbanf | 2:50210204232a | 3 | float delay = 0.5; // 1 sec |
dalbanf | 0:8814d243dfec | 4 | |
dalbanf | 2:50210204232a | 5 | InterruptIn userBtn(USER_BUTTON); |
dalbanf | 0:8814d243dfec | 6 | |
dalbanf | 2:50210204232a | 7 | DigitalOut TagLED(D3); |
dalbanf | 2:50210204232a | 8 | DigitalOut GndLED(D8); |
dalbanf | 2:50210204232a | 9 | DigitalOut PE2(PE_2); |
dalbanf | 2:50210204232a | 10 | DigitalOut Relay(D4); |
dalbanf | 0:8814d243dfec | 11 | DigitalOut red(LED3); |
dalbanf | 0:8814d243dfec | 12 | DigitalOut blue(LED2); |
dalbanf | 0:8814d243dfec | 13 | DigitalOut green(LED1); |
dalbanf | 2:50210204232a | 14 | DigitalOut PE4(PE_4); |
dalbanf | 0:8814d243dfec | 15 | |
dalbanf | 2:50210204232a | 16 | DigitalIn PE6(PE_6); |
dalbanf | 2:50210204232a | 17 | DigitalIn PE5(PE_5); |
dalbanf | 2:50210204232a | 18 | |
dalbanf | 2:50210204232a | 19 | bool blink = true; |
dalbanf | 2:50210204232a | 20 | int testval[2]; |
dalbanf | 0:8814d243dfec | 21 | |
dalbanf | 0:8814d243dfec | 22 | |
dalbanf | 2:50210204232a | 23 | void pressed() |
dalbanf | 2:50210204232a | 24 | { |
dalbanf | 2:50210204232a | 25 | blink = false; |
dalbanf | 2:50210204232a | 26 | red = 0; |
dalbanf | 2:50210204232a | 27 | |
dalbanf | 2:50210204232a | 28 | //Test 3.3v, GND, Relay, D3, D4 and D8 ==> Test cover leds will be blinked if wiring is OK |
dalbanf | 2:50210204232a | 29 | TagLED = 0; //D3 |
dalbanf | 2:50210204232a | 30 | GndLED = 1; //D8 |
dalbanf | 2:50210204232a | 31 | Relay = 0; //D4 |
dalbanf | 0:8814d243dfec | 32 | |
dalbanf | 2:50210204232a | 33 | //Test PE_2 and PE_6 pins ==> Green user led on Nucleo board will be blinked if wiring is OK |
dalbanf | 2:50210204232a | 34 | PE2 = 0; |
dalbanf | 2:50210204232a | 35 | testval[0] = PE6; |
dalbanf | 2:50210204232a | 36 | PE2 = 1; |
dalbanf | 2:50210204232a | 37 | testval[1] = PE6; |
dalbanf | 2:50210204232a | 38 | if (testval[0] == 0 && testval[1] == 1) green = 1; |
dalbanf | 0:8814d243dfec | 39 | |
dalbanf | 2:50210204232a | 40 | //Test PE_5 and PE_4 pins ==> Blue user led on Nucleo board will be blinked if wiring is OK |
dalbanf | 2:50210204232a | 41 | PE4 = 0; |
dalbanf | 2:50210204232a | 42 | testval[0] = PE5; |
dalbanf | 2:50210204232a | 43 | PE4 = 1; |
dalbanf | 2:50210204232a | 44 | testval[1] = PE5; |
dalbanf | 2:50210204232a | 45 | if (testval[0] == 0 && testval[1] == 1) blue = 1; |
dalbanf | 0:8814d243dfec | 46 | |
dalbanf | 0:8814d243dfec | 47 | } |
dalbanf | 0:8814d243dfec | 48 | |
dalbanf | 0:8814d243dfec | 49 | |
dalbanf | 0:8814d243dfec | 50 | int main() { |
dalbanf | 0:8814d243dfec | 51 | green = 0; |
dalbanf | 2:50210204232a | 52 | red = 1; |
dalbanf | 0:8814d243dfec | 53 | blue = 0; |
dalbanf | 2:50210204232a | 54 | GndLED = 0; |
dalbanf | 2:50210204232a | 55 | PE2 = 0; |
dalbanf | 2:50210204232a | 56 | PE4 = 0; |
dalbanf | 2:50210204232a | 57 | TagLED = 1; |
dalbanf | 2:50210204232a | 58 | Relay = 1; //Relay interrupt will be opened |
dalbanf | 2:50210204232a | 59 | |
dalbanf | 2:50210204232a | 60 | userBtn.fall(&pressed); |
dalbanf | 2:50210204232a | 61 | while (1) { |
dalbanf | 2:50210204232a | 62 | if (blink){ |
dalbanf | 2:50210204232a | 63 | red = !red; |
dalbanf | 2:50210204232a | 64 | wait(delay); |
dalbanf | 0:8814d243dfec | 65 | } |
dalbanf | 2:50210204232a | 66 | else { |
dalbanf | 2:50210204232a | 67 | red = 0; |
dalbanf | 0:8814d243dfec | 68 | } |
dalbanf | 2:50210204232a | 69 | } |
dalbanf | 0:8814d243dfec | 70 | } |