Switched to using SysTick for blinking; LAST COMMIT BEFORE MAJOR FILE STRUCTURE OVERHAUL

master
Mike Szczys 10 years ago
parent ff3cb68afa
commit 6c17053b93
  1. 1
      lib/Makefile
  2. 16
      src/main.c

@ -10,7 +10,6 @@ CFLAGS += -mlittle-endian -mthumb -mcpu=cortex-m0 -march=armv6s-m
CFLAGS += -ffreestanding -nostdlib
CFLAGS += -Iinc -Iinc/core -Iinc/peripherals
SRCS = stm32f0_discovery.c
SRCS = stm32f0xx_adc.c stm32f0xx_cec.c stm32f0xx_comp.c stm32f0xx_crc.c \
stm32f0xx_dac.c stm32f0xx_dbgmcu.c stm32f0xx_dma.c stm32f0xx_exti.c \
stm32f0xx_flash.c stm32f0xx_gpio.c stm32f0xx_i2c.c stm32f0xx_iwdg.c \

@ -1,11 +1,24 @@
#include "stm32f0xx_conf.h"
/*
void TIM2_IRQHandler(void) {
// flash on update event
if (TIM2->SR & TIM_SR_UIF) GPIOC->ODR ^= (1 << 8);
TIM2->SR = 0x0; // reset the status register
}
*/
void SysTick_Handler(void) {
static uint16_t tick = 0;
switch (tick++) {
case 100:
tick = 0;
GPIOC->ODR ^= (1 << 8);
break;
}
}
int main(void)
{
@ -27,7 +40,8 @@ int main(void)
GPIOC->MODER = (1 << 16);
NVIC->ISER[0] |= 1<< (TIM2_IRQn); // enable the TIM2 IRQ
//NVIC->ISER[0] |= 1<< (TIM2_IRQn); // enable the TIM2 IRQ
SysTick_Config(SystemCoreClock/100);
TIM2->PSC = 0x0; // no prescaler, timer counts up in sync with the peripheral clock
TIM2->DIER |= TIM_DIER_UIE; // enable update interrupt

Loading…
Cancel
Save