- 1、本文档共49页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
实验四LED灯和数码显示器的中断控制
一、实验目的:
掌握外部中断的工作原理,熟悉中断编程及Keil平台软件调试方法。
二、实验原理:
实验电路如图A.53所示。K1和K2分别接于端口P3.2和P3.3,按压
后的电平负跳变可分别产生INT0中断请求和INT1中断请求。INT0中
断响应后取端口P0.4电平,使指示灯D1的状态反转,INT1中断响应
后使计数值增1并送给数码管LED显示。
电路原理图及中断原理分析:按键K1接外部中断0,K2接外部中断
1。P0.4接指示灯D1,P2口接数码管,每按一次K1键电平产生负跳
变,INT0中断响应后取端口P0.4电平,D1的状态反转;每按一次K2
键产生负跳变,INT1中断响应使计数值增1并使数码管显示该数值,
变化范围为0~F。
三、实验步骤:
(1)、按照表A.5所示将元件添加到ProteusISIS对象选择列表中,
并仿照图A.53完成电路原理图绘制。
(2)、在Keil中编写C51程序,并使之编译通过。
(3)、在Keil中加载编译后的可执行文件,并控制Proteus中的程
序仿真运行。
CategoryReferenceValue
MicroprocessorICsU180C51
OptoelectromicsD1LED-GREEN
SwitchesRelaysK1~K2BUTTON
ResistorsR1~R2/100RES
OptoelectronicsLED7SEG-COM-CAT-GRN
四、实验要求:
(1)、主函数在程序初始化完成后进入原地循环状态,等待中断
请求。
(2)、两路外部中断均设为下降沿触发方式,且为自然优先级。
(3)、计数变量初值为0,变化范围为0~F。
(4)、实验报告内容包括:电路原理图及分析、中断原理分析,
C51源程序(含注释语句),仿真运行截屏图,实验小结。
五、C51源程序如下:
#includereg51.h
charled_mod[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,0x58,0x5e,0x79,0x71};
charflag;
sbitp0_4=P0^4;
voiddelay(unsignedinttime){
unsignedintj=0;
for(;time0;time--)
for(j=0;j125;j++);
}
int0_key()interrupt0{
p0_4=!p0_4;
}
int1_key()interrupt2{
delay(200);
P2=led_mod[flag%16];
delay(200);
flag++;
}
voidmain(void){
flag=0;
IT0=1;
EX0=1;
EX1=1;
EA=1;
while(1);
}
六、试验结果:
(1)开始运行时如下图:
(2)、按键后运行图如下:
实验结果分析:由运行结果可以看出,按键K1产生外部中断0
控制D1的状态,使指示灯D1由亮到暗一次
文档评论(0)