单片机P1端口的应用
《单片机原理及应用》第5章 P0~P3口应用基础
3、矩阵键盘:
5.4 实验与设计
• 实验1 闸刀型开关输入/8段LED静态显示输出
5.4 实验与设计
• 设计1:LED模拟交通
• 6个灯—南北:黄、红、绿
•
东西:黄、红、绿
• (红、绿是10秒,黄闪烁2秒)
• 2个应急开关:南北绿或东西绿
• 画出硬件设计,编出模拟程序。
实验2 并行接口键盘/LED指示灯输出
同,每个显示缓冲器对应着一位显示器。
(3)查表并操作相应的显示器
• MOV • MOV • MOVC
A,#data DPTR,#DSPTAB A,@A+DPTR
• (4)显示子程序的调用
3、静态显示示例
• 【例5-4】利用51单片机的并行口作为静态显示的控制 口的示例
请修改:
(1)显示“12”; (2)轮流显示“12”、“--”、“AB”; (3)计数器:从00开始,1S加1。
设计1 计时秒表的设计
• (1)两位LED显示 • 可以显示00~99秒; • (2)两个按键 • 分别为启动/停止键、清零键。 • 要求:设计硬件电路,编写出软件程序(延时由软件
形成)。
设计2 模拟交通信号灯控制装置的设计
• (1)6个发光二极管模拟交通灯 • 南北:黄、红、绿 ;东西:黄、红、绿。 • (2)2个应急开关 • 南北绿东西红或东西绿南北红。 • 要求:设计硬件模拟电路,编写软件程序。
• 单片机原理及应用(第4版)
• 姜志海 王蕾 姜沛勋 编著
• 电子工业出版社
第5章 P0~P3口应用基础
• 片内并行I/O口的应用。 • 5.1 P0~P3口概述 • 5.2 输出操作 • 5.3 输入操作 • 5.4 实验与设计
此程序是用单片机的p1口接八个led灯作跑马灯试验
拆字程序Org 0000hMov A , 2000HAdd A ,#F0HMOV 2001H ,AMOV A ,2000HADD A , #0FHMOV 2002H , AMOV A , 2001HADD A , 2002HEND拆分BCD 码?***************************************************************************;此程序是用单片机的p1口接八个led灯作跑马灯试验,八个led依次亮了又熄灭,形成漂亮;的跑马灯。
本人已经试验成功。
;单片机教程网 原创;该8路单片机跑马灯程序代码简单,电路也容易搭建,只需把led接在p1口上就可以了,希望大家能试验成功顺利的完成跑马灯报告;***************************************************************************org 0000hloop0:cjne r0 ,#01h,rel,loop0 ;判断开关打开情况ajmp start;跳转到程序开始org 0030h;定义起始汇编地址start:mov a,#0ffh ;clr c ;mov r2,#08h ;循环八次。
loop: rlc a ;带进位左移。
mov p1,a ;此时led灯开始有反映了。
call delay ;延时djnz r2,loop ;循环(djnz条件判断)mov r2,#07h ;loop1: rrc a ;带进位右移mov p1,a ;此时led灯开始有反映了。
call delay ;djnz r2,loop1 ;反复循环jmp start ;回到程序的开头delay: mov r3,#20 ;延时子程序d1: mov r4,#20d2: mov r5,#248djnz r5,$djnz r4,d2```````````````````````````````````````````````---------3路单片机跑马灯程序---------------------------------------ORG 0000HLJMP MAINORG 030HMAIN: MOV P1,#0DBH ;化为2进制为11011011--0状态时led灯亮ACALL DELayMOV P1,#06DH ;化为2进制为01101101ACALL DELay ;MOV P1,#0B6H ;化为2进制为10110110ACALL DELayAJMP MAINdelay: mov r7,#255d1: mov r6,#255d2: djnz r6,d2djnz r7,d1retend。
为什么单片机的IO口需要驱动?
为什么单片机的I/O口需要驱动呢?这个问题需要从I/O口的电气特性上进行解释。
首先,给出单片机典型的I/O口,即P1口电气结构图,如图所示。
P1口通常是作为通用I/O口使用,不需要多路转换电路MUX。
其输出级电路内部有上拉电阻,与场效应管共同组成输出驱动电路。
因此,P1口作为输出时,不需要再外接上拉电阻,而当P1口作为输入口使用时,仍然需要先向锁存器写“1”,截止场效应管。
内部上拉电阻阻值很大,经过测量大致在330KΩ左右,而内部电源Vcc仅仅+5V,这样以P1.X高电平驱动发光二极管为例,场效应管截止,相当于Vcc通过330KΩ的电阻向二极管提供电流,5/330*10-3=0.015mA,而二极管的点亮电流为5mA至10mA,这就说明单片机的端口只是驱动TTL电平,不提供或提供很小的驱动电流,所以在带负载时,单片机应当在I/O口加上驱动芯片。
控制P1口的8只LED灯每0.5秒闪亮一次
单片机课程设计论文题目:控制P1口的8只LED灯每0.5秒闪亮一次系部电子信息工程学院专业通信工程学号姓名指导教师程亮亮2015年6月25日摘要现当今,单片机的应用无处不在。
利用单片机控制灯具的实例也不胜枚举,可控制灯具的芯片也相当之多,而利用单片机控制灯具,达到人们预想效果的方法最为广泛。
它有功能多、价格优、外部电路简单的特点,深受单片机爱好者及灯具控制制造商的青昧,用80C51 单片机及少数外部电路控制LED灯光,使LED灯产生明暗效果,并在灯光达到最亮与最暗时伴随响亮的告警音。
通过硬件电路的制作以及软件程序的编制,使灯光的亮度与告警音配合得当。
LED又称为发光二极管,是一种新型光源,具有高效节能、绿色环保、使用寿命长等其他光源无法比拟的优点。
作为绿色照明光源产品,国家绿色照明推广使用的产品,代表着未来照明技术的发展方向。
本文介绍了以STC89C52为控制核心,利用PWM调光技术,通过调整PWM的周期、PWM的占空比从而控制电流,进而达到对LED进行光度亮暗的控制调节的效果,实现对LED灯的PWM调光控制。
关键词:单片机;LED灯;软件程序AbstractNowadays, the application of single chip microcomputer. SCM is used to control the lamps and lanterns of examples are numerous, control the lamps and lanterns of chip is quite much, and using single chip computer control lamps and lanterns, achieve expected effect of the method is the most widely used. It has multi functions, excellent prices, the characteristics of the external circuit is simple, by the Qing Mei single-chip lovers and lamp control manufacturers, with 80C51 microcontroller and a few external circuit to control the LED light, LED lamp has the effect of light and shade, and the light to the brightest and darkest with loud alarm sound. Through the production of the hardware circuit and software program, the brightness of the lighting and sound alarm.LED is also known as light-emitting diode, is a new type of light source, with high efficiency, energy saving, environmental protection, long service life and other light source can not match the advantages. As a green light source products, national green lighting to promote the use of products, representing the development direction of future lighting technology. STC89C52 as control core, using PWM dimming technology, by adjusting the PWM cycle, PWM accounted for empty than to control electric current, thus achieving the photometric light and dark control and regulation of the effect of the LED, LED lamp dimming with PWM control is introduced in this paper.Key words: single chip microcomputer; LED; software program目录摘要 (Ⅱ)Abstract (Ⅲ)目录 (Ⅳ)前言 (1)1:制P1口8只LED灯每0.5秒闪亮一次原理图 (2)1.1原理图 (2)1.2原理图器件 (2)1.3原理图参数设置说明 (3)1.4 PCB板图 (4)2:制P1口8只LED灯每0.5秒闪亮一次程序 (5)2.1 程序 (5)2.2 程序原理详细介绍 (5)3:件流程图 (7)3.1流程图的优点 (7)3.2流程图采用的符号 (7)3.3软件流程图制作软件 (7)3.4流程图 (7)4:软件仿真 (9)4.1 Proteus仿真原理图 (9)参考文献 (11)前言:单片机技术飞速发展,单片机的应用已经渗透到了国民经济的各个领域,处处影响着人们的生活,它的出现给现代工业测控领域带来了一次新的技术革命。
单片机p1口原理
单片机p1口原理
P1口是单片机上的一个I/O口,用于与外部设备进行数据交换。
P1口是一个8位的双向口,既可以作为输入口接收外部数据,也可以作为输出口发送数据给外部设备。
P1口的输出功能是通过将数据写入P1口的相应位来实现的。
P1口的每一位都可以独立设置为高电平(1)或低电平(0)输出。
当某一位设置为高电平时,在P1口上相应的引脚上会产生高电平信号;当某一位设置为低电平时,则会产生低电平信号。
P1口的输入功能则是通过读取P1口的相应位上的电平来实现的。
当外部设备向P1口的某一位输入高电平时,读取该位的状态会得到高电平(1);当外部设备输入低电平时,读取该位的状态会得到低电平(0)。
需要注意的是,P1口的输入和输出是通过P1口的特定引脚来实现的,需要根据具体的单片机型号以及外部设备的连接方式来确定。
在编程中,我们可以通过设置P1口相应的寄存器来控制其输入输出的功能。
总而言之,P1口是单片机上的一个8位双向口,可以通过设置相应位的电平来进行数据输出,并可以通过读取相应位的电平来进行数据输入。
p1口控制转弯灯模板
题目:单片机p1口控制转弯灯实验院系电子信息工程学院专业光电信息工程学号1208451063姓名胡章志2015年6 月15日单片机p1口控制转弯灯实验摘要1)摘要正文本设计基于Protuse自动设计能力、高速有效的编辑功能、简捷方便的设计过程管理PDM,并且可以完整地实现单片机的仿真,从单片机概念设计到生成物理生产数据的全过程,以及这中间的所有分析、仿真和验证功能详细阐述了电路原理图的绘制、实现功能。
本设计还基于keil软件的使用编写程序,生成可被protuse软件识别的.hex文件,实现自己设计想要的功能。
以及在自学过程和制作过程中所遇到的种种问题。
并且给了相应的解决方法。
2)关键词:Protuse软件; keil软件;仿真;程序;单片机p1口控制转弯灯实验目录1、单片机 (1)1.1、单片机介绍 (1)1.2、单片机分类 (1)1.3、单片机应用: (1)1.4、AT8951系列优点: (2)1.7单片机类型 (3)1.8、中国主要应用51单片机的总类 (4)2、Proteus软件 (5)2.2、独有特点 (5)2.3功能模块 (5)2.5、丰富资源 (7)3、Keil (8)3.1、系统概述 (8)3.2、 Keil C51单片机软件开发系统的整体结构 (9)4、本组设计 (10)4.1、以下是本人利用protuse软件的绘图 (10)总结 (11)参考文献 (12)附录 (13)附录A (13)附录B (13)单片机p1口控制转弯灯实验1、单片机1.1、单片机介绍单片机在一块半导体材料上集成了CPU、存储器、I/O接口等各种功能部件,具有体积小、功耗低、价格便宜、功能强、可靠性好和使用方便灵活的特点,使单片机在工业控制、数据采集、智能化仪表、办公自动化以及家用电器方等各个领域中得到了越来越广泛的应用。
将单片机技术与测量控制技术相结合,可以使工业自动控制变得更方便、控制效果更佳。
在机电一体化方面,单片机也发挥了它的特殊作用,使许多传统产业发生了巨大的变化,使许多工业产品体积缩小,能耗降低,功能增加,操作方便。
对于51单片机P1口驱动能力的理解
对于51单片机P1口驱动能力的理解在51单片机系列中,现在生产厂家很多,兼容型号也很多。
不同厂家生产的单片机P1口的驱动能力是不同的。
下面仅举最常用的3种单片机为例,谈谈驱动能力。
先说说LS型TTL负载。
LS型TTL负载是指单片机端口所接负载是74LS系列的数字芯片。
以TI公司的74LS00芯片为例,其输入端接高电平时,输入电流为20μA,输入端接低电平时,输入电流是-0.4mA。
因此,单片机端口输出高电平时,每个LS型的输入端将是20μA的拉电流型负载;输出低电平时,将是0.4mA的灌电流负载。
1. 标准的Intel8051单片机:其P0口是一个漏极开路的准双向口,驱动能力是8个LS型TTL负载。
楼上3楼说“51单片机P1口只是准双向口,内部没有上拉的。
(上拉的概念只是对于I/O的输入来说,对于输出来说,无所谓上拉,下拉的)。
”,其实并不对。
不对之处有两点:①没有上拉的是P0口,而不是P1口。
P1口是有上拉的。
②没有上拉(即漏极开路)其实只对输出有影响,以致只能输出低电平,不能输出高电平,而不妨碍高低电平的输入。
因此对P0口来说,输出为高电平时,其输出电流为0,必须外接上拉电阻才能输出高电平;输出低电平时,允许灌入电流为0.4mA×8=3.2mA。
而P1、P2、P3口都是有上拉的准双向口,带负载能力为4个LS型TTL门,因此,高电平输出电流为20μA×4=80μA,低电平允许灌入电流为0.4mA×4=1.6mA。
输出高低电平的带负载能力都很差,因此应该接入4.7k~10k左右的上拉电阻。
2. AT89系列单片机:因为输出电流会影响输出电压,所以参数表中是结合输出电压来提供输出电流能力的。
AT89C51和AT89S51允许的高电平输出电流为:输出电压为3.7V时,电流为25μA;允许的低电平输出电流(实际为灌入电流)为:输出电压为0.45V 时,电流为-1.6mA。
51单片机的P1、P2、P3口的工作原理
基于proteus的51单片机仿真实例五十、51单片机的P1、P2、P 3口的工作原理1、P1口某一位的内部电路结构如下图所示,在51单片机的P0,P1,P2,P3口中,P1口的结构最简单,用途也最单一。
仅仅只作为普通的数据输入/输出(I/O)端口使用。
从图中可以看出,P0口与P1口的主要差别在于:P1端口用内部上拉电阻代替了P0端口的场效应管,并且输出的信息只有内部总线的信息,没有了数据/地址总线的复用。
1)P1口用作输入端口如果P1口用作输入端口,即Q=0,/Q=1;则场效应管导通,引脚被直接连到电源的地GND上,即使引脚输入的是高电平,被直接拉低为“0“,所以,与P0端口一样,在将数据输入P1端口之前,先要通过内部总线向锁存器写”1“,这样/Q=0,场效应管截止,P1端口输入的“1”才可以送到三态缓冲器的输入端,此时再给三态门的读引脚送一个读控制信号,引脚上的“1”就可以通过三态缓冲器送到内部总线。
具有这种操作特点的输入/输出端口,一般称之为准双向I/O口,51单片机的P1,P2,P3口都是准双向口。
而P0端口由于输出具有三态功能(输出端口的三态是指:高电平,低电平,高阻态这三态),所以在作为输入端口时,无需先写“1”然后再进行读操作。
2)P1口用作输出端口如果P1口用作输出端口,应给锁存器的写锁存CP端输入写脉冲信号,内部总线送来的数据就可以通过D端进入锁存器并从Q和/Q端输出,如果D端输入“1”,则/Q=0,场效应管截止,由于上拉电阻的作用,在P1.X引脚输出高电平“1”,反之,如果D端输入“0”,则/Q =1,场效应管导通, P1.X引脚连到地线上,从而在引脚输出“0”。
2、P2口的内部电路结构如下图所示,可以看出P2口既有片内上拉电阻,又有切换开关MUX,所以P2口在功能上兼有P0和P1端口的特点,这主要体现在输出功能上,当切换开关向下接通时,从内部总线输出的一位数据经反相器和场效应管反相后,输出在端口引脚线上;当多路开关向上时,输出的一位地址信号也经反相器和场效应管反相后,输出在端口引脚线上。
单片机输入输出接口的使用
内部总线 写锁存器
DQ CLK Q
R
P2.n P2口
T
引脚
MUX
读引脚
2020/5/4
2.P2口作为地址总线
在系统扩展片外程序存储器扩展数据存储器且容量超过 256B (用MOVX DPTR指令)时,CPU发出控制电平“1”,使多路 开关MUX倒内部地址线。此时,P2输出高8位地址。
读锁存器
内部总线 写锁存器
内部总线 写锁存器
DQ CLK Q
T1
P0.n P0口
T2
引脚
MUX
读引脚
2020/5/4
② 输入时----分读引脚或读锁存器
读锁存器:有些指令 如:ANL P0,A称为“读-改-写”
指令,需要读锁存器。
上面一个缓冲器用于读端口锁存器数据。
读锁存器
内部总线 写锁存器
地址/数据 VCC 控制
DQ CLK Q
作为扩展系统的地址总线, 输出高8位地址, 与P0 口
一起组成 16 位地址总线。 对于 8031 而言, P2 口
一般只作为地址总线使用, 而不作为I/O线直接与外
部设备相连。
2020/5/4
地址/数据 VCC 控制
DQ CLK Q
T1
T2 MUX
P0.n P0口 引脚
读引脚
2020/5/4
2、P0作为地址/数据总线 ----真正的双向口
▪ P0引脚输出地址/输入数据
输入信号是从引脚通过输入缓冲器进入内部总线。
此时,CPU自动使MUX向下,并向P0口写“1”,“读
引脚”控制信号有效,下面的缓冲器打开,外部数据读入
读锁存器
内部总线 写锁存器
第二输出功能 VCC
单片机实验报告2
《单片机应用系统设计》实验报告院系:仪器科学与工程学院专业:测控技术与仪器实验室:机械楼5楼同组人员:评定成绩:审阅教师:硬件实验一I/O口输入/输出及控制实验Ⅰ、I/O口输入/输出实验一、实验目的1、学习单片机I/O口的使用方法2、学习延时子程序的编写和使用二、实验内容1、I/O口输出:P1口做输出口,接八只发光二极管,编写程序让发光二极管循环点亮。
2、I/O口输入/输出:P1.0、P1.1做输入口接两个拨动开关;P1.2、P1.3做输出口,接两个发光二极管。
编写程序读取开关状态,将此状态在发光二极管上显示出来。
编程时应注意P1.0、P1.1作为输入口时应先置1,才能正确读入值。
三、实验步骤1、I/O口输出硬件连接连线连接孔1 连接孔21 P1.0 L02 P1.1 L13 P1.2 L24 P1.3 L35 P1.4 L46 P1.5 L57 P1.6 L68 P1.7 L7MCS51的P1口循环点灯2、I/O口输入/输出硬件连接连线连接孔1 连接孔21 K4 P1.02 K5 P1.13 P1.2 L44 P1.3 L5MCS51的P1口输入/输出3、实验说明(1)对于MCS51,P1口是准双向口。
它作为输出口时与一般的双向口使用方法想同;但准双向口用作输入口时,因其结构特点必须对它置“1”,否则读入的数据容易产生错误。
(2)8051延时子程序的延时计算问题,对于程序DELAY:MOV R6, #0HMOV R7, #0HDELAYLOOP:DJNZ R6, DELAYLOOPDJNZ R7, DELAYLOOPRET查指令表可知MOV和DJNZ指令均需两个指令周期,在12MHz晶振时,一个机器周期时间为:12/12MHZ=1ms,该延时子程序延时:(256X255+2)X2X1us=130ms。
4、分别连接硬件并执行相关程序,记录结果。
四、提高要求修改I/O口输出程序,先1、3、5、7灯亮,延时后2、4、6、8灯亮,交替点亮。
单片机P0,P1,P2,P3口的区别
单片机P0,P1,P2,P3口的区别
2007年02月22日星期四 23:47
P0口:真正的双向口,输出锁存,输入缓冲,输入前要先置1(KEIL包含的头文件已经有动作了,如果用汇编,要人工置1),输出为漏极开路,输出一般都要上拉电阻。
输入为高阻态,能驱动8个TTL负载。
当有片外存储器时,作数据线使用。
P1口:是最简单的口,输入也要先置1,无高阻态,只能是输出或者输入。
能驱动4个TTL负载。
P2口:I/O与P1口一样,当有片外存储器时,作地址线使用,寻址64K片外数据存储器。
能驱动4个TTL负载。
P3口:I/O与P1口一样,但无论输入输出都要先置1。
具有很多复用功能。
口的一般使用方法:做复用时一般不要加上拉和下拉电阻。
但单输出驱动负载时都应加1K左右的上拉电阻,单输入时要加10K左右的下拉电阻,且输入为低电平触发。
单片机实验8 P1口应用实验
实验8 P1口应用实验
P1.0---P1.7八个I/O 口接八只LED 发光管
口线状态为”1”LED 亮, 试编程实现每次点
亮一只LED 并左循环连续点亮八只LED
假设P1.0在左边。
CYC:MOV A,#01H LOP:MOV P1,A
ACALL DEL Y
RL A
SJMP LOP
DELY:MOV R6,#100
MOV R7,#250 LOP1:NOP
NOP
DJNZ R7,LOP1
MOV R7,#250
DJNZ R6,LOP1 RET
2、实验步
1)打开PV32编程序。
汇编正确进入调试界面。
否则修改程序重新汇编直到通过。
2)打开P1口窗口给P1初赋值
3)单步调试观察并记禄寄存器、内存的变化。
单步根踪延时程序排除死循环。
观察流水灯是否正确,判断程序是否正确。
若发现问题重返编辑界面,修改、存盘、汇编。
返回调试界面调试通过。
单步调试时可将延时程序缩短令(R6)=1,(R7)=1,
4)设断点调试、延时程序恢复为0.5秒、记禄结果。
5)若每次点亮两个灯修改程序再做一遍
3.实验报告
1.写出程序流程图、程序清单
2.根据记渌数据给程序加注解
3.调试心得。
单片机实验指导书
目录实验一P1口输入、输出实验 (2)实验二继电器控制实验 (8)实验三音频控制实验 (11)实验四程序调试 (14)实验五5LED静态串行显示实验 (16)实验六6LED动态扫描显示实验 (21)实验七查询式键盘实验 (28)实验八阵列式键盘实验 (36)实验九计数器实验 (47)实验十定时器实验 (49)实验十一外部中断实验 (54)实验一P1口输入、输出实验一、实验目的1、学习P1口的使用方法2、学习延时子程序的编写和使用二、实验说明P1口是准双向口,它作为输出口时与一般的双向口使用方法相同。
由准双向口结构可知当P1口用作输入口时,必须先对口的锁存器写“1”,若不先对它写“1”,读入的数据是不正确的。
三、实验内容及步骤实验(一):用P1口做输出口,接八位逻辑电平显示,程序功能使发光二极管从右到左轮流循环点亮。
1、使用单片机最小应用系统1模块。
关闭该模块电源,用扁平数据线连接单片机P1口与八位逻辑电平显示模块。
2、用串行数据通信线连接计算机与仿真器,把仿真器插到模块的锁紧插座中,请注意仿真器的方向:缺口朝上。
3、打开Keil uVision2仿真软件,首先建立本实验的项目文件,接着添加P1_A.ASM源程序,进行编译,直到编译无误。
4、进行软件设置,选择硬件仿真,选择串行口,设置波特率为38400。
5、打开模块电源和总电源,点击开始调试按钮,点击RUN按钮运行程序,观察发光二极管显示情况。
发光二极管单只从右到左轮流循环点亮。
实验(二):用P1.0、P1.1作输入接两个拨断开关,P1.2、P1.3作输出接两个发光二极管。
程序读取开关状态,并在发光二极管上显示出来。
1、用导线分别连接P1.0、P1.1到两个拨断开关,P1.2、P1.3到两个发光二极管。
2、添加 P1_B.ASM源程序,编译无误后,运行程序,拨动拨断开关,观察发光二极管的亮灭情况。
向上拨为熄灭,向下拨为点亮。
四、流程图及源程序1.流程图2.源程序:(一)实验一ORG 0000HLJMP STARTORG 0030HSTART: MOV A, #0FEHMOV R2,#8OUTPUT: MOV P1,ARL AACALL DELAYDJNZ R2,OUTPUTLJMP STARTDELAY: MOV R6,#0MOV R7,#0DELAYLOOP:;延时程序DJNZ R6,DELAYLOOPDJNZ R7,DELAYLOOPRETEND(二)实验二KEYLEFT BIT P1.0 ;定义KEYRIGHT BIT P1.1LEDLEFT BIT P1.2LEDRIGHT BIT P1.3ORG 0000HLJMP STARTORG 0030HSTART: SETB KEYLEFT ;欲读先置一SETB KEYRIGHTLOOP: MOV C,KEYLEFTMOV LEDLEFT,CMOV C,KEYRIGHTMOV LEDRIGHT,CLJMP LOOPEND五、思考题(1)对于本实验延时子程序Delay: MOV R6,0MOV R7, 0DelayLoop:DJNZ R6,DelayLoopDJNZ R7,DelayLoopRET如使用12MHz晶振,粗略计算此程序的执行时间为多少?六、电路图实验二继电器控制实验一、实验目的1、学习I/O端口的使用方法2、掌握继电器的控制的基本方法3、了解用弱电控制强电的方法二、实验说明现代自动控制设备中,都存在一个电子电路的互相连接问题,一方面要使电子电路的控制信号能控制电气电路的执行元件(电动机,电磁铁,电灯等),另一方面又要为电子线路和电气电路提供良好的电气隔离,以保护电子电路和人身的安全。
单片机第5章 输入输出接口P0~P3讲解
P2口—1.作为输入/输出口。 2.作为高8位地址总线。
P3口—P3口为双功能 1.作第一功能使用时,其功能为输入/输出口。 2.作第二功能使用时,每一位功能定义如下表
所示:
端口引脚 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7
第二功能 RXD (串行输入线) TXD (串行输出线) INT0(外部中断0输入线) INT1 (外部中断1输入线) T0 (定时器0外部计数脉冲输入) T1 (定时器1外部计数脉冲输入) WR (外部数据存储器写选通信号入)
为了节省口线,可将按键接成矩阵的形式。
例如:8×8的形式接64个按键,行列用两个接口 表示。每个按键都有行值和列值,行值和列值的组合 (称为按键的扫描码)就可以唯一的标识某个按键。 矩阵的行线和列线分别通过两个并口与CPU通信。按键 的状态用开关量“0/1”表示。
键盘处理程序的任务是: 确定有无键按下; 判哪一个键按下, 键的功能是什么; 还要消除按键在闭合或断开时的抖动。
TAB2 : db 78H,79H,38H,38H,3FH ; “HELLO”的字形码
DAY: MOV R6,#20 ; 延时20ms子程序 DL2: MOV R7,#7DH DL1: NOP
NOP DJNZ R7,DL1 DJNZ R6,DL2
RET
END
5.3.2用并行口设计键盘电路
键盘是计算机系统中不可缺少的输入设备,当按 键少时可接成线性键盘(一个按键对应一位,如图5.2 中的按键 ),按键较多时,这样的接法占用口线较多。
a
5
EE DE BE 7E ED DD BD 7D EB DB BB 7B E7 D7 B7 77
开始
51单片机IO端口(P1P2P3端口,漏极开路,推挽,上拉电阻,准双向口)
单片机IO端口工作原理(P1P2P3端口,漏极开路,推挽,上拉电阻,准双向口)2009-09-17 12:58二、P1端口的结构及工作原理P1口的结构最简单,用途也单一,仅作为数据输入/输出端口使用。
输出的信息有锁存,输入有读引脚和读锁存器之分。
P1端口的一位结构见下图:P1端口与P0端口的主要差别在于,P1端口用内部上拉电阻R代替了P0端口的场效应管V1,并且输出的信息仅来自内部总线。
由内部总线输出的数据经锁存器反相和场效应管反相后,锁存在端口线上,所以,P1端口是具有输出锁存的静态口。
要正确地从引脚上读入外部信息,必须先使场效应管关断,以便由外部输入的信息确定引脚的状态。
为此,在作引脚读入前,必须先对该端口写入l。
具有这种操作特点的输入/输出端口,称为准双向I/O口。
8051单片机的P1、P2、P3都是准双向口。
P0端口由于输出有三态功能,输入前,端口线已处于高阻态,无需先写入l后再作读操作。
单片机复位后,各个端口已自动地被写入了1,此时,可直接作输入操作。
如果在应用端口的过程中,已向P1一P3端口线输出过0,则再要输入时,必须先写1后再读引脚,才能得到正确的信息。
此外,随输入指令的不同,H端口也有读锁存器与读引脚之分。
三、P2端口的结构及工作原理:P2端口的一位结构见下图:P2端口在片内既有上拉电阻,又有切换开关MUX,所以P2端口在功能上兼有P0端口和P1端口的特点。
这主要表现在输出功能上,当切换开关向下接通时,从内部总线输出的一位数据经反相器和场效应管反相后,输出在端口引脚线上;当多路开关向上时,输出的一位地址信号也经反相器和场效应管反相后,输出在端口引脚线上。
对于8031单片机必须外接程序存储器才能构成应用电路(或者我们的应用电路扩展了外部存储器),而P2端口就是用来周期性地输出从外存中取指令的地址(高8位地址),因此,P2端口的多路开关总是在进行切换,分时地输出从内部总线来的数据和从地址信号线上来的地址。
单片机KEIL软件的使用及P1口控制实验
KEIL软件的使用及P1口控制一实验目的1、学习KEIL软件的使用方法及单片机实验平台2、学习P1口的控制方法3、学习延时子程序的编写和单片机延时计算方法二实验原理1、KEIL软件是德国Keil公司开发的基于Windows平台的单片机集成开发环境软件。
KEIL 软件包括编译器、连接器、库管理器和仿真调试器,通过集成开发环境(μVision)将这些部分组合在一起。
2、P1口是一个八位的准双向I/O口,其中一位的内部结构如图所示,输出驱动电路有一只场效应管和一个上拉电阻组成。
每一根口线都可以分别定义成输入或输出线。
做输出线时,写入“1”,则Q’为“0”,T1截止,P1.X输出高电平,写入“0”,则Q’为“1”,T1导通,P1.X输出低电平。
做输入线时,必须先向该口线写“1”,使T1截止。
3、程序延时分析方法:延时=指令个数X机器周期机器周期=12÷nMHZ n为单片机时钟频率三实验要求与步骤实验(一):用P1口做输出口,接八位逻辑电平显示,程序功能使发光二极管从右到左轮流循环点亮。
1、使用单片机最小应用系统1模块。
关闭该模块电源,用扁平数据线连接单片机P1口与八位逻辑电平显示模块。
(并口线与右侧的8个插孔是串联等效的。
)2、用串行数据通信线连接计算机与仿真器,把仿真器插到模块的锁紧插座中,请注意仿真器的方向:缺口朝上。
3、打开Keil uVision2仿真软件,首先建立本实验的项目文件,接着添加P1_A.ASM 源程序,进行编译,直到编译无误。
4、进行软件设置,选择硬件仿真,选择串行口,设置波特率为38400。
5、(先接通仿真器电源再开启试验箱电源)打开模块电源和总电源,点击开始调试按钮,点击RUN按钮运行程序,观察发光二极管显示情况。
发光二极管单只从右到左轮流循环点亮。
注:软件具体操作见附录实验(二):用P1.0、P1.1作输入接两个置位开关,P1.2、P1.3作输出接两个发光二极管。
程序读取开关状态,并在发光二极管上显示出来。
单片机原理与应用(8051单片机P1口应用实验)
8051单片机P1口应用实验
实验目的与要求
学习8051单片机P1口作为双向I/O口的使用方法, 采用循环指令编写延时子程序。了解用弱电控制强电的 基本原理,采用单片机P1口实现继电器开关控制。 ① 采用8051单片机的P1口做输出口,接4只发光 二极管,编写程序,使发光二极管循环点亮。 ② 采用P1.0,P1.1作输入口接两个拨动开关, P1.2,P1.3作输出口,接两个发光二极管,编写程序 读取开关状态,并将此状态在发光二极管上显示出来。 ③ 采用P1口输出电平控制继电器的吸合和断开,从 而实现对外部装置的开关量控制。 ④ 采用P1口控制音频电路发声。
低4位为T0的控制字,高4位为T1的控制字
GATE为门控位 它对定时/计数器的启动起辅助控制作 用。 C/T为方式选择位 C/T = 0为定时器方式 C/T =1为计数器方式 M1、M0二位的状态确定定时/计数器的 工作方式
定时/计数器控制寄存器TCON的地址为 88H,格式如下:
D7 TF1 D6 TR1 D5 TF0 D4 TR0 D3 IE1 D2 IT1 D1 IE0 D0 IT0
程序参考流程 框图如右图:
采用P1口作输入和输出
由P1口的准双向口结构可知,当作为 输入口时,必须先对它置“1”。若不先对 它置“1”,读入的数据是不正确的。实验 所需要LED电平显示电路和逻辑电平开关 电路如图所示。
程序参考 流程框图如 右:
在实验系统 上如表所示连线。 执行上述程序, 发光二极管LED 将随拨动开关的 位置而点亮或熄 灭.
8051单片机有四个并行I/O口,称为 P0、P1、P2、P3,每个口都有8根引脚, 它们都是双向通道,每一条I/O引脚都能 独立地用作输入或输出,作输出时数据可 以锁存,作输入时数据可以缓冲。
单片机P1口输入输出实验
单片机P1口输入输出实 验
单片机可靠的复位是保证单片机正常运行的关键因素。 因此,在设计复位电路时,通常要使RST引脚保持10ms以 上的高电平。当RST从高电平变为低电平之后,单片机就从 0000H地址开始执行程序。本电路是上电自动复位。
将8个LED接在单片机P1端口的P1.0-P1.7引脚上,注意 LED有长短两个引脚,分别表示正负极,其中较短的负极接 单片机,较长的为正极,通过限流电阻R与Vcc相连。
单片机P1口输入输出实 验
单片机端口是集数据输入缓冲、数据输出驱动及 锁存等多项功能一体I/O的电路,特别是把握它准 双向、多功能的特点。单片机4个并行端口是P0、 P1、P2、P3。本实验只讨论P1端口。
1、实验目的
通过实验了解P1口作为输入输出方式使用 时,CPU对P1口操作方式。
•1
单片机P1口输入输出实 2、验实验要求(1)、2)为必做,3)为选做)
•11
单片机P1口输入输出实验
图3 P1端口的一位结构
•12
单片机P1口输入输出实验
5、程序设计
P1口输出控制程序的设计主要包括控制输出程序设计与延时程序设计。 (1)输出控制:当P1.5端口输出低电平,即P1.5=0,这时LED亮,反 之,LED灭,可以使用P1.5=0指令使P1.5端口输出低电平,同样利用指 令使P1.5端口输出高电平。
灭;
状态3:8个LED发光二极管
全灭后,从左右两边开始同时点亮LED发光二极管,全亮
后,8个LED发光二极管再明暗一起闪烁2次 ?
•3
单片机P1口输入输出实 验
3、实验设备与仪器 单片机应用与仿真开发实验台,PC机,
E6000/L仿真器+POD-51仿真头、 Wave软硬件仿真软件。
MCS51单片机原理及应用 实验报告
单片机原理与应用实验报告学校:合肥工业大学姓名:吕增威学号:班级:计算机科学与技术08-03班目录前言 ------------------------3 第一章 MC51 单片机原理及应用软件实验实验1:系统认识实验--------------------6实验6:数据排序实验(验证性)---------- 11第二章 MC51 单片机原理及应用硬件实验实验1:广告灯实验----------------------15实验2:P1 口实验(验证性)-------------21实验16:串口转并口实验 ----------------32 实验心得与体会---------------37前言一.单片机原理实验的任务单片机原理实验是单片机原理及应用课程的一部分,它的任务是:1.通过实验进一步了解和掌握单片机原理的基本概念、单片机应用系统的硬件设计及调试方法。
2.学习和掌握单片机应用系统程序设计技术。
3.提高应用计算机的能力及水平,提高逻辑动手能力。
二.实验设备单片机实验所使用的设备由计算机、单片机实验开发系统(,其中计算机是软件开发平台,主要完成程序编辑、编译、下载程序等任务;单片机实验开发系统是硬件开发平台,是基于51/196 单片机的扩展实验系统。
计算机和单片机实验开发系统之间是通过RS232 串行接口进行通信的。
单片机实验开发系统配有开关电源、单片机、晶振、存储器、可编程并行接口芯片、键盘显示控制芯片、24 键键盘、六位LED 数码管显示、A/D 及D/A 转换芯片、简单输出口2个、简单输入口1 个、逻辑电平输入开关、发光二极管显示电路,并配有小直流电机、步进电机、继电器、音响等驱动电路。
在计算机软件的控制下可完成单片机基本实验及综合3设计性实验项目。
所有的MCS51 单片机原理及应用课程实验都是在这套实验系统上完成的。
Keil与Proteus的联合使用: Keil C51 6.02的使用:1.打开Keil,新建一个程序文件(File--New),在上面输入要调试的程序,保存为*.asm格式;2.新建一个工程(project--Newproject),保存,在CPU选项了选择Atmel--AT89C51,点击确定,在弹出的选项框中选择“否”。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机P1端口的应用
任务要求:
使用单片机的P1口控制8个二极管,使8个二极管从左到右轮流点亮,每个管亮100ms,(设晶振为6MHz),再拨动开关使8个二极管反向(既从右到左)轮流点亮。
【教学目标】
1、熟悉P1端口的功能
2、掌握常见的指令功能
3、掌握机器周期的计算方法
4、学会设计LED线路
5、学会编程序
教学重点及难点:
根据设计的LED线路,编出相应的程序
教学方法:
教授法、多媒体教学
课时安排:
1课时
【教学过程】
一.导入新课
单片机是通过执行程序来工作的,执行不同的程序就能完成不同的任务。
我们可以利用单片机P1端口的应用,来实现控制8个发光二极管轮流点亮。
二、教学内容
1、P1端口的功能
P1是一个带内部上拉电阻的8位双向I/O端口,在编程和验证程序时,它输入低8位地址。
2、机器周期
定义:实现特定功能所需的时间,或完成某一规定操作所需的时间计算公式:T=1/f×12
例:晶振为6MHz,则可知一个机器周期为2us
3、任务要求中涉及到的指令
(1)判位转移指令(JNB)
功能:分别判断进位位C或直接寻址位是“1”还是“0”,条件符合则转移,否则继续执行程序。
(2)绝对调用指令(ACALL)
也称短调用指令(双字节)
(3)循环移位指令
RR A;
RL A;
功能:将累加器A的内容循环右移或左移一位
(4)无条件相对转移指令(SJMP)
该指令为双字节
(5)减1非零转移指令(DJNZ)
功能:设置一个计数值,每执行一次某段程序,计数值减1,计数值非零则继续执行,直至计数值减至0为止。
(6)子程序返回指令(RET)
4、设计LED线路
5、编写程序
程序如下:
ORG 0000H MAIN:MOV SP,#60H
MOV R2,#7FH
MOV R3,#0FEH START:JNB P3.7,RIGHT LOOPL:MOV A,R2
MOV P1,A
ACALL DL100ms RR A
MOV R2,A
SJMP START
RIGHT:MOV A,R3
MOV P1,A
ACALL DL100ms
RL A
MOV R3,A
SJMP START
DL100ms:MOV R6,#100
DLL: MOV R7,#250
DJNZ R7,$
DJNZ R6,DLL
RET
END
三、课堂小结
通过完成本次任务,让我们学会对P1口的应用,进一步熟悉常见的指令,并掌握指令的功能,充分地应用到程序中。