📄 readme.txt
字号:
/******************** (C) COPYRIGHT 2007 STMicroelectronics ********************
* File Name : readme.txt
* Author : MCD Application Team
* Version : V1.0
* Date : 10/08/2007
* Description : Description of the TIM Example5.
********************************************************************************
* THE PRESENT SOFTWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
* CONTENT OF SUCH SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
*******************************************************************************/
本例展示了如何设置TIM工作在输出比较-时间模式(Output Compare Timing mode),产生相应的中断,以在不同通道上产生不同的时间基数。
TIM2时钟设置为36MHz,预分频设置为4,TIM2计数器时钟可表达为:
TIM2 counter clock = TIMxCLK / (Prescaler +1) = 7.2 MHz
设置TIM2_CCR1寄存器值为49152,则CC1更新频率为TIM2计数器时钟频率(7.2 MHz)除以CCR1寄存器值(49152),为146.48 Hz。因此,TIM2通道1每6.8ms产生一个中断。
同理,根据寄存器TIM2_CCR2 、TIM2_CCR3和 TIM2_CCR4的值,TIM2通道2每4.55ms产生一个中断;TIM2通道3每2.27ms产生一个中断;TIM2通道4每1.13ms产生一个中断。
当计数器的值达到出数比较寄存器(Output compare register即TIMx_CCRx)的值时,产生输出比较中断(Output Compare interrupt),在中断历程中,按以下频率翻转输出管脚PC.06 – PC.09的状态:
- PC.06: 73.24Hz (CC1 通道1)
- PC.07: 109.8Hz (CC2通道2)
- PC.08: 219.7Hz (CC3通道3)
- PC.09: 439.4Hz (CC4通道4)
在STM3210B-LK1上,应当改PC.06 – PC.09为PC.04 – PC.07。与它们相连的LED会以不同的频率闪耀,不过,由于频率相对高了,肉眼是观察不出区别的。
Example description
===================
This example shows how to configure the TIM peripheral in Output Compare Timing
mode with the corresponding Interrupt requests for each channel in order to generate
4 different time bases.
The TIMxCLK frequency is set to 36 MHz, the Prescaler is 4 so the TIM2 counter
clock is 7.2 MHz.
The TIM2 CC1 register value is equal to 49152,
CC1 update rate = TIM2 counter clock / CCR1_Val = 146.48 Hz,
so the TIM2 Channel 1 generates an interrupt each 6.8ms
The TIM2 CC2 register is equal to 32768,
CC2 update rate = TIM2 counter clock / CCR2_Val = 219.7 HzHz
so the TIM2 Channel 2 generates an interrupt each 4.55ms
The TIM2 CC3 register is equal to 16384,
CC3 update rate = TIM2 counter clock / CCR3_Val = 439.4Hz
so the TIM2 Channel 3 generates an interrupt each 2.27ms
The TIM2 CC4 register is equal to 8192,
CC4 update rate = TIM2 counter clock / CCR4_Val = 878.9 Hz
so the TIM2 Channel 4 generates an interrupt each 1.13ms.
When the counter value reaches the Output compare registers values, the Output
Compare interrupts are generated and, in the handler routine, 4 pins(PC.06, PC.07,
PC.08 and PC.09) are toggled with the following frequencies:
- PC.06: 73.24Hz (CC1)
- PC.07: 109.8Hz (CC2)
- PC.08: 219.7Hz (CC3)
- PC.09: 439.4Hz (CC4)
Directory contents
==================
stm32F10x_conf.h Library Configuration file
stm32F10x_it.c Interrupt handlers
stm32F10x_it.h Interrupt handlers header file
main.c Main program
Hardware environment
====================
Connect an oscilloscope on PC.06, PC.07, PC.08 and PC.09 to show the different
Time Base signals.
How to use it
=============
In order to make the program work, you must do the following:
- Create a project and setup all your toolchain's start-up files
- Compile the directory content files and required Library files:
+ stm32F10x_lib.c
+ stm32F10x_tim.c
+ stm32F10x_gpio.c
+ stm32F10x_rcc.c
+ stm32F10x_nvic.c
+ stm32F10x_flash.c
- Link all compiled files and load your image into either RAM or Flash
- Run the example
******************* (C) COPYRIGHT 2007 STMicroelectronics *****END OF FILE******
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -