Program pulses the board LED from 0% to 100% and back using soft PWM. Tested on Nucleo F030R8.
Embed:
(wiki syntax)
Show/hide line numbers
main.cpp
00001 #include "mbed.h" 00002 00003 #define PWM_STEPS 100 00004 #define PWM_SPEED 50 00005 #define LED_ON 1 00006 #define LED_OFF 0 00007 00008 DigitalOut myled(LED1); 00009 00010 void blink_led(int from, int to) 00011 { 00012 for (int i = 0; i < PWM_STEPS; i++) { 00013 myled = from; 00014 wait_us(i * PWM_SPEED); 00015 00016 myled = to; 00017 wait_us((PWM_STEPS - i) * PWM_SPEED); 00018 } 00019 } 00020 00021 int main() { 00022 while (1) { 00023 blink_led(LED_ON, LED_OFF); 00024 blink_led(LED_OFF, LED_ON); 00025 } 00026 }
Generated on Wed Jul 20 2022 13:17:44 by
1.7.2