cc2640怎样才能实现小于1ms的精准定时?
时间:10-02
整理:3721RD
点击:
cc2640怎样才能实现小于1ms的精准定时?
我现在用的版本 ble_sdk_2_02_01_18 , 参考各个例子程序都是实现在ms级别的定时,
现在我驱动步进马达需要用到小于ms的精准定时,例如 5.3ms , 0.48ms 等等。
请问怎样实现? 先谢了!
我项目中也用到了步进电机,不过我们选择的是2541透传+stm32。
蓝牙协议栈无法实现定准定时的。
甜甜的大香瓜,我在网上也看到了你的文章,学了不少东西。谢谢你的分享。
我现在的项目就是一个2640+3 个步进马达,如果再加一个mcu,成本就有点高了,而且也麻烦。
3个步进电机要想能同时、独立地进行控制,需要用到3路的PWM+1个定时器。
定时器作为系统脉冲产生1ms基准,并给出3个非阻塞的查询方式的延时函数分别给3路PWM。
从精准的角度来说,受协议栈的影响会导致“1ms不准+查询不准”,我认为2640用步进电机是不合适的。
我们的产品对精度要求较高,所以使用2541+stm32,实测pwm误差0.01Hz以内、运行时长误差1ms以内。
还在开发中。
ble蓝牙协议是一个低功耗操作系统,实时性没有传统的单片机好。目前估计达不到你的需求。