MSP432库函数学习笔记-SysTick

MSP432Pxx的计数器是24 位的自减计数器,也就是每检测到一个时钟信号,计数器的

值就减1,减到0之后就会产生一个中断信号,然后重置计数器的值。

1,SysTick计数器使能相关

void SysTick_enableModule(void);
//启动SysTick计数器
//! This function stops the SysTick counter.  If an interrupt handler has been
//! registered, it is not called until SysTick is restarted.

void SysTick_disableModule(void);
//关闭SysTick计数器

此函数会导致(重新)启动SysTick计数器,但此函数并不会重置计数器的值,会从当前值开始计算,不会重载为上一次调用SysTick_setPeriod()设置的值,如果需要重新加载,则必须重新注册NVIC_ST_CURRENT寄存器,对该寄存器的任何写入都会导致计数器值被重置为0,并在下次重载时使用提供的值。

2,SysTick计数器中断相关

void SysTick_registerInterrupt(void (*intHandler)(void));
//为SysTick注册中断处理函数

void SysTick_unregisterInterrupt(void);
//为SysTick注销中断处理函数
void SysTick_enableInterrupt(void);
//开启SysTick中断

void SysTick_disableInterrupt(void);
//关闭SysTick中断

启用SysTick中断,进入中断时不用清除SysTick的值,因为进入中断后会自动清除计数器的值

3,SysTick计数器值相关

void SysTick_setPeriod(uint32_t period);
//设置SysTick计数器初值

uint32_t SysTick_getPeriod(void);
//获取SysTick计数器设置的初值

uint32_t SysTick_getValue(void);
//获取SysTick计数器当前值
经验分享 程序员 微信小程序 职场和发展