Task 4.1.1 Solution
Dependencies: mbed
main.cpp@0:248dad7a0a29, 2015-09-24 (annotated)
- Committer:
- noutram
- Date:
- Thu Sep 24 12:28:21 2015 +0000
- Revision:
- 0:248dad7a0a29
Initial version 24-09-2015
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
noutram | 0:248dad7a0a29 | 1 | #include "mbed.h" |
noutram | 0:248dad7a0a29 | 2 | |
noutram | 0:248dad7a0a29 | 3 | #define kRED 4 |
noutram | 0:248dad7a0a29 | 4 | #define kYELLOW 2 |
noutram | 0:248dad7a0a29 | 5 | #define kGREEN 1 |
noutram | 0:248dad7a0a29 | 6 | |
noutram | 0:248dad7a0a29 | 7 | //Global objects |
noutram | 0:248dad7a0a29 | 8 | BusOut binaryOutput(D5, D6, D7); //Outputs as an integer |
noutram | 0:248dad7a0a29 | 9 | |
noutram | 0:248dad7a0a29 | 10 | DigitalIn SW1(D3); |
noutram | 0:248dad7a0a29 | 11 | DigitalIn SW2(D4); |
noutram | 0:248dad7a0a29 | 12 | |
noutram | 0:248dad7a0a29 | 13 | AnalogIn AIN(A0); |
noutram | 0:248dad7a0a29 | 14 | float fVin = 0.0; |
noutram | 0:248dad7a0a29 | 15 | |
noutram | 0:248dad7a0a29 | 16 | //Main function |
noutram | 0:248dad7a0a29 | 17 | int main() { |
noutram | 0:248dad7a0a29 | 18 | |
noutram | 0:248dad7a0a29 | 19 | |
noutram | 0:248dad7a0a29 | 20 | while(1) { |
noutram | 0:248dad7a0a29 | 21 | |
noutram | 0:248dad7a0a29 | 22 | //Read ADC |
noutram | 0:248dad7a0a29 | 23 | fVin = AIN; |
noutram | 0:248dad7a0a29 | 24 | |
noutram | 0:248dad7a0a29 | 25 | //Write to terminal |
noutram | 0:248dad7a0a29 | 26 | printf("Analog input = %6.4f\n", fVin); //3 decimal places, fieldwidth=5 |
noutram | 0:248dad7a0a29 | 27 | |
noutram | 0:248dad7a0a29 | 28 | if (fVin < 0.5f) { |
noutram | 0:248dad7a0a29 | 29 | binaryOutput = kGREEN; |
noutram | 0:248dad7a0a29 | 30 | } else { |
noutram | 0:248dad7a0a29 | 31 | binaryOutput = kRED; |
noutram | 0:248dad7a0a29 | 32 | } |
noutram | 0:248dad7a0a29 | 33 | |
noutram | 0:248dad7a0a29 | 34 | //Wait |
noutram | 0:248dad7a0a29 | 35 | wait(0.5); |
noutram | 0:248dad7a0a29 | 36 | |
noutram | 0:248dad7a0a29 | 37 | } //end while(1) |
noutram | 0:248dad7a0a29 | 38 | } //end main |