STM32中SYSTICK定时器、端口复用和重映射
扫描二维码
随时随地手机看文章
第一部分STM32SYSTICK定时器:
systick 定时器按照字面意思就知道是一个简单的定时器,主要用来做延时,以避免MCU的资源浪费。
它是一个24位的倒置计数器,倒置的意思就是从最大数字递减到0,SysTick定时器被捆绑在NVIC中,用于产生SYSTICK异常,即用于中断系统。
systick有四个寄存器分别如下:
1、CTRL SysTick控制和状态寄存器LOAD :主要用于使能 systick定时器,异常请求,选择内部还是外部时钟,计数是否为零标志位
2、SysTick自动重装载除值寄存器:就是存放计数递减到零以后所自动装载的值。
3、VALSysTick当前值寄存器CALIB :按照意思就可知是当前计数的值,对它写入则会清零该数值,并且把CTRL中计数是否为零的标志位也清零。
4、SysTick校准值寄存器:一般不用
A、固件库中的Systick相关函数:
SysTick_CLKSourceConfig() //Systick时钟源选择misc.c文件中
SysTick_Config(uint32_tticks) //初始化systick,时钟为HCLK,并开启中断
//core_cm3.h/core_cm4.h文件中
B、Systick中断服务函数:
voidSysTick_Handler(void);
第二部分:端口复用和重映射
端口复用的官方解释为:
STM32有很多的内置外设,这些外设的外部引脚都是与GPIO复用的。也就是说,一个GPIO如果可以复用为内置外设的功能引脚,那么当这个GPIO作为内置外设使用的时候,就叫做复用。
粗俗解释:就是一个端口可以有很多功能,就叫端口复用。
端口映射的解释可以理解为,一个端口根据地址的计算方式转移到另外一个端口。