我已經使用osal_start_timerEx啟動1mS的計時器,也確認無誤
但我需要更小的計時器100uS or 10uS,請問如何解決
請教大大先進
Lou I yung:
找到了
#define TICK_TIME 1000
Viki Shi:
回复 Lou I yung:
恭喜:)
Lvchen Zhao:
你好,我现在也遇到类似的问题,我需要一个10ms的定时器,使用的是osal_start_timerEx 这个函数,当timeout_value 大于200时,是没有问题的,但是当我将timeout_value 设置到150以下时,例如10ms时,通过osal_GetSystemClock 打印time间隔时发现间隔时间在150ms附近摆动。请问您是怎么启动1ms的定时器的?非常感谢。
Lou I yung:
回复 Lvchen Zhao:
我現在在頻果電腦的開發模式,我的IAR是windows的
請給我一點時間,我晚一點把程式碼post上來
我啟動另一個計時器,並啟動中斷,時間為100uS
osal_start_timerEx 無法如此準確,整顆cpu原碼實在太忙了
Lvchen Zhao:
回复 Lou I yung:
恩 我的IAR也是windows的。
我尝试过使用寄存器直接设置c2451的timer3,就是官方给出的定时器3中断模式demo,但是通过osal_getSystemTime 发现只是运行了一次。
Lvchen Zhao:
回复 Lou I yung:
我发现问题了,是因为我在时间中断里面加入了printf,打印当前系统时间,这个函数的运行时间超过了10ms(大致是150ms左右),所以才导致了我前面的问题,去掉这个函数,就一切正常了。还是非常感谢你的帮助!