目的:利用四色板体验下mbed rtos
思路:创建两个线程,线程1每秒钟对LED1进行翻转,线程2通过按键模拟软开关控制LED4的亮和灭。
源码:
#include "mbed.h" #include "rtos.h" DigitalOut led1(PTB7); DigitalOut led4(PTB4); InterruptIn sw2(PTB21); Thread *thread2; void sw2_press(void) { thread2->signal_set(0x1); } void led_thread(void const *argument) { while (true) { led1 = !led1; Thread::wait(1000); } } void button_thread(void const *argument) { while (true) { Thread::signal_wait(0x1); led4 = !led4; } } int main() { Thread thread(led_thread); thread2 = new Thread(button_thread); sw2.fall(&sw2_press); while (true) { } }
运行效果图:
[attach]29553[/attach]
欢迎光临 烽火社区 (http://bbs.cnecport.com/) | Powered by Discuz! X3.2 |