打印

定时器应用与AD采集的问题?

[复制链接]
3383|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
7120223|  楼主 | 2010-1-7 16:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
当在应用定时器0定时时,又需要采集AD的值,AD是外扩的芯片。当程序运行到AD采集模块是,我们是因该关定时器0呢,还是先因该查询定时器TH,TL中的值,看在AD采集过程中是否中断,如没有中断执行采集程序,如有中断跳过本次采集等下一次。这两种思想对么?还有别的方法么

相关帖子

沙发
peache| | 2010-1-7 16:56 | 只看该作者
你的意思是怕中断打架? 如果你只有这2个中断,或是说在ADC采样中断时只会发生定时中断没有第3个中断了,可以不管中断打架的问题,单片机自动帮你处理了。中断不是都有中断地址号么,地址号越小的,在同一个优先级里有限权越高。同时可以控制中断悠闲级寄存器来改变中断优先级。我用的C8051F020就是在ADC采样中断和定时中断会同时发生,但没做过多处理,采样数据一样很准。

使用特权

评论回复
板凳
qe123| | 2010-1-7 17:04 | 只看该作者
在采集ADC时,可以禁止定时中断

使用特权

评论回复
地板
7120223|  楼主 | 2010-1-7 20:58 | 只看该作者
2楼:不是两个中断  AD是IO控制外部的AD芯片来采集的哦,就是怕一个问题,当IO对AD芯片进行数据读写的时候要是有定时器中断 来打断的话,可能会是数据出错。
3楼:我也试过了,在AD采集的开始和结束来关开定时器中断。但是我是程序要不断的采集数据的,就导致定时器,频繁的关开哦,这样对定时器有影响,我的定时器是用来控制4位一体数码管的显示的。

使用特权

评论回复
5
lirunze| | 2010-1-8 19:09 | 只看该作者
这个很简单啊,在响应一个中断时,进入中断程序先把总中断关掉,中断程序执行完后再开中断。这样的话就不会相互影响了啊!
而且我感觉数码管完全不需要定时器控制显示的。

使用特权

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

本版积分规则

105

主题

389

帖子

0

粉丝