找回密码
 注册
搜索
查看: 1082|回复: 5

[讨论] MTK Timer问题

[复制链接]
发表于 2008-1-3 11:40:24 | 显示全部楼层 |阅读模式
我想问一下,MTK的timer 使用
StartTimer之后一定要StopTimer吗?不StopTimer会出现不可预见的死机吗?
我的timer 时间最多可以设置为多长啊?
发表于 2008-1-3 21:16:57 | 显示全部楼层
StartTimer之后一定要StopTimer吗?
答:不一定要;
不StopTimer会出现不可预见的死机吗?
答:不会;
我的timer 时间最多可以设置为多长啊?
答:可能是1/216ms,要根据平台而不同。
点评回复

使用道具 举报

 楼主| 发表于 2008-1-4 13:15:45 | 显示全部楼层
谢谢楼上的
我不StopTimer在起同一个timer的ID不会产生问题吗?
1/216ms是CPU的主频吗?是的话这不是最短的Timer么。
最长是不是可以设成2**32-1啊?
点评回复

使用道具 举报

发表于 2008-1-4 20:26:52 | 显示全部楼层
1)我不StopTimer在起同一个timer的ID不会产生问题吗?
答:你看一下代码,
void StartTimer(U16 timerid, U32 delay, FuncPtr funcPtr)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    L4StopTimer(timerid);
    L4StartTimer(timerid, (oslTimerFuncPtr)funcPtr,
                    (void *)timerid, delay, TIMER_IS_ALIGNMENT);
}
这样的话是没有问题;

2)1/216ms是CPU的主频吗?是的话这不是最短的Timer么。最长是不是可以设成2**32-1啊?
答:这都是理论值,我们通常不会边界值。首先StartTimer这样的timer不是一个准确的定时器,因此你使用它做精确的定时是不行的;并且我的经验是当cpu睡眠后这个timer是不起作用的。太长的定时也没有意义,比如说2^32,可能中间已经关过一次机了。
点评回复

使用道具 举报

 楼主| 发表于 2008-1-5 14:22:23 | 显示全部楼层
谢谢
点评回复

使用道具 举报

发表于 2008-1-6 21:12:06 | 显示全部楼层
牛X!![em01][em01]
点评回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-12-26 00:24 , Processed in 0.045430 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表