Adriatik Sermaxhaj
/
vertige_chrono
chrono pour l'escalade
main.cpp@0:e940fef49558, 2017-12-11 (annotated)
- Committer:
- sera1901
- Date:
- Mon Dec 11 15:20:18 2017 +0000
- Revision:
- 0:e940fef49558
first try
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
sera1901 | 0:e940fef49558 | 1 | #include "mbed.h" |
sera1901 | 0:e940fef49558 | 2 | |
sera1901 | 0:e940fef49558 | 3 | //------------------------------------ |
sera1901 | 0:e940fef49558 | 4 | // Hyperterminal configuration |
sera1901 | 0:e940fef49558 | 5 | // 9600 bauds, 8-bit data, no parity |
sera1901 | 0:e940fef49558 | 6 | //------------------------------------ |
sera1901 | 0:e940fef49558 | 7 | |
sera1901 | 0:e940fef49558 | 8 | #define MAX_TIME_MS 300000 // 5 minutes |
sera1901 | 0:e940fef49558 | 9 | |
sera1901 | 0:e940fef49558 | 10 | Serial ble(PC_2, PC_3,9600); |
sera1901 | 0:e940fef49558 | 11 | Serial pc(SERIAL_TX, SERIAL_RX,9600); |
sera1901 | 0:e940fef49558 | 12 | DigitalIn StopBtn(PC_10); |
sera1901 | 0:e940fef49558 | 13 | DigitalIn StartResetBtn(PC_12); |
sera1901 | 0:e940fef49558 | 14 | DigitalIn DebugBtn(USER_BUTTON); |
sera1901 | 0:e940fef49558 | 15 | DigitalOut DebugLed1(LED1); |
sera1901 | 0:e940fef49558 | 16 | DigitalOut DebugLed2(LED2); |
sera1901 | 0:e940fef49558 | 17 | |
sera1901 | 0:e940fef49558 | 18 | |
sera1901 | 0:e940fef49558 | 19 | int main() |
sera1901 | 0:e940fef49558 | 20 | { |
sera1901 | 0:e940fef49558 | 21 | int ms = 0; |
sera1901 | 0:e940fef49558 | 22 | int StopOld = StopBtn.read(); |
sera1901 | 0:e940fef49558 | 23 | int StartResetOld = StartResetBtn.read(); |
sera1901 | 0:e940fef49558 | 24 | bool startCount = false; |
sera1901 | 0:e940fef49558 | 25 | |
sera1901 | 0:e940fef49558 | 26 | while(1) { |
sera1901 | 0:e940fef49558 | 27 | if(StopBtn.read() != StopOld){ |
sera1901 | 0:e940fef49558 | 28 | StopOld = StopBtn.read(); |
sera1901 | 0:e940fef49558 | 29 | if(StopOld == 0){ |
sera1901 | 0:e940fef49558 | 30 | ble.printf("stop\n"); |
sera1901 | 0:e940fef49558 | 31 | ble.printf("%d ms\n",ms); |
sera1901 | 0:e940fef49558 | 32 | startCount = false; |
sera1901 | 0:e940fef49558 | 33 | wait(1); |
sera1901 | 0:e940fef49558 | 34 | } |
sera1901 | 0:e940fef49558 | 35 | DebugLed1 = !DebugLed1; |
sera1901 | 0:e940fef49558 | 36 | } |
sera1901 | 0:e940fef49558 | 37 | |
sera1901 | 0:e940fef49558 | 38 | if(StartResetBtn.read() != StartResetOld){ |
sera1901 | 0:e940fef49558 | 39 | StartResetOld = StartResetBtn.read(); |
sera1901 | 0:e940fef49558 | 40 | if(StartResetOld == 0){ |
sera1901 | 0:e940fef49558 | 41 | ble.printf("reset\n"); |
sera1901 | 0:e940fef49558 | 42 | ms = 0; |
sera1901 | 0:e940fef49558 | 43 | startCount = false; |
sera1901 | 0:e940fef49558 | 44 | }else{ |
sera1901 | 0:e940fef49558 | 45 | ble.printf("start\n"); |
sera1901 | 0:e940fef49558 | 46 | startCount = true; |
sera1901 | 0:e940fef49558 | 47 | } |
sera1901 | 0:e940fef49558 | 48 | DebugLed1 = !DebugLed2; |
sera1901 | 0:e940fef49558 | 49 | } |
sera1901 | 0:e940fef49558 | 50 | if(startCount){ |
sera1901 | 0:e940fef49558 | 51 | ms++; |
sera1901 | 0:e940fef49558 | 52 | if(ms>MAX_TIME_MS){ |
sera1901 | 0:e940fef49558 | 53 | startCount = false; |
sera1901 | 0:e940fef49558 | 54 | } |
sera1901 | 0:e940fef49558 | 55 | } |
sera1901 | 0:e940fef49558 | 56 | wait_ms(1); |
sera1901 | 0:e940fef49558 | 57 | } |
sera1901 | 0:e940fef49558 | 58 | } |