题目内容

STM32F10x 系列单片机有包含若干定时/计数器,其中,TIM1 和 TIM8 是(1)器(advanced control timer),TIM2~TIM5 为(2)(General purpose timers),TIM6和 TIM7 为(3)(Basic timers)。小容量、中容量和 STM32F105××/STM32F107××的互联型 STM32 单片机有 1 个高级控制定时器,而大容量的 STM32F103××单片机则有(4)个高级控制定时器(TIM1 和 TIM8)。

查看答案
更多问题

每个通用定时器都有一个(1)来控制计数长度。这个计数器的时钟源通过可编程预分频器将 (2)时钟信号进一步分频。

在系统时钟初始化时,已经通过 PLL (1)将系统时钟配置成 (2),因此 APB2 时钟源最大是(3),而 APB1 时钟源最大是(4)。通用定时器的时钟使能可以通过固件函数来完成的,在文件 HelloRobot.h 中,函数 RCC_Configuration使能通用定时器(TIM2)时钟:

定时时间的计算与定时器寄存器初始化相关的数据结构在库文件“stm32f10x_tim.h”中:/* TIM Base Init structure definition */typedef struct{u16(1)/* 定时周期值:Period value */u16 (2) /* 预分频因子:Prescaler value */u16(3)/* 定时器分频因子:Timer clock division */u16 (4)/* 定时器计数模式:Timer Counter mode */} TIM_TimeBaseInitTypeDef;定时器的定时时间主要取决于(5)和(6)。例如,当 TIM_Period 设为 (7),TIM_Prescaler 设为(8),表示累计 36000 个脉冲频率后产生个更新或者中断(也是说定时时间到),而脉冲频率是对 TIMxCLK 频率经过了 2000 分频。因此,定时时间 T 为:(9)即 1s 溢出一次。注意:TIM_Period 和 TIM_Prescaler 这两个变量都是 (10),它们的取值范围是 0~65535。

定时器的计数模式① (1):计数器从 0 计数到自动装载值(TIMx_ARR 计数器的内容),然后重新从 0 开始计数,并且产生一个计数器溢出事件。② (2):计数器从自动装载值(TIMx_ARR 计数器的内容)开始向下计数到 0,然后从自动装载值重新开始计数,并且产生一个计数器溢出事件。③ (3):计数器从 0 开始计数到自动装载的值(TIMx_ARR 寄存器的内容),产生一个计数器溢出事件,然后向下计数到 0 又产生一个计数器下溢事件;之后再从0 开始重新计数,这样循环的计数模式叫做中心对称计数模式。

答案查题题库