#include "stm32.h" #include "rcc.h" #include "interrupt.h" #include "thread.h" #include "time.h" #include "pin.h" #include "usb.h" static Pin& led_green = PD12; static Pin& led_yellow = PD13; static Pin& led_red = PD14; static Pin& led_blue = PD15; int main() { // Initialize system timer. STK.LOAD = 168000000 / 8 / 1000; // 1000 Hz. STK.CTRL = 0x03; RCC.enable(RCC.GPIOA); RCC.enable(RCC.GPIOB); RCC.enable(RCC.GPIOD); led_green.set_mode(Pin::Output); led_yellow.set_mode(Pin::Output); led_red.set_mode(Pin::Output); led_blue.set_mode(Pin::Output); RCC.enable(RCC.OTGFS); while(1) { led_green.on(); Time::sleep(100); led_green.off(); led_yellow.on(); Time::sleep(100); led_yellow.off(); led_red.on(); Time::sleep(100); led_red.off(); led_blue.on(); Time::sleep(100); led_blue.off(); } }