/* Blue Pill test code Blinks onboard led (PC13), external led at PC14 (common anode -> HIGH = led off), Outputs binary count on PA0-PA7 (common anode as well) polprog docs: http://libopencm3.org/docs/latest/stm32f1/html/ */ #define STM32F1 #include #include int main(){ //setup port C rcc_periph_clock_enable(RCC_GPIOC); gpio_set_mode(GPIOC, GPIO_MODE_OUTPUT_2_MHZ, GPIO_CNF_OUTPUT_PUSHPULL, GPIO13); gpio_set_mode(GPIOC, GPIO_MODE_OUTPUT_2_MHZ, GPIO_CNF_OUTPUT_PUSHPULL, GPIO14); //setup many pins on port a rcc_periph_clock_enable(RCC_GPIOA); gpio_set_mode(GPIOA, GPIO_MODE_OUTPUT_2_MHZ, GPIO_CNF_OUTPUT_PUSHPULL, 0x00FF); //set first 8 pins as out int a = 0; while(1){ gpio_clear(GPIOC, GPIO13); gpio_set(GPIOC, GPIO14); for(int i = 0; i < 100000; i++) __asm__("nop"); gpio_set(GPIOC, GPIO13); gpio_clear(GPIOC, GPIO14); for(int i = 0; i < 100000; i++) __asm__("nop"); gpio_set(GPIOA, 0x00FF); //all leds off gpio_clear(GPIOA, a & 0x00FF); //some leds on a++; if(a > 255) a = 0; } }