python world
/
Nucleo_timer_with_four_keys
A simple timer
main.cpp
- Committer:
- pythonworld
- Date:
- 2017-09-17
- Revision:
- 0:d962bf5b5f53
- Child:
- 1:943070f97366
File content as of revision 0:d962bf5b5f53:
#include "mbed.h" int status = 0; int second =5; const float interval1 = 0.3; const float interval0 = 0.5; DigitalOut my_led(D13); DigitalOut my_buzzer(D8); InterruptIn my_button1(D6); InterruptIn my_button2(D5); InterruptIn my_button3(D4); InterruptIn my_button4(D3); Timeout my_timer; void key1_pressed() { my_timer.detach(); status = 1; second = 10; } void key2_pressed() { my_timer.detach(); status = 1; second = 300; } void key3_pressed() { my_timer.detach(); status = 1; second = 600; } void key4_pressed() { my_timer.detach(); status = 1; second = 900; } void buzzer() { my_buzzer = !my_buzzer; my_led = !my_led; wait(interval1); my_buzzer = !my_buzzer; wait(interval0); my_buzzer = !my_buzzer; my_led = !my_led; wait(interval1); my_buzzer = !my_buzzer; wait(interval0); my_buzzer = !my_buzzer; my_led = !my_led; wait(interval1); my_buzzer = !my_buzzer; wait(interval0); my_buzzer = !my_buzzer; my_led = !my_led; wait(interval1); my_buzzer = !my_buzzer; wait(interval0); my_buzzer = !my_buzzer; my_led = !my_led; wait(interval1); my_buzzer = !my_buzzer; wait(interval0); status = 0; } int main() { my_buzzer.write(1); // Set button my_button1.fall(&key1_pressed); // my_button1.rise(&key1_pressed); my_button2.fall(&key2_pressed); // my_button2.rise(&key2_pressed); my_button3.fall(&key3_pressed); // my_button3.rise(&key3_pressed); my_button4.fall(&key4_pressed); // my_button4.rise(&key4_pressed); while (1) { if(status == 1) { my_timer.attach(&buzzer,second); status = 2; } if(status == 2) { wait(0.5); my_led = !my_led; } } }