New work version with additional functions
Dependencies: 4DGL-UC ConfigFile MODSERIAL mbed mbos
Fork of CDU_Mbed_35 by
main.cpp@5:99594f4ab659, 2012-12-08 (annotated)
- Committer:
- LvdK
- Date:
- Sat Dec 08 20:37:05 2012 +0000
- Revision:
- 5:99594f4ab659
- Parent:
- 3:58382fa6e555
- Child:
- 6:e0bf3b244d7c
stabiel goed werkende versie met ALIVE en keymessage simulatie
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
LvdK | 5:99594f4ab659 | 1 | // L. van der Kolk, ELVEDEKA, Holland // |
LvdK | 5:99594f4ab659 | 2 | // File: main.cpp version 1.0 |
LvdK | 5:99594f4ab659 | 3 | |
LvdK | 0:6f71ca095e78 | 4 | #include "mbed.h" |
LvdK | 5:99594f4ab659 | 5 | #include "TextLCD.h" |
LvdK | 5:99594f4ab659 | 6 | TextLCD lcd(p8, p9, p10, p11, p12, p13); // rs, e, d4-d7 |
LvdK | 0:6f71ca095e78 | 7 | |
LvdK | 5:99594f4ab659 | 8 | DigitalOut led1(LED1); // Led1, only for testing |
LvdK | 0:6f71ca095e78 | 9 | |
LvdK | 5:99594f4ab659 | 10 | extern Serial USB; // >>>>>>>>>>> alleen t.b.v TEST output !! |
LvdK | 0:6f71ca095e78 | 11 | |
LvdK | 0:6f71ca095e78 | 12 | void init_USB(); |
LvdK | 5:99594f4ab659 | 13 | void init_alivetimer(); |
LvdK | 5:99594f4ab659 | 14 | void check_alive(); |
LvdK | 5:99594f4ab659 | 15 | |
LvdK | 5:99594f4ab659 | 16 | void init_buttons_Mbed(); |
LvdK | 5:99594f4ab659 | 17 | void scan_buttons_Mbed(); |
LvdK | 5:99594f4ab659 | 18 | |
LvdK | 3:58382fa6e555 | 19 | void collect_decode_FSdata(); |
LvdK | 5:99594f4ab659 | 20 | void collect_and_send_FSdata(); |
LvdK | 5:99594f4ab659 | 21 | //void Braat_test_update_flag_van_LvdK_en_doet_wat_met_de_nieuwe_data(); |
LvdK | 0:6f71ca095e78 | 22 | |
LvdK | 0:6f71ca095e78 | 23 | main() |
LvdK | 0:6f71ca095e78 | 24 | { |
LvdK | 5:99594f4ab659 | 25 | // -- This is main.cpp created by LvdK to test all FS communication -- |
LvdK | 0:6f71ca095e78 | 26 | |
LvdK | 5:99594f4ab659 | 27 | init_USB(); // : setup USB communication and Rx interrupt |
LvdK | 5:99594f4ab659 | 28 | init_alivetimer(); // : setup alive message timer |
LvdK | 5:99594f4ab659 | 29 | init_buttons_Mbed(); // : <<<<<<<<<<<<<<<<<<<<< test only |
LvdK | 5:99594f4ab659 | 30 | |
LvdK | 5:99594f4ab659 | 31 | lcd.cls(); // : clear LCD display |
LvdK | 5:99594f4ab659 | 32 | lcd.printf(" -- Mbed CDU --\n"); |
LvdK | 5:99594f4ab659 | 33 | USB.printf(" --- Mbed CDU ---\n"); |
LvdK | 5:99594f4ab659 | 34 | |
LvdK | 5:99594f4ab659 | 35 | |
LvdK | 5:99594f4ab659 | 36 | while (1==1) { // this is my endless main loop |
LvdK | 5:99594f4ab659 | 37 | |
LvdK | 5:99594f4ab659 | 38 | led1 = !led1; // : toggle LED1 to show running program |
LvdK | 5:99594f4ab659 | 39 | //wait(0.02); |
LvdK | 0:6f71ca095e78 | 40 | |
LvdK | 5:99594f4ab659 | 41 | // Check on new received characters from FS in filled Rx ringbuffer |
LvdK | 5:99594f4ab659 | 42 | // and decode to data if relevant: |
LvdK | 3:58382fa6e555 | 43 | collect_decode_FSdata(); |
LvdK | 5:99594f4ab659 | 44 | |
LvdK | 5:99594f4ab659 | 45 | // Proces new received FS data: |
LvdK | 5:99594f4ab659 | 46 | // Braat_test_update_flag_van_LvdK_en_doet_wat_met_de_nieuwe_data(); |
LvdK | 5:99594f4ab659 | 47 | |
LvdK | 5:99594f4ab659 | 48 | // Send relevant data to FS: |
LvdK | 5:99594f4ab659 | 49 | // LvdK test updates van data Braat en leest de data uit afgesproken datagebied |
LvdK | 5:99594f4ab659 | 50 | // en stuurt dit naar de FS: |
LvdK | 5:99594f4ab659 | 51 | scan_buttons_Mbed(); |
LvdK | 5:99594f4ab659 | 52 | |
LvdK | 5:99594f4ab659 | 53 | collect_and_send_FSdata(); |
LvdK | 5:99594f4ab659 | 54 | |
LvdK | 5:99594f4ab659 | 55 | check_alive(); // : if 5 sec passed, send alive message |
LvdK | 5:99594f4ab659 | 56 | |
LvdK | 0:6f71ca095e78 | 57 | } |
LvdK | 0:6f71ca095e78 | 58 | } |