资源描述:
《单片机接口技术与实验(附原理图及源程序)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、《单片机接口技术与实验》姓名:学号:年级:专业:电子信息科学与技术实验二并行口输入输出实验——循环彩灯控制一、实验功能(1).P1口接8个开关,P0口接8个灯,每个开关对应一个灯,实时读取开关状态,开关闭合时,灯亮。开关断开时,灯灭。二、实验原理图注意:因为P0口作为输出口时必须接上拉电阻,为简化起见,此处接到P2口上三、实验程序org0000hljmpmainorg0100hmain:movp1,#0ffhmovp2,p1ajmpmainend(2)一、实验功能用5个开关K0~K4,控制P0口所接8个灯的循环,各开关的功能要求如下:(1)K1~K2分别选择灯的四种闪动方式;(2)K
2、3用于控制灯的循环方式(顺时针或逆时针);(3)K4用于选择灯的两种循环速度(4)K0用于引发外部中断,在外部中断子程序中,读取通过K1-K4所设定的循环彩灯的工作方式,并按所设定的工作方式控制彩灯运行。二、实验原理图三、实验流程图中断程序把P1.2的状态存入位地址50H把P1.3的状态存入位地址51HP1.0是否为1P1.1是否为1MOVA,#80HP1.1是否为1MOVA,#0C0HMOVA,#0AAHMOVA,#0E0H开始50H是否为1调用延时程序DELAY1调用延时程序DELAY251H是否为1灯循环右移子程序:LOOP1灯循环左移子程序:LOOP2结束MOVP1,#0FF
3、H四、实验程序ORG0000HLJMPMAINORG0003HLJMPINT0PR0ORG0100HMAIN:MOVP1,#0FFHMOVSP,#60HSETBEX0SETBIT0SETBEAMOVC,P1.2MOV50H,CMOVC,P1.3MOV51H,CJBP1.0,NEXT1JNBP1.0,NEXT2NEXT1:JBP1.1,CIRCLE1JNBP1.1,CIRCLE2NEXT2:JBP1.1,CIRCLE3JNBP1.1,CIRCLE4CIRCLE1:MOVA,#80HLJMPSTEP0CIRCLE2:MOVA,#0C0HLJMPSTEP0CIRCLE3:MOVA,#0AA
4、HLJMPSTEP0CIRCLE4:MOVA,#0E0HLJMPSTEP0STEP0:MOVP2,AJB50H,S1JNB50H,S2STEP1:JB51H,LOOP1JNB51H,LOOP2S1:LCALLDELAY1LJMPSTEP1S2:LCALLDELAY2LJMPSTEP1DELAY1:MOVR7,#100D1:MOVR6,#100D2:MOVR5,#10D3:DJNZR5,D3DJNZR6,D2DJNZR7,D1RETDELAY2:MOVR7,#200D4:MOVR6,#100D5:MOVR5,#10D6:DJNZR5,D6DJNZR6,D5DJNZR7,D4RETLOO
5、P1:RLALJMPSTEP0LOOP2:RRALJMPSTEP0ORG0400HINT0PR0:MOVC,P1.2MOV50H,CMOVC,P1.3MOV51H,CJBP1.0,WORK1JNBP1.1,WORK2WORK1:JBP1.1,L1JNBP1.1,L2WORK2:JBP1.1,L3JNBP1.1,L4L1:MOVA,#80HLJMPPASSL2:MOVA,#0C0HLJMPPASSL3:MOVA,#0AAHLJMPPASSL4:MOVA,#0E0HLJMPPASSPASS:RETIEND实验三七段LED数码管控制实验一、实验功能1.实验采用4位一体的数码管,用P1口通过
6、驱动芯片控制段码输出信号线,P0口通过驱动芯片控制位选线:(1)当开关K0接低电平时,第一位依次显示0~F,然后第二位、第三位、第四位,再循环回第一位。(2)当开关K0接高电平时,四位动态显示“HELP”二、实验原理图三、实验流程图开始P1.0是否为1调用延时子程序delay1按位循环显示0-F调用位显示子程序LOOP1左移一位P2判断是否显示一遍显示HELP子程序位显示子程序LOOP1P1.0是否为1调用延时子程序delay1依次查表,付给P0显示数字判断数是否显示一遍位显示子程序HELPP1.0是否为0调用延时子程序delay1返回显示HELP四、实验程序org0000hljmp
7、mainorg0100hmain:movp2,#0ffhsetbp1.0movdptr,#tabmovr0,#0mova,#00hloop1:movr0,#00hjnbp1.0,hsjmploop2h:movp2,#0fehlcalllightmovp2,#0fdhlcalllightmovp2,#0fbhlcalllightmovp2,#11101111blcalllightsjmploop1light:jbp1.0,loop2mova,r0movca,