资源描述:
《四 8255A并行口实验-----交通灯控制.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验四8255A并行口实验-----交通灯控制一、8255A并行口实验(二)目的掌握通过8255A并行口传输数据的方法,以控制发光二极管的亮与灭。二、8255A并行口实验(二)内容1、实验原理实验原理图如图所示,PB4~PB7和PC0~PC7分别与发光二极管电路L1~L12相连,本实验为模拟交通灯实验。交通灯的亮灭规律如下:设有一个十字路口,1、3为南北方向,2、4为东西方向,初始为四个路口的红灯全亮,之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车;延时一段时间后,1、3路口的绿灯熄灭,而1、3路口的黄灯开始闪烁,闪烁若干次以后,1、3路口红灯亮,而同时
2、2、4路口的绿灯亮,2、4路口方向通车;延时一段时间后,2、4路口的绿灯熄灭,而黄灯开始闪烁,闪烁若干次以后,再切换到1、3路口方向,之后重复上述过程。8255A的PB4~PB7对应黄灯,PC0~PC3对应红灯,PC4~PC7对应绿灯。8255A工作于模式0,并置为输出。由于各发光二极管为共阳极,使其点亮应使8255A相应端口清0。2、实验线路连接(1)8255CS插孔连译码输出070H-07FH插孔。(2)L1-PC4L4-PC5L7-PC6L10-PC7L2-PB4L5-PB5L8-PB6L11-PB7L3-PC0L6-PC1L9-PC2L12-PC33、实验步骤(1
3、)按图5-9连好实验线路(2)运行实验程序在系统显示"DVCC-86H"状态下,按任意键,系统显示命令提示符"-"。按GO键,显示"1000XX"输入F000:B1B0按EXEC键,在DVCC-8086H上显示"8255-2"。同时L1~L12发光二极管模拟交通灯显示。三、实验程序CODESEGMENTASSUMECS:CODEIOCONPTEQU0073HIOAPTEQU0070HIOBPTEQU0071HIOCPTEQU0072HIOBDATAEQU0500HCONTPORTEQU00DFHDATAPORTEQU00DEHDATA1EQU0640HSTART:JMPI
4、OLEDIOLED:CALLFORMATCALLLEDDISPMOVAX,0HMOVDS,AXMOVAL,82HMOVDX,IOCONPTOUTDX,ALMOVDX,IOBPTINAL,DXMOVBYTEPTRDS:[0501H],ALMOVDX,IOCONPTMOVAL,80HOUTDX,ALMOVDX,IOBPTMOVAL,DS:[0501H]ORAL,0F0HOUTDX,ALMOVDX,IOCPTMOVAL,0F0HOUTDX,ALCALLDELAY1IOLED0:MOVAL,10100101BMOVDX,IOCPTOUTDX,ALCALLDELAY1CALLDEL
5、AY1ORAL,0F0HOUTDX,ALMOVCX,8HIOLED1:MOVDX,IOBPTMOVAL,DS:[0501H]ANDAL,10101111BOUTDX,ALCALLDELAY2ORAL,01010000BOUTDX,ALCALLDELAY2LOOPIOLED1MOVDX,IOCPTMOVAL,0F0HOUTDX,ALCALLDELAY2MOVAL,01011010BOUTDX,ALCALLDELAY1CALLDELAY1ORAL,0F0HOUTDX,ALMOVCX,8HIOLED2:MOVDX,IOBPTMOVAL,DS:[0501H]ANDAL,01011
6、111BOUTDX,ALCALLDELAY2ORAL,10100000BOUTDX,ALCALLDELAY2LOOPIOLED2MOVDX,IOCPTMOVAL,0F0HOUTDX,ALCALLDELAY2JMPIOLED0DELAY1:PUSHAXPUSHCXMOVCX,0030HDELY2:CALLDELAY2LOOPDELY2POPCXPOPAXRETDELAY2:PUSHCXMOVCX,8000HDELA1:LOOPDELA1POPCXRETLEDDISP:MOVAL,90HMOVDX,CONTPORTOUTDX,ALMOVBYTEPTRDS:[0600H],00
7、LED1:CMPBYTEPTRDS:[0600H],07HJALED2MOVBL,DS:[0600H]MOVBH,0HMOVAL,CS:[BX+DATA1]MOVDX,DATAPORTOUTDX,ALADDBYTEPTRDS:[0600H],01HJNZLED1LED2:RETFORMAT:MOVBX,0MOVWORDPTRDS:[BX+0640H],405BHADDBX,2MOVWORDPTRDS:[BX+0640H],4040HADDBX,2MOVWORDPTRDS:[BX+0640H],6D6DHADDBX,2MOVWO