X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=examples%2Fstm32p103%2Fmain.c;h=de49bbb5a98c458c257a711450be1af289da564d;hb=d8a17dd99eec9aecaa60fb8beaa073fc185d8b98;hp=83481f8c00ac6ab037d663b2939531f00da78abf;hpb=5e73dc4833ec0d8d10a03083fca31be9dcb55901;p=bertos.git diff --git a/examples/stm32p103/main.c b/examples/stm32p103/main.c index 83481f8c..de49bbb5 100644 --- a/examples/stm32p103/main.c +++ b/examples/stm32p103/main.c @@ -43,25 +43,29 @@ #define LED_PIN (1 << 12) +static void led_init(void) +{ + /* Enable clocking on GPIOA and GPIOC */ + RCC->APB2ENR |= RCC_APB2_GPIOC; + /* Configure the LED pin as GPIO */ + stm32_gpioPinConfig((struct stm32_gpio *)GPIOC_BASE, + LED_PIN, GPIO_MODE_OUT_PP, GPIO_SPEED_50MHZ); +} + int main(void) { + int i; + IRQ_ENABLE; + kdbg_init(); timer_init(); + proc_init(); + led_init(); - /* Enable clocking on RCC APB2 */ - RCC->AHBENR |= 1; - /* Enable clocking on GPIOA and GPIOC */ - RCC->APB2ENR |= RCC_APB2_GPIOA | RCC_APB2_GPIOC; - - stm32_gpioPinConfig((struct stm32_gpio *)GPIOC_BASE, - LED_PIN, GPIO_MODE_OUT_PP, GPIO_SPEED_50MHZ); - while(1) + for (i = 0; ; i = !i) { - ticks_t clock = timer_clock_unlocked(); - - if (clock & 0x10) - stm32_gpioPinWrite((struct stm32_gpio *)GPIOC_BASE, LED_PIN, 1); - else - stm32_gpioPinWrite((struct stm32_gpio *)GPIOC_BASE, LED_PIN, 0); + stm32_gpioPinWrite((struct stm32_gpio *)GPIOC_BASE, LED_PIN, i); + kputs("BeRTOS up & running!\n"); + timer_delay(500); } }