- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章80C51片内功能部件选编
;《80C51单片机实用教程——基于Keil C和Proteus》;第5章 中断系统和定时/计数器 ;⒈ 中断源
80C51单片机的中断源共有5个中断源
其中2个为外部中断源,3个为内部中断源:
⑴ :外部中断0,中断请求信号由P3.2输入
⑵ :外部中断1,中断请求信号由P3.3输入
⑶ T0:定时/计数器0溢出中断,对外部脉冲计数由P3.4输入
⑷ T1:定时/计数器1溢出中断,对外部脉冲计数由P3.5输入
⑸ 串行中断(包括串行接收中断RI和串行发送中断TI);⒉ 中断请求控制寄存器
80C51涉及中断请求的控制寄存器有2个
定时和外中断用TCON,串行中断用SCON
用于判别5个中断源是否请求中断
相应标志位为“1”,表示请求中断 ;⒊ 中断允许控制寄存器IE
用于控制中断源的开放或关闭
可用软件对各位分别设置
相应标志位置“1”,开中;清0,关中
其中EA是总控制位。EA=0,5个中断源全部关闭;⒋ 中断优先级控制寄存器IP
可将5个中断源划分为两个中断优先级:
高优先级和低优先级
相应标志位置“1”,设置为高优先级
相应标志位清“0”,设置为低优先级
高优先级中断可以中断正在响应的低优先级中断
同优先级中断不能互相中断;5.1.3 中断处理过程;⒊ 执行中断服务程序
一般来说,中断服务程序应包含以下几部分:
⑴ 保护现场
⑵ 执行中断服务程序主体,完成相应操作
⑶ 恢复现场;中断系统的应用主要是编制应用程序
编制应用程序包括两大部分内容:
第一部分是中断初始化;第二部分是中断服务程序;⑴ 在中断服务入口地址设置一条跳转指令
转移到中断服务程序的实际入口处
⑵ 根据需要保护现场
C51程序,由编译器自动完成保护现场和恢复现场
⑶ 中断源请求中断服务要求的操作
这是中断服务程序的主体
⑷ 若是外中断电平触发方式,应有中断信号撤除操作
若是串行收发中断,应有对RI、TI清0指令
⑸ 恢复现场
⑹ 中断返回,最后一条指令必须是RETI;中断服务程序以C51子函数的形式出现,其格式如下:
void 函数名( ) interrupt n [using m]
{中断函数体语句;}
⑴ 中断函数无返回值,也不带参数
⑵ interrupt是C51关键字,表示该函数是一个中断服务子函数
n=0~4(常正整数),对应中断源编号;、;5.2 80C51定时/计数器 ;5.2.2 定时/计数器的控制寄存器;⒉ 定时/计数器工作方式控制寄存器TMOD
用于设定定时/计数器的工作方式
低4位用于控制T0,高4位用于控制T1;⑵ C/T:计数/定时方式选择位
C/T= 1,为计数工作方式
对P3.4/ P3.5引脚输入的外部事件脉冲计数,负跳变脉冲有效
C/T= 0,为定时工作方式,对片内机周脉冲计数
⑶ GATE —— 门控位
GATE=0,定时/计数器的运行只受TR0/TR1的控制
GATE=1,定时/计数器的运行同时受TR0/TR1和
外中断输入信号(INT0/INT1)的双重控制
只有当INT0/INT1=1 ,且TR0/TR1=1时
T0/T1才能开始运行
运行后,若出现INT0/INT1=0,T0/T1立即停止运行;5.2.4 定时/计数器的应用 ;⒊ 应用举例;⑵ 工作方式2;书中部分习题编成的 Proteus虚拟仿真练习60例目录(仿真文件免费下载)
文档评论(0)