STM32F103定时器能定时15ns吗?
请问STM32F103的定时器能定时到15ns吗?PSC或者ARR值可以设置成小数吗? 比较值和计数峰值只能设置为整数,没办法设置为小数。通常我们不会用到15ns这么短的时间,MCU达不到你的要求。 F103 core clock 才72MHz,纳秒级 中断没戏。 72MHz的频率对应的时间是13.8ns所以理论上可以产生13.8ns整数倍的延时时间比如两个定时器产生延时脉冲最小延时时间间隔可以控制到13.8ns但是定时器启动停止也需要时间所以最小时间差不能达到13.8ns并且受到IO口速度限制最小脉冲宽度也不可能达到13.8ns但是脉冲增量可以做到13.8ns
PSC或者ARR值不可以设置小数必须是整数 这种严苛的性能极限挑战,若不打算用更高速的MCU,只能超频,重写PLL和PSC,再者看sysTick行不行 根据手册描述,定时器最大计数频率是72M,那么每一步的最小分辨率是13.8ns。 而且寄存器是不能设置小数的。如上面的大神所说,软件反应时间是不够的,但是如果仅应用硬件反应的分辨率(如PWM调节精度)是可以实现的 没有单纯的为了定时而定时的!
一般最少都有一个哪怕是一个最简指令的任务,换句话说,做这个定时仅在内部软件作为一个功能可以,但事实上任何相关的事情都会耽误、超时,导致定时不准确,特别时连续的,CPU将处于死机状态。
所以是不可取的。
页:
[1]