Board logo

标题: RL-RTX遇到一例os_dly_wait()延时不准解决办法 [打印本页]

作者: look_w    时间: 2017-10-24 16:05     标题: RL-RTX遇到一例os_dly_wait()延时不准解决办法

最近在LPC1788上使用RL-RTX遇到一例os_dly_wait()延时不准的问题,延时的时间比预想的差了十倍。        systick设置了每tick为10ms,调用os_dly_wait(2)后发现task执行时候没有按预想的20ms延时,而是2ms。怀疑时钟问题,但也不可能差那么多,测试了timer0,timer1都是正常的。
        研究了好久最后发现是RTX的配置文件(RTX_Conf_CM.c)造成的,以前把这个文件放到了工程下而不是引用Keil MDK安装目录(C:\Keil\ARM\RL\RTX\Config)下的,后来MDK从v4.2一路升级到了v4.7了,这个文件没跟着更新。旧版的配置文件相对新版少了Hardware timer的选项导致出错

     选择Hardware timer,频率同CCLK(120MHz),每tick 10ms




    总结:针对类似问题,先确保RTX配置文件版本正确,然后选择RTX使用的Timer,根据时钟配置设置好相应的频率。如果还是有误差则要检查Clock相关配置(PLL0/1,分频系数等)。如果还是不行,则要从硬件(晶振)方面查了。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0