CH573 1ms事件延时误差较大

TMOS启动了个1ms的事件,但示波器测量大概是600us,已开启了外部32k的宏定义,请问还有哪方面影响?

image.png

您好,TMOS定时时间的最小单位是625us,且定时的时间必须是625us的整数倍。您设置的1ms因为无法整除625us,所以实际上是按照625us的周期执行的,您看一下MS1_TO_SYSTEM_TIME这个宏定义就明白了。


好的,了解,那我准备用系统的滴答定时器来做,是否会和BLE的库有冲突?我看BLE的初始化这里有配置滴答定时器,但又没开中断,是否BLE库里有获取它的计数值?

image.png


可以使用,库初始化时候对systick操作主要是为了获取它的计数值用于生成随机数种子,如下图所示,用户可以正常的使用systick用于定时。另外,在中断中尽量减少耗时比较多的代码,否则会对TMOS的定时精度有影响。1.png


只有登录才能回复,可以选择微信账号登录