并口输入输出实验详解.docxVIP

  • 38
  • 0
  • 约2.32千字
  • 约 5页
  • 2021-03-01 发布于天津
  • 举报
电子科技大学中山学院学生实验报告 院别:电子信息学院课程名称:微处理器实验 院别:电子信息学院 课程名称:微处理器实验 班级 无线技术14 姓名 学号 实验名称 并口输入/输出实验 实验时间 2016 年 10 月 18 日 成绩 教师签名 批改时间 报告内容 一、实验目的和任务 1掌握89C51单片机程序的调试与下载方法。 2、掌握89C51单片机并口的工作原理及输入输出控制方法。 二、实验原理简介 80C51单片机包括P0~P3共4个并口,除可作为普通 I/O 口使用外,P0 口还可用作8位数据总线 口和低8位地址口, P2可用作高8位地址口, P3.6、P3.7可用作外部 RAM或 I/O接口的读、写控制引 脚,P3.0~P3.5可用作串口、外部中断、计数器的功能引脚。 ZSC-1实验箱包括4个单片机,其中1#单片机(MCU1和#2单片机(MCU2的型号都是 STC12C5A60S2, 只是封装不同。STC12C5A60S2采用80C51内核,片内资源和性能较标准 80C51单片机增强许多。本课 程的全部实验只用到 MCU1. 图3.3.1为本实验的硬件电路(单片机时钟与复位略) 。P0 口用于控制发光管 L101~L108, 口线输 出0 (低电平)时,对应发光管点亮,口线输出 1 (高电平)时,对应发光管熄灭。 P3 口的4根口线连 接独立按键KX0~KX3由于P3 口内部上拉电阻的作用, 按键松开时,对应口线表现为1状态(高电平), 按键按下时,对应口线表现为 0状态(低电平)。 注意:在做本实验时,须将拨码开关 JUMP2置为接通状态。 三、实验内容和步骤 1、设计程序, 控制发光管 L101~L108以一定的时间间隔轮流点亮。 程序清单: MAIN: MOV A, ;同时点亮 NEXT: MOV P0,A ACALL DELAY ;延时 RR A ;右移 SJMP NEXT DELAY: MOV R2,#10 ;延时子程 DELAY2: MOV R3,#200 DELAY3: MOV R4,#100 DJNZ R4,$ DJNZ R3,DELAY3 DJNZ R2,DELAY2 RET 3个发光管 END 硬件仿真: ?■ ■ ?■ ■ ■ ■皿 ■ ■ 口? 1 事 ■丄#■* 2、设计程序,通过查表操作,控制 L101~L108逐个点亮,再逐个熄灭。 程序清单: MAIN: MOV DPTR,#LEDTBL ; DPTR 指向表首单元 MOV A,#1 NEXT: PUSH ACC ;A中的数据入栈保存 MOVC A,@A+DPTR ;查表 MOV P0,A ACALL DELAY POP ACC ;恢复入栈保存的 A值 INC A CJNE A ,#16,NEXT ;检查是否已到表尾 DELAY: MOV R2,#100 ;延时子程序 DELAY2: MOV R3,#200 DELAY3: MOV R4,#100 DJNZ R4,$ DJNZ R3,DELAY3 DJNZ R2,DELAY2 RET LEDTBL:DB ; LED 控制表 DB DB DB END 硬件仿真: 3、设计一个内存填充与拷贝程序并进行软件模拟调试。 编程要求: 将内部 RAM勺30H至3FH单元初始化为02H。 程序清单: KX0 EQU P3.2 KX1 EQU P3.4 KX2 EQU P3.5 KX3 EQU P3.7 L101 EQU PO.O L102 EQU P0.1 L103 EQU P0.2 L104 EQU P0.3 MAIN: CHKKXO: JB KX0,CHKKX1 ;KXO未按下,则检测KX1 LCALL DELAY ;软件延时10ms左右(按键消抖) JB KX0,CHKKX1 CLR L101 ;KXO未按下,则求反 L101 JNB KX0,$ ;等待KXO松开 SJMP MAIN ;跳转到主程序开头 CHKKX1: JB KX1,CHKKX2 LCALL DELAY JB KX1,CHKKX2 CLR L102 JNB KX1,$ SJMP MAIN CHKKX2: JB KX2,CHKKX3 LCALL DELAY JB KX2,CHKKX3 CLR L103 JNB KX2,$ SJMP MAIN CHKKX3: JB KX3,CHKKX0 LCALL

文档评论(0)

1亿VIP精品文档

相关文档