Signal mit mehrere LEDs

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "mbed.h"
00002 
00003 Thread thread;
00004 Thread thread2;
00005 DigitalOut led(LED1);
00006 DigitalOut led2(LED2);
00007 DigitalOut led3(LED3);
00008 
00009 void led_thread() {
00010     while (true) {
00011         // Signal flags that are reported as event are automatically cleared.
00012         Thread::signal_wait(0x1);
00013         led = !led;
00014         Thread::signal_wait(0x2);
00015         led3 = !led3;
00016     }
00017 }
00018 
00019 void led_thread2() {
00020     while (true) {
00021         // Signal flags that are reported as event are automatically cleared.
00022         Thread::signal_wait(0x2);
00023         led2 = !led2;
00024     }
00025 }
00026 int main (void) {
00027     thread.start(callback(led_thread));
00028     thread2.start(callback(led_thread2));
00029 
00030     while (true) {
00031         wait(1);
00032         thread.signal_set(0x1);
00033         wait(1);
00034         thread.signal_set(0x2);
00035         wait(1);
00036         thread2.signal_set(0x2);
00037     }
00038     
00039    
00040 }