对,又是我,最近学 stm32 学到了计时器,相比起 51 复杂了不是一星半点,然后还多了不少名词和公式,这边简单汇总概括一下,理一下学过的东西。
(一)GPIO#
“GPIO” 是 “General Purpose Input Output” 的缩写,意思是 “通用输入输出接口”,可以接受或者输出信号。
(二)AFIO#
AFIO 是 “Alternate Function I/O” 的缩写,意思是 “复用功能输入输出”,因为 stm32 中有些引脚复用,有时候不方便就需要调节 AFIO,在外部中断的时候也需要配置 AFIO 进行中断引脚选择。
(三)中断相关#
- “EXTI” 是外部中断寄存器,用于监视鉴定 GPIO 引脚的电平信号,然后向 NVIC 申请中断。
- ”NVIC “的全称是” Nested vectoredinterrupt controller“,即嵌套向量中断控制器,用于管理和控制中断。
(四)定时器相关#
- ”PSC“表示预分频器。
- ”CNT“表示计数器,CNT 达到 ARR 时就会溢出。
- ”ARR“表示自动重载器。
- “CCR” 是 “Capture/Compare Register” 的缩写,中文意思是 “捕获比较寄存器”,用于与 ARR 比较产生 PWM 波。
- "CK" 表示时钟,是 “Clock” 的缩写。
- “CK_CNT” 计时器计数频率。
- “CK_PSC” 计时器的预分频值,在 stm32 中,这个值是 72MHZ。
(五)计算公式#
- 计时器溢出频率:CK_CNT_OV=CK_CNT/ARR+1=CK_PSC/PSC+1/ARR+1
- PWM 占空比:Duty=CRR/ARR+1
- PWM 频率:Freq=CK_PSC/PSC+1/ARR+1
- PWM 分辨率:Reso=1/ARR+1
目前刚学到计时器,知道的要配置的东西就这么多,都只是粗略地理解,毕竟我刚大一,学校还没开专业课,好多听不懂的,只是学一下怎么用,以后再细学。