Simple test program to get familiar with functionality of MBED RTOS on ST Nucleo-F411RE. Tasks for LED blinking, user button, temperature measurement with DS1620, temperature measurement with internal temperature sensor of ST32F411RE, ultrasonic distance measurement and displaying result on 16x2 TextLCD.
Dependencies: DS1620_improved TextLCD_improved mbed-rtos mbed
tsk_button.cpp@18:be0130c42925, 2015-12-18 (annotated)
- Committer:
- Jan Tetour
- Date:
- Fri Dec 18 20:00:56 2015 +0100
- Revision:
- 18:be0130c42925
- Parent:
- 17:94c385ff2641
Minor formatting changes.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Jan Tetour | 18:be0130c42925 | 1 | /* |
Jan Tetour | 18:be0130c42925 | 2 | * TSK_BUTTON.CPP |
Jan Tetour | 18:be0130c42925 | 3 | */ |
dzoni | 9:645f0e517017 | 4 | #include "mbed.h" |
dzoni | 9:645f0e517017 | 5 | #include "rtos.h" |
dzoni | 9:645f0e517017 | 6 | |
dzoni | 9:645f0e517017 | 7 | #include "tsk_button.h" |
dzoni | 9:645f0e517017 | 8 | #include "tsk_led.h" |
dzoni | 9:645f0e517017 | 9 | |
dzoni | 9:645f0e517017 | 10 | static DigitalIn button1(USER_BUTTON); |
dzoni | 9:645f0e517017 | 11 | |
dzoni | 9:645f0e517017 | 12 | |
dzoni | 11:e89f89c0920b | 13 | void button_thread(void const *args) { |
dzoni | 9:645f0e517017 | 14 | static uint32_t last_state = button1; |
dzoni | 9:645f0e517017 | 15 | uint32_t temp; |
dzoni | 9:645f0e517017 | 16 | |
dzoni | 9:645f0e517017 | 17 | while (true) { |
dzoni | 9:645f0e517017 | 18 | if (button1 != last_state) { |
dzoni | 9:645f0e517017 | 19 | temp = led_flash_times.on_time; |
dzoni | 9:645f0e517017 | 20 | led_flash_times.on_time = led_flash_times.off_time; |
dzoni | 9:645f0e517017 | 21 | led_flash_times.off_time = temp; |
dzoni | 9:645f0e517017 | 22 | } |
dzoni | 9:645f0e517017 | 23 | |
dzoni | 17:94c385ff2641 | 24 | Thread::wait(500); |
dzoni | 9:645f0e517017 | 25 | } |
dzoni | 9:645f0e517017 | 26 | } |
dzoni | 9:645f0e517017 | 27 |