单片机P1口输入输出实验
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机I/O口输入输出实验 (或单片机数字量输入输出实验)
单片机P1口输入输出实验
实验重点:硬件设计、程序设计、现象分析 实验难点:实际应用
指导教师:刘美俊 李世军
单片机P1口输入输出实验
单片机端口是集数据输入缓冲、数据输出驱动 及锁存等多项功能一体I/O的电路,特别是把握它 准双向、多功能的特点。单片机4个并行端口是P0、 P1、P2、P3。本实验只讨论P1端口。
;子程序返回 ;程序结束
单片机P1口输入输出实验
单片机P1口输入输出实验
3、实验设备与仪器 单片机应用与仿真开发实验台,PC机,
E6000/L仿真器+POD-51仿真头、Wave软硬 件仿真软件。
单片机应用与仿真开发实验台
图1 单片机应用与仿真开 发实验台
单片机P1口输入输出实验
此实验就是一个基于单片机最小系统的系 统设计实验,是单片机应用系统中一个比较简单而 直观的控制系统。它包括了单片机控制系统硬件线 路及控制软件的设计,是一个完整的小型控制系统。 对该系统外围控制线路进行适当的修改,可直接用 于设计街景彩灯(应用)。
1、实验目的
通过实验了解P1口作为输入输出方式使用 时,CPU对P1口操作方式。
单片机P1口输入输出实验
2、实验要求(1)、2)为必做,3)为选做)
1)在P1.5端口上接一个发光二极管LED,编写程序,使LED 不停地一亮一灭,一亮一灭的时间间隔为0.2s(其输出端 为低电平时发光二极管点亮) 。
单片机4个并行端口P0、P1、P2、P3有着不同 的结构特点和功用。
单片机P1口输入输出实验
4、硬件设计
89C5 1 C1 C2
图2 P1口某一I/O口线反转
单片机P1口输入输出实验
4、硬件设计
C1 C2
89C5 图12 P1口输出
单片机P1口输入输出实验
LED循环轮流点亮设计电路如图2所示。将51单片 机第40脚Vcc接电源+5V,第20脚Vss接地,为单片机工作 提供能源。
本实验只需将8个LED与P1口相连。单片机的P0、P1、P 2、P3端口都可以用来控制LED。(反过去再看设备)
单片机P1口输入输出实验
5、程序设计
1)工作原理 P1口定义为带有上拉电阻8位准双向I/O口,功能单一,
每一位可独立定义为输入输出,CPU对P1口操作可以是字节操 作,也可以是位操作。P1作为输出口使用时,它的内部电路 已经提供了一个推拉电流负载,外接了一个上拉电阻,外电 路无需再接上拉电阻,与一般的双向口使用方法相同;作为 输入口使用时,应先向其锁存器写入“1”,使输出驱动电路 的FET截止。若不先对它置“1”,读入的数据是不准确的。
单片机P1口输入输出实验
2)程序流程如图4所示。
图4 P1口输出程序
单片机P1口输入输出实验
3)参考程序(单片机P1端口接8只LED,每次点亮一只,向
左移动点亮,重复循环。) ORG 0000H
START: LOOP:
MOV R0, #8
;设左移8次
MOV A, #11111110B ;存入开始点亮灯位置
单片机P1口输入输出实验
图3 P1端口的一位
单片机P1口输入输出实验
5、程序设计
P1口输出控制程序的设计主要包括控制输出程序设计与延时程序设计。 (1)输出控制:当P1.5端口输出低电平,即P1.5=0,这时LED亮,反之, LED灭,可以使用P1.5=0指令使P1.5端口输出低电平,同样利用指令使P1. 5端口输出高电平。 (2)延时程序:单片机指令的执行时间是很短的,数量大多是微秒级, 因此,我们要求的闪烁时间间隔为0.2s,相对于微秒来说,相差太大, 因此在执行某一指令时,插入延时程,来解决这一问题。 开关状态检测过程: 0 单片机对开关状态的检测相对于单片机来说,是从单片机的端口输 入信号,而输入的信号只有高电平和低电平两种,要能正确输入信号, 先使P1端口P1.0-P1.3置1。可轮流检测每个开关状态,根据每个开关的 状态让相应的二极管指示,也可以一次性检测四路开关状态,然后让其 指示。
MOV P1, A
;传送到P1并输出
LCAHale Waihona Puke BaiduL DELAY
;调延时子程序
RL A
;左移一位
SJMP LOOP DELAY: MOV R5,#50 DLY1: MOV R6,#100 DLY2: MOV R7,#100
DJNZ R7,$
;重新设定显示值 ;延时子程序
DJNZ R6,DLY2 DJNZ R5,DLY1 RET END
2)P1.0-P1.3作输入口接拨动开关K1-K4;P1.4-P1.7作 输出口,接发光二极管LED1-LED4,读取开关状态,将此 状态在LED1-LED4上显示出来。
单片机P1口输入输出实验
2、实验要求(1)、2)为必做,3)为选做)
3) P1口作输出口,接8只发光二极管LED1-LED8(其输出 端为低电平时发光二极管点亮),编写程序。 状态1:控制系统通电或复位后,8个LED发光二极管依次从 左到右开始逐个点亮; 状态2:8个LED发光二极管全亮后,从右向左LED发光二极 管再逐个熄灭; 状态3:8个LED发光二极管全灭后,从左右两边开始同时点 亮LED发光二极管,全亮后,8个LED发光二极管再明暗一起 闪烁2次 ?
将第19脚XTAL1与18脚XTAL2分别接外部晶体两个引 脚,由石英晶体组成振荡器,保证单片机内部各部分有 序地工作。对外部C1、C2的取值虽然没有严格的要求, 但电容的大小会影响到振荡器频率的高低、振荡器的稳 定性、起振的快速性。C1、C2通常取值C1=C2=30PF左右。 8051的晶振最高振荡频率为12M,AT89C51的外部晶振最 高频率可到24M。
单片机P1口输入输出实验
单片机可靠的复位是保证单片机正常运行的关键因素。 因此,在设计复位电路时,通常要使RST引脚保持10ms以上 的高电平。当RST从高电平变为低电平之后,单片机就从00 00H地址开始执行程序。本电路是上电自动复位。
将8个LED接在单片机P1端口的P1.0-P1.7引脚上,注意 LED有长短两个引脚,分别表示正负极,其中较短的负极接 单片机,较长的为正极,通过限流电阻R与Vcc相连。
单片机P1口输入输出实验
实验重点:硬件设计、程序设计、现象分析 实验难点:实际应用
指导教师:刘美俊 李世军
单片机P1口输入输出实验
单片机端口是集数据输入缓冲、数据输出驱动 及锁存等多项功能一体I/O的电路,特别是把握它 准双向、多功能的特点。单片机4个并行端口是P0、 P1、P2、P3。本实验只讨论P1端口。
;子程序返回 ;程序结束
单片机P1口输入输出实验
单片机P1口输入输出实验
3、实验设备与仪器 单片机应用与仿真开发实验台,PC机,
E6000/L仿真器+POD-51仿真头、Wave软硬 件仿真软件。
单片机应用与仿真开发实验台
图1 单片机应用与仿真开 发实验台
单片机P1口输入输出实验
此实验就是一个基于单片机最小系统的系 统设计实验,是单片机应用系统中一个比较简单而 直观的控制系统。它包括了单片机控制系统硬件线 路及控制软件的设计,是一个完整的小型控制系统。 对该系统外围控制线路进行适当的修改,可直接用 于设计街景彩灯(应用)。
1、实验目的
通过实验了解P1口作为输入输出方式使用 时,CPU对P1口操作方式。
单片机P1口输入输出实验
2、实验要求(1)、2)为必做,3)为选做)
1)在P1.5端口上接一个发光二极管LED,编写程序,使LED 不停地一亮一灭,一亮一灭的时间间隔为0.2s(其输出端 为低电平时发光二极管点亮) 。
单片机4个并行端口P0、P1、P2、P3有着不同 的结构特点和功用。
单片机P1口输入输出实验
4、硬件设计
89C5 1 C1 C2
图2 P1口某一I/O口线反转
单片机P1口输入输出实验
4、硬件设计
C1 C2
89C5 图12 P1口输出
单片机P1口输入输出实验
LED循环轮流点亮设计电路如图2所示。将51单片 机第40脚Vcc接电源+5V,第20脚Vss接地,为单片机工作 提供能源。
本实验只需将8个LED与P1口相连。单片机的P0、P1、P 2、P3端口都可以用来控制LED。(反过去再看设备)
单片机P1口输入输出实验
5、程序设计
1)工作原理 P1口定义为带有上拉电阻8位准双向I/O口,功能单一,
每一位可独立定义为输入输出,CPU对P1口操作可以是字节操 作,也可以是位操作。P1作为输出口使用时,它的内部电路 已经提供了一个推拉电流负载,外接了一个上拉电阻,外电 路无需再接上拉电阻,与一般的双向口使用方法相同;作为 输入口使用时,应先向其锁存器写入“1”,使输出驱动电路 的FET截止。若不先对它置“1”,读入的数据是不准确的。
单片机P1口输入输出实验
2)程序流程如图4所示。
图4 P1口输出程序
单片机P1口输入输出实验
3)参考程序(单片机P1端口接8只LED,每次点亮一只,向
左移动点亮,重复循环。) ORG 0000H
START: LOOP:
MOV R0, #8
;设左移8次
MOV A, #11111110B ;存入开始点亮灯位置
单片机P1口输入输出实验
图3 P1端口的一位
单片机P1口输入输出实验
5、程序设计
P1口输出控制程序的设计主要包括控制输出程序设计与延时程序设计。 (1)输出控制:当P1.5端口输出低电平,即P1.5=0,这时LED亮,反之, LED灭,可以使用P1.5=0指令使P1.5端口输出低电平,同样利用指令使P1. 5端口输出高电平。 (2)延时程序:单片机指令的执行时间是很短的,数量大多是微秒级, 因此,我们要求的闪烁时间间隔为0.2s,相对于微秒来说,相差太大, 因此在执行某一指令时,插入延时程,来解决这一问题。 开关状态检测过程: 0 单片机对开关状态的检测相对于单片机来说,是从单片机的端口输 入信号,而输入的信号只有高电平和低电平两种,要能正确输入信号, 先使P1端口P1.0-P1.3置1。可轮流检测每个开关状态,根据每个开关的 状态让相应的二极管指示,也可以一次性检测四路开关状态,然后让其 指示。
MOV P1, A
;传送到P1并输出
LCAHale Waihona Puke BaiduL DELAY
;调延时子程序
RL A
;左移一位
SJMP LOOP DELAY: MOV R5,#50 DLY1: MOV R6,#100 DLY2: MOV R7,#100
DJNZ R7,$
;重新设定显示值 ;延时子程序
DJNZ R6,DLY2 DJNZ R5,DLY1 RET END
2)P1.0-P1.3作输入口接拨动开关K1-K4;P1.4-P1.7作 输出口,接发光二极管LED1-LED4,读取开关状态,将此 状态在LED1-LED4上显示出来。
单片机P1口输入输出实验
2、实验要求(1)、2)为必做,3)为选做)
3) P1口作输出口,接8只发光二极管LED1-LED8(其输出 端为低电平时发光二极管点亮),编写程序。 状态1:控制系统通电或复位后,8个LED发光二极管依次从 左到右开始逐个点亮; 状态2:8个LED发光二极管全亮后,从右向左LED发光二极 管再逐个熄灭; 状态3:8个LED发光二极管全灭后,从左右两边开始同时点 亮LED发光二极管,全亮后,8个LED发光二极管再明暗一起 闪烁2次 ?
将第19脚XTAL1与18脚XTAL2分别接外部晶体两个引 脚,由石英晶体组成振荡器,保证单片机内部各部分有 序地工作。对外部C1、C2的取值虽然没有严格的要求, 但电容的大小会影响到振荡器频率的高低、振荡器的稳 定性、起振的快速性。C1、C2通常取值C1=C2=30PF左右。 8051的晶振最高振荡频率为12M,AT89C51的外部晶振最 高频率可到24M。
单片机P1口输入输出实验
单片机可靠的复位是保证单片机正常运行的关键因素。 因此,在设计复位电路时,通常要使RST引脚保持10ms以上 的高电平。当RST从高电平变为低电平之后,单片机就从00 00H地址开始执行程序。本电路是上电自动复位。
将8个LED接在单片机P1端口的P1.0-P1.7引脚上,注意 LED有长短两个引脚,分别表示正负极,其中较短的负极接 单片机,较长的为正极,通过限流电阻R与Vcc相连。