单片机接口技术与实验(附原理图及源程序).docVIP

  • 11
  • 0
  • 约1.14万字
  • 约 25页
  • 2022-02-14 发布于湖南
  • 举报

单片机接口技术与实验(附原理图及源程序).doc

单片机接口技术与实验(附原理图及源程序) 单片机接口技术与实验(附原理图及源程序) PAGEPAGE25 单片机接口技术与实验(附原理图及源程序) 《单片机接口技术与实验》 姓名: 学号: 年级: 专业:电子信息科学与技术 实验二 并行口输入输出实验——循环彩灯控制 一、实验功能 (1).P1 口接8 个开关,P0 口接8 个灯,每个开关对应一个灯,实时读取开关状态,开关闭合时,灯亮。开关断开时,灯灭。 二、实验原理图 注意:因为P0口作为输出口时必须接上拉电阻,为简化起见,此处接到P2口上 三、实验程序 org 0000h ljmp main org 0100h main: mov p1,#0ffh mov p2,p1 ajmp main end (2) 一、实验功能 用5 个开关K0~K4,控制P0 口所接8 个灯的循环,各开关的功能要求如下: (1)K1~K2 分别选择灯的四种闪动方式; (2)K3 用于控制灯的循环方式(顺时针或逆时针); (3)K4 用于选择灯的两种循环速度 (4)K0 用于引发外部中断,在外部中断子程序中,读取通过K1-K4 所设定的循环 彩灯的工作方式,并按所设定的工作方式控制彩灯运行。 二、实验原理图 三、实验流程图 中断程序把的状态存入位地址50H 中断程序 把的状态存入位地址50H 把的状态存入位地址51H 是否为1 是否为1 MOV A,#80H 是否为1 MOV A,#0C0H MOV A,#0AAH MOV A,#0E0H 开始 50H是否为1 调用延时程序DELAY1 调用延时程序DELAY2 51H是否为1 灯循环右移子程序:LOOP1 灯循环左移子程序:LOOP2 结束 MOV P1,#0FFH 四、实验程序 ORG 0000H LJMP MAIN ORG 0003H LJMP INT0PR0 ORG 0100H MAIN: MOV P1,#0FFH MOV SP,#60H SETB EX0 SETB IT0 SETB EA MOV C, MOV 50H,C MOV C, MOV 51H,C JB ,NEXT1 JNB ,NEXT2 NEXT1: JB ,CIRCLE1 JNB ,CIRCLE2 NEXT2: JB ,CIRCLE3 JNB ,CIRCLE4 CIRCLE1: MOV A,#80H LJMP STEP0 CIRCLE2: MOV A,#0C0H LJMP STEP0 CIRCLE3: MOV A,#0AAH LJMP STEP0 CIRCLE4: MOV A,#0E0H LJMP STEP0 STEP0: MOV P2,A JB 50H,S1 JNB 50H,S2 STEP1: JB 51H,LOOP1 JNB 51H,LOOP2 S1: LCALL DELAY1 LJMP STEP1 S2: LCALL DELAY2 LJMP STEP1 DELAY1: MOV R7,#100 D1: MOV R6,#100 D2: MOV R5,#10 D3: DJNZ R5,D3 DJNZ R6,D2 DJNZ R7,D1 RET DELAY2: MOV R7,#200 D4: MOV R6,#100 D5: MOV R5,#10 D6: DJNZ R5,D6 DJNZ R6,D5 DJNZ R7,D4 RET LOOP1: RL A LJMP STEP0 LOOP2: RR A LJMP STEP0 ORG 0400H INT0PR0: MOV C, MOV 50H,C MOV C, MOV 51H,C JB ,WORK1 JNB ,WORK2 WORK1: JB ,L1 JN

文档评论(0)

1亿VIP精品文档

相关文档