cm3-bluepill/main.c
2025-07-15 18:29:06 +02:00

32 lines
751 B
C

#include <libopencm3/stm32/gpio.h>
#include <libopencm3/stm32/rcc.h>
static void clock_setup(void) {
// Use external 8 MHz HSE and PLL to 72 MHz
rcc_clock_setup_pll(&rcc_hse_configs[RCC_CLOCK_HSE8_72MHZ]);
rcc_periph_clock_enable(RCC_GPIOC);
}
static void gpio_setup(void) {
// gpio_mode_setup(GPIOC, GPIO_MODE_OUTPUT, GPIO_PUPD_NONE, GPIO13);
gpio_set_mode(GPIOC, GPIO_MODE_OUTPUT_2_MHZ, GPIO_CNF_OUTPUT_PUSHPULL,
GPIO13);
}
static void delay(volatile uint32_t count) {
while (count-- > 0) {
__asm__("nop");
}
}
int main(void) {
clock_setup();
gpio_setup();
while (1) {
gpio_toggle(GPIOC, GPIO13); // On Blue Pill: LED is on PC13
delay(10000000); // Crude delay loop
}
return 0;
}