共2条
1/1 1 跳转至页
2214,10ms 2214定时器中断时间不能低于10ms?

问
OS_ENTER_CRITICAL(); // 关闭中断
VICVectAddr1 = (uint32)Timer1_Exception; // 定时器函数
VICVectCntl1 = (0x20 | 0x05); // 定时器1中断通道分配到第1通道
VICIntEnable = 0x00000020 | VICIntEnable; // 使能定时器1中断
T1IR = 0xffffffff; // 定时器1清除所有中断标志
T1TC = 0; // 定时器1计数器TC起始计数为0
T1TCR = 0x01; // 定时器1保持在计数状态
T1MCR = 0x03; // 定时器1匹配控制寄存器
T1MR0 = (Fpclk / 1000); // 比较值(100ms值)
OS_EXIT_CRITICAL(); // 开中断
如果中断时间在1-100,是可以的,到1000后老是重启,我是做语音采集的,要10K中断速度,怎么办?? 答 1: 有没有人做过定时器1ms中断吗?我是用操作系统的,定时器每秒达到500次就不正常了,老是重启动 答 2: 0.1 答 3: 0.1ms也做过,内核每秒切换5000次也试过 答 4: 我也关心这个问题我也有这种需要,我不用操作系统做。
我要求100k,我觉得不会有问题。
当然是了才知道 答 5: 感觉好像是操作系统没有移植好。中断有没有嵌套? 答 6: 操作系统是用老周的,不会说老周的系统用问题吧?我精简到最简 答 7: 问题解决没有??local_mach兄弟,你这个UC/OS下time1的问题解决没有啊,我也准备做这个,试了一下,time1中断好像有问题啊 答 8: 我是用2114的,太短是不行的,100us我试过! 答 9: 我做的最小能达到30us再小就不行了
VICVectAddr1 = (uint32)Timer1_Exception; // 定时器函数
VICVectCntl1 = (0x20 | 0x05); // 定时器1中断通道分配到第1通道
VICIntEnable = 0x00000020 | VICIntEnable; // 使能定时器1中断
T1IR = 0xffffffff; // 定时器1清除所有中断标志
T1TC = 0; // 定时器1计数器TC起始计数为0
T1TCR = 0x01; // 定时器1保持在计数状态
T1MCR = 0x03; // 定时器1匹配控制寄存器
T1MR0 = (Fpclk / 1000); // 比较值(100ms值)
OS_EXIT_CRITICAL(); // 开中断
如果中断时间在1-100,是可以的,到1000后老是重启,我是做语音采集的,要10K中断速度,怎么办?? 答 1: 有没有人做过定时器1ms中断吗?我是用操作系统的,定时器每秒达到500次就不正常了,老是重启动 答 2: 0.1 答 3: 0.1ms也做过,内核每秒切换5000次也试过 答 4: 我也关心这个问题我也有这种需要,我不用操作系统做。
我要求100k,我觉得不会有问题。
当然是了才知道 答 5: 感觉好像是操作系统没有移植好。中断有没有嵌套? 答 6: 操作系统是用老周的,不会说老周的系统用问题吧?我精简到最简 答 7: 问题解决没有??local_mach兄弟,你这个UC/OS下time1的问题解决没有啊,我也准备做这个,试了一下,time1中断好像有问题啊 答 8: 我是用2114的,太短是不行的,100us我试过! 答 9: 我做的最小能达到30us再小就不行了
共2条
1/1 1 跳转至页
回复
打赏帖 | |
---|---|
我踩过的那些坑之混合OTL功放与落地音箱被打赏50分 | |
汽车电子中巡航控制系统的使用被打赏10分 | |
【我踩过的那些坑】工作那些年踩过的记忆深刻的坑被打赏100分 | |
分享汽车电子中巡航控制系统知识被打赏10分 | |
分享安全气囊系统的检修注意事项被打赏10分 | |
分享电子控制安全气囊计算机知识点被打赏10分 | |
【分享开发笔记,赚取电动螺丝刀】【OZONE】使用方法总结被打赏20分 | |
【分享开发笔记,赚取电动螺丝刀】【S32K314】芯片启动流程分析被打赏40分 | |
【分享开发笔记,赚取电动螺丝刀】【S32K146】S32DS RTD 驱动环境搭建被打赏12分 | |
【分享开发笔记,赚取电动螺丝刀】【IAR】libc标注库time相关库函数使用被打赏23分 |