2019-07-14 16:24发布
pmet 发表于 2018-11-1 09:34 库里面是这样的 void TIM_SetCounter(TIM_TypeDef* TIMx, uint32_t Counter) {
最多设置5个标签!
我发现TIM2~TIM5的32位计数器真是一个摆设。
你的那个库函数,其实就是给TIM2_CNT寄存器赋值,我试过了,除非给TIM_CNT的高16位赋值,否则,计数器的高16位永远不会有值。赋值之后,计数器会从赋给的值的基础上往上加,直到溢出变为0x0000 0000。而且当高16位从0xFFFF溢出之后,高16位就永远变为0x0,再也不会有值,只是低16位会不断计数。真是好笑。
用JTAG调试看寄存器的值的。如下图所示:
图1、赋值后,计数器从计数的值基础上往上加:
2、溢出之后,高16位永远为0,只有低16位在不断计数:
3、测试代码
一周热门 更多>