打印
[DSP编程]

CPUtimer0中断应用之十分不解,求开导

[复制链接]
3995|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yicy123|  楼主 | 2013-7-19 16:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
理论上来说,timer0中断,定时器减到0会产生一个中断标志TIF,然后系统响应,关键是这个TIF手册上说不能自动清零,需要写1清零,但在TI的历程上没有看见清零的步骤哦,为什么,不清零一直是1不就一直响应定时器中断了么,可实际上不清零程序执行的也很对,为什么,十分不解?

相关帖子

沙发
yicy123|  楼主 | 2013-7-19 17:01 | 只看该作者
没有人用过CPUtimer0做定时中断么?

使用特权

评论回复
板凳
lenningwong| | 2013-7-20 10:50 | 只看该作者
你得先说明你用的是哪个例程,中断标记都是要清的。
不过具体问题具体分析,如果照你所说,中断程序不清零,只说明首次用了之后再定时执行中断程序,十分耗费系统资源,而且影响其他程序正常运行。你说的这种情况应该主程序没有别的程序要执行,通篇的例程只是中断程序。

使用特权

评论回复
地板
waitmoney| | 2013-7-20 11:18 | 只看该作者
TI的例程上没有看见清零的步骤? 清零就是读取某个寄存器他能自动清零或者某个位写0或1

使用特权

评论回复
5
zhangmangui| | 2013-7-20 19:13 | 只看该作者
不清零的话  应该是响应一次再也不响应timer0的中断了  不是一直响应

使用特权

评论回复
6
zhangmangui| | 2013-7-20 19:14 | 只看该作者
TIF = 1相当于就清了

使用特权

评论回复
7
yicy123|  楼主 | 2013-7-24 10:10 | 只看该作者
zhangmangui 发表于 2013-7-20 19:14
TIF = 1相当于就清了

关键是没有TIF=1这句话啊,而且我的程序用的也是这个中断,没有写清零过程,执行的也好好的,也能按照时间进中断,我观测那个中断标志位一直为1,从没被清零过,所以万分不解

使用特权

评论回复
8
zhangmangui| | 2013-7-24 10:15 | 只看该作者
yicy123 发表于 2013-7-24 10:10
关键是没有TIF=1这句话啊,而且我的程序用的也是这个中断,没有写清零过程,执行的也好好的,也能按照时 ...

确实不解   在研究一下

使用特权

评论回复
9
yicy123|  楼主 | 2013-7-26 11:40 | 只看该作者
zhangmangui 发表于 2013-7-24 10:15
确实不解   在研究一下

帮主,研究完没?

使用特权

评论回复
10
zhangmangui| | 2013-7-26 12:10 | 只看该作者
yicy123 发表于 2013-7-26 11:40
帮主,研究完没?

呵呵  工作忙  最近也没涉及DSP   其实意思是让你再研究一下  误会啦

使用特权

评论回复
11
yicy123|  楼主 | 2013-7-26 15:52 | 只看该作者
zhangmangui 发表于 2013-7-26 12:10
呵呵  工作忙  最近也没涉及DSP   其实意思是让你再研究一下  误会啦

好吧:loveliness:

使用特权

评论回复
12
charrijon| | 2013-7-27 10:10 | 只看该作者
本帖最后由 charrijon 于 2013-7-27 10:11 编辑

CCS编译器会自动帮你清0的,你去看它汇编就能看到整个过程了。就跟你用X86一样,也都是编译器帮你做了这些工作。

使用特权

评论回复
13
墨尔本的眼泪| | 2015-1-12 11:36 | 只看该作者
此处cpu定时器中断依据的是cpu中断标志寄存器IFR内的标志位,而不是定时器的中断标志位,而IFR会被自动清零,而且IFR根据定时器的设置周期性置1,不受定时器的中断标志位的影响。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

8

帖子

0

粉丝