实验报告COURSEPAPER8255控制开关状态显示学院:机电工程与自动化学院学号:学生姓名:打印日期:评分:评语:一、实验目的;(本课程设计是在完成《微机原理与接口技术使用教程》知识后进行的一次综合性训练。通过本课程设计,既可以巩固对所学知识的理解和掌握,又可以培养解决实际问题的本领,也能够提高运用文字图表表达设计思想和对Proteus与Emu8086应用的能力。二、实验要求;(1)功能要求:设定8255的PA口为开关量输入,PB口为开关量输出,要求能随时将PA口的开关状态通过PB口的数码管显示出来,如开关为0000,则数码管显示为0;若开关为1111,则数码管显示为F。(2)具体参数:将8255A的端口A设置为方式0并作为输入口,读取开关量,PB口设置为方式0作为输出口。并设定A、B、C口和控制口的地址为60H、62H、64H、66H。LED为共阴极连接方式。(3)用Proteus画出实现上述功能的8086和8255及LED相关连接的硬件电路,编写相关程序,结合emu8086,完成仿真调试,给出硬件电路图、程序代码和仿真结果图。三、实验说明;利用前期实验建立组态控制组态软件的操作界面和主要功能;混料罐工程或交通灯工程工程组态四、实验步骤;(1)硬件设计8255A的四个端口地址为60H、62H、64H、66H。其二进制码分别为01100000H、01100010H、01100100H、01100110H。则可以判断,8255A的A0与A1端口应该与8086的A1和A2端口对应。8086的A7、A4、A3、A0为0,A6、A5为1时,8255A接受指令。为完成上述操作,可以使用138译码器。8255A的A端口作为输入口,连接四位开关;B端口作为输出口,连接一个共阴极的LED显示管。(2)硬件电路图(3)汇编语言设计assumecs:codecodesegmentstart:MOVDX,066HMOVAL,90HOUTDX,ALAA:MOVBX,OFFSETTABLMOVDX,060HINAL,DXANDAL,0FHXLATMOVDX,062HOUTDX,ALJMPAATABL:DB3FH,06H,5BH,4FHDB66H,6DH,7DH,07HDB7FH,6FH,77H,7CHDB39H,5EH,79H,71Hcodeendsendstart(4)实验结果五、实验心得;通过对proteus及emu8086软件的应用,可以使我将从课堂与书本上学习到的知识,以模拟的方式,制作成成品。在本次课外项目中,我对于8255A的工作方式以及8086如何控制其他元器件输入输出数据有了清晰的认识。通过使用模拟软件,我有了更多的方式去深入了解课本上的知识。