four leds are enlightened and dimmed by tickers.
Dependencies: mbed
timer_multi_blinky.cpp
- Committer:
- titanium
- Date:
- 2018-04-01
- Revision:
- 2:768c88a138c2
File content as of revision 2:768c88a138c2:
#include "mbed.h" Ticker timer1, timer2, timer3, timer4, timer5; DigitalOut digled1(LED1), digled2(LED2); PwmOut pwmled3(LED3), pwmled4(LED4); DigitalOut digout7(p7); Serial pc(USBTX, USBRX); void flipled1() { digled1 = !digled1;} void flipled2 () { digled2 = !digled2; } void changeled3() { static int seq=0; seq=(seq+1) % 100; // 1-100 pwmled3.write(seq/200.0); } void changeled4() { static int seq=0; seq=(seq+1) % 100; // 1-100 pwmled4.write(seq/200.0); } void report_led() { static int count=0; pc.printf(" count:%d %d %d %f %f\r\n", ++count, digled1.read(), digled2.read(), pwmled3.read(), pwmled4.read()); } int main() { pc.printf("Timer driven multi led blinker.\n\r"); timer1.attach(&flipled1, 0.8); timer2.attach(&flipled2, 0.35); timer3.attach(&changeled3, 0.007); timer4.attach(&changeled4, 0.013); timer5.attach(&report_led, 1.0); while(1) { digout7= ! digout7; } } //See how fast GPIO can be toggled.