From bcce98da54b047a15ef0abf41e0c7794f29f0439 Mon Sep 17 00:00:00 2001 From: Uwe Hermann Date: Thu, 30 Dec 2010 01:52:44 +0100 Subject: Move STM32 examples to examples/stm32 subdir. --- examples/other/timer_interrupt/Makefile | 23 --------- examples/other/timer_interrupt/README | 7 --- examples/other/timer_interrupt/timer.c | 85 --------------------------------- examples/other/timer_interrupt/timer.ld | 31 ------------ 4 files changed, 146 deletions(-) delete mode 100644 examples/other/timer_interrupt/Makefile delete mode 100644 examples/other/timer_interrupt/README delete mode 100644 examples/other/timer_interrupt/timer.c delete mode 100644 examples/other/timer_interrupt/timer.ld (limited to 'examples/other/timer_interrupt') diff --git a/examples/other/timer_interrupt/Makefile b/examples/other/timer_interrupt/Makefile deleted file mode 100644 index f6721e9..0000000 --- a/examples/other/timer_interrupt/Makefile +++ /dev/null @@ -1,23 +0,0 @@ -## -## This file is part of the libopenstm32 project. -## -## Copyright (C) 2009 Uwe Hermann -## -## This program is free software: you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation, either version 3 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program. If not, see . -## - -BINARY = timer - -include ../../Makefile.include - diff --git a/examples/other/timer_interrupt/README b/examples/other/timer_interrupt/README deleted file mode 100644 index e6a22c4..0000000 --- a/examples/other/timer_interrupt/README +++ /dev/null @@ -1,7 +0,0 @@ ------------------------------------------------------------------------------- -README ------------------------------------------------------------------------------- - -This example program blinks a LED on PortB Pin 6. 1 second on / 1 second off. -Blinking is made only with the timer interrupt of the TIM2 timer. - diff --git a/examples/other/timer_interrupt/timer.c b/examples/other/timer_interrupt/timer.c deleted file mode 100644 index d1f2bbb..0000000 --- a/examples/other/timer_interrupt/timer.c +++ /dev/null @@ -1,85 +0,0 @@ -/* - * This file is part of the libopenstm32 project. - * - * Copyright (C) 2010 Thomas Otto - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#include -#include -#include -#include -#include - -void gpio_setup(void) -{ - /* Enable GPIOB clock. */ - rcc_peripheral_enable_clock(&RCC_APB2ENR, RCC_APB2ENR_IOPBEN); - - /* Set GPIO6/7 (in GPIO port B) to 'output push-pull' for the LEDs. */ - gpio_set_mode(GPIOB, GPIO_MODE_OUTPUT_2_MHZ, - GPIO_CNF_OUTPUT_PUSHPULL, GPIO6); - gpio_set_mode(GPIOB, GPIO_MODE_OUTPUT_2_MHZ, - GPIO_CNF_OUTPUT_PUSHPULL, GPIO7); -} - -void nvic_setup() -{ - /* without this the timer interrupt routine will never be called */ - nvic_enable_irq(NVIC_TIM2_IRQ); - nvic_set_priority(NVIC_TIM2_IRQ, 1); -} - -void tim2_isr() -{ - /* LED2 on/off */ - gpio_toggle(GPIOB, GPIO6); - - /* clear interrrupt flag */ - TIM_SR(TIM2) &= ~TIM_SR_UIF; -} - -int main(void) -{ - rcc_clock_setup_in_hse_16mhz_out_72mhz(); - gpio_setup(); - nvic_setup(); - - gpio_clear(GPIOB, GPIO7); /* LED1 on */ - gpio_set(GPIOB, GPIO6); /* LED2 off */ - - rcc_peripheral_enable_clock(&RCC_APB1ENR, RCC_APB1ENR_TIM2EN); - - /* the goal is to let the LED2 glow for a second and then be off for a second */ - - /* Set timer start value */ - TIM_CNT(TIM2) = 1; - - /* Set timer prescaler. 72MHz/1440 => 50000 counts per second */ - TIM_PSC(TIM2) = 1440; - - /* End timer value. If this value is reached an interrupt is generated */ - TIM_ARR(TIM2) = 50000; - - /* Update interrupt enable */ - TIM_DIER(TIM2) |= TIM_DIER_UIE; - - /* Start timer */ - TIM_CR1(TIM2) |= TIM_CR1_CEN; - - while(1); /* Halt. */ - - return 0; -} diff --git a/examples/other/timer_interrupt/timer.ld b/examples/other/timer_interrupt/timer.ld deleted file mode 100644 index a1e9de5..0000000 --- a/examples/other/timer_interrupt/timer.ld +++ /dev/null @@ -1,31 +0,0 @@ -/* - * This file is part of the libopenstm32 project. - * - * Copyright (C) 2010 Thomas Otto - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -/* Linker script for an STM32F103RBT6 board (128K flash, 20K RAM). */ - -/* Define memory regions. */ -MEMORY -{ - rom (rx) : ORIGIN = 0x08000000, LENGTH = 128K - ram (rwx) : ORIGIN = 0x20000000, LENGTH = 20K -} - -/* Include the common ld script from libopenstm32. */ -INCLUDE libopenstm32.ld - -- cgit v1.2.3