电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

微机原理习题-1VIP免费

微机原理习题-1_第1页
1/17
微机原理习题-1_第2页
2/17
微机原理习题-1_第3页
3/17
微机原理习题-11.设8255A的A口、B口、C口和控制字寄存器的端口地址分别为80H、82H、84H和86H。要求A口工作在方式0输出,B口工作在方式0输入,C口高4位输入,低4位输出,试编写8255A的初始化程序。MOVAL,10001010B;方式控制字OUT86H,AL2.8255A的A口、B口、C口和控制字寄存器的端口地址分别为80H、82H、84H和86H,要求PC4输出高电平,PC5输出低电平,PC6输出一个正脉冲,试写出完成这些功能的指令序列。MOVAL,00001001B;PC4输出高电平OUT86H,ALMOVAL,00001010B;PC5输出低电平OUT86H,ALMOVAL,000001100B;PC6先输出低电平OUT86H,ALMOVAL,00001101B;PC6再输出高电平OUT86H,ALMOVAL,00001100B;PC6再输出低电平,形成一个正脉冲OUT86H,AL3.8255A的口地址为80H~83H,8253的口地址为84H~87H,(1)若A口接8个开关K7~K0,B口接8个指示灯LED7~LED0,当开关合上时相应的指示灯亮,断开时灯灭,要求每隔0.5s检测一次开关状态,并在LED上显示出来,试画出硬件连线图,编写实现这种功能的程序。(2)若把接在端口A上的开关去掉,要求接在端口B上的指示灯轮流熄灭,每只灯熄灭1秒钟,请编程实现这种功能。答:(1)8255A:A口输入,B口输出8253:2MHz/2Hz=1000000通道0工作于方式2,取N0=1000通道1工作于方式0,取N1=999,即得OUT1每0.5秒中断一次。本题用8253定时中断,中断处理时检测开关状态,并点亮相应的LED。假设8259A已初始化,主程序如下:MOVAX,SEGINTR;形成中断矢量表MOVDS,AXMOVDX,OFFSETINTRMOVAL,NMOVAH,25HINT21HMOVAL,10010000B;8255初始化OUT83H,ALMOVAL,00110101B;通道0方式2,BCD计数OUT87H,ALMOVAL,00H;置初值1000OUT84H,ALMOVAL,10HOUT84H,ALMOVAL,01110001B;通道1方式0,BCD计数OUT87H,ALMOVAL,99H;置初值999OUT85H,ALMOVAL,09HOUT85H,ALSTIAGAIN:HLTJMPAGAIN中断服务程序:INTR:PUSHAXSTIINAL,80H;检测开关,合上为0NOTAL;取反OUT81H,AL;点亮相应LED(合上)MOVAL,01110001B;通道1方式0,BCD计数OUT87H,ALMOVAL,99H;置初值999OUT85H,ALMOVAL,09HOUT85H,ALCLIMOVAL,20H;普通EOI命令OUT20H,ALPOPAXIRET2)8255A:B口输出8253:通道0工作于方式2,取N0=2000通道1工作于方式3,取N1=1000,即得OUT1频率为1Hz(周期为1秒)的方波,接到8259A的IRi,边沿触发中断请求。主程序如下:MOVAX,SEGINTR;形成中断矢量表MOVDS,AXMOVDX,OFFSETINTRMOVAL,NMOVAH,25HINT21HMOVAL,10000000B;8255初始化OUT83H,ALMOVAL,00110101B;通道0方式2,BCD计数OUT87H,ALMOVAL,00H;置初值2000OUT84H,ALMOVAL,20HOUT84H,ALMOVAL,01110111B;通道1方式3,BCD计数OUT87H,ALMOVAL,00H;置初值1000OUT85H,ALMOVAL,10HOUT85H,ALMOVAL,0FEH;熄灭LED0OUT81H,ALSTIGOON:HLTJMP中断服务程序如下:INTR:PUSHAXSTIROLAL,1;AL左循环移位1位OUT81H,AL;点亮下一位LEDCLIMOVAL,20HOUT20H,AL;普通EOI结束命令POPAXIRET硬件连接图如下:4.设8255A的口地址为300H~303H,A口接4个开关K3~K0,B口接一个七段LED显示器,用来显示4个开关所拨通的16进制数字0~F,开关都合上时,显示0,都断开时显示F,每隔2秒钟检测一次,试画出硬件连线图,并编写实现这种功能的程序。与上题思路相同8255A:A口方式0输入,B口方式0输出,端口地址300H~303H8253:用于2秒定时,端口地址为304H~307H2MHz/0.5Hz=4000000通道0工作于方式2,取N0=4000通道1工作于方式0,取N1=999,即得OUT1每2秒中断一次。本题用8253定时中断,中断处理时检测开关状态,并点亮相应的LED。假设8259A已初始化,主程序如下:TABLEDB3FH,06H,5BH,4FH,66H,6DH,7DH,07H;七段码表格DB7FH,6FH,77H,7CH,39H,5EH,79H,71HMOVAX,SEGINTR;形成中断矢量表MOVDS,AXMOVDX,OFFSETINTRMOVAL,NMOVAH,25HINT21HMOVAL,10010000B;8255初始化MOVDX,303HOUTDX,ALMOVAL,00110101B;8253初始化,通道0方式2,BCD计数MOVDX,307HOUTDX,ALMOVAL,00H;置初值4000HMOVDX,304HOUTDX,ALMOVAL,40HOUTDX,ALMOVAL,01110001B;通道1方式0,BCD计数MOVDX,307HOUTDX,ALMOVAL,99H;置初值999MOVDX,305HOUTDX,ALMOVAL,09HOUTDX,ALSTIAGAIN:HLTJMPA...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

微机原理习题-1

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部