打印

不解,51的T2定时器为何要清TF2标志

[复制链接]
3108|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
DownCloud|  楼主 | 2011-10-12 22:36 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
为什么T0,T1不用清,T2却要,是不是51的生厂商没办法做到自动清TF2啊?
串口中断要程序员自己清TI RI 还可以理解,因为共用了一个中断向量了。

相关帖子

沙发
lyjian| | 2011-10-12 22:56 | 只看该作者
因为也有两个中断共用了一个中断向量

使用特权

评论回复
板凳
ayb_ice| | 2011-10-13 08:12 | 只看该作者
这有什么不解的
51以外的MCU基本上都要手动清0任何中断标志

使用特权

评论回复
地板
DownCloud|  楼主 | 2011-10-13 10:42 | 只看该作者
2# lyjian
好像也是啊,哈哈。。。

使用特权

评论回复
5
DownCloud|  楼主 | 2011-10-13 10:43 | 只看该作者
3# ayb_ice
是啊,pic比较给力、

使用特权

评论回复
6
DownCloud|  楼主 | 2011-10-13 10:44 | 只看该作者
4# 刘前辈
还有t3、t4啊, 单片机型号说下让俺菜鸟学习一下啊 。

使用特权

评论回复
7
刘前辈| | 2011-10-14 08:16 | 只看该作者
中颖SH79F166,  C8051FXXX

使用特权

评论回复
8
ayb_ice| | 2011-10-14 08:51 | 只看该作者
C8051F有图有真相,
T3中断标志都要人工清除
有请刘前辈找个C8051F具体型号T3或T4自动清零中断标志的证据出来
在我的印象中(当然不能绝对,只是我没有见过),扩展标准51的中断都要人工清中断标志

未命名.JPG (146.25 KB )

未命名.JPG

使用特权

评论回复
9
liang2008xing| | 2011-10-14 10:00 | 只看该作者
什么时候都自己清一次

使用特权

评论回复
10
刘前辈| | 2011-10-14 10:55 | 只看该作者
呵呵,搞差了。是中颖单片机79F166.
有图有真相:

使用特权

评论回复
11
HWM| | 2011-10-14 11:53 | 只看该作者
这个东西,还是以各厂家的手册为准,没什么可纠结或不解的。

使用特权

评论回复
12
weizheng07| | 2011-10-18 10:01 | 只看该作者
其实一般的情况是不管硬件清不清,软件都清一下,至少我总这么干

使用特权

评论回复
13
xhtxzxw| | 2011-10-18 12:27 | 只看该作者
中断标志就是一个“记号”,指示某“一”或者“几”个个事件发生了。
一、如果是指示某“一”个事件,那么不需要查询就知道发生了什么;
二、如果是指示某“几”个事件之一或部分或全部发生了,那就需要查询到底是哪个或者哪几个事件发生了;

对于一,中断发生与事件发生是一一对应的,进入中断服务程序,硬件自动清除标志不会产生误会;
对于二,中断发生与事件发生是一多对应的,进入中断服务程序,如果硬件自动清除标志就无法判断到底发生了什么事件了;

例如,51单片机的串口中断,就是一个一对二的,发生串口中断,可能是两个事件(发送完成,接收完成)之一或两者都发生了,所以,进入中断服务函数以后,硬件不能自动清除中断标志RI和TI,必须软件查询这两个标志以确定到底哪一个事件发生了或者两个事件都发生了。

T2跟T0,T1有差别,功能更丰富一些,引起T2中断的事件不止一个。所以也就不能自动清除中断标志。

使用特权

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

本版积分规则

5

主题

341

帖子

1

粉丝