用51单片机8255138373等实现数码管显示按键数值的程序DOCWord文件下载.docx

上传人:b****3 文档编号:14789702 上传时间:2022-10-24 格式:DOCX 页数:20 大小:442.35KB
下载 相关 举报
用51单片机8255138373等实现数码管显示按键数值的程序DOCWord文件下载.docx_第1页
第1页 / 共20页
用51单片机8255138373等实现数码管显示按键数值的程序DOCWord文件下载.docx_第2页
第2页 / 共20页
用51单片机8255138373等实现数码管显示按键数值的程序DOCWord文件下载.docx_第3页
第3页 / 共20页
用51单片机8255138373等实现数码管显示按键数值的程序DOCWord文件下载.docx_第4页
第4页 / 共20页
用51单片机8255138373等实现数码管显示按键数值的程序DOCWord文件下载.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

用51单片机8255138373等实现数码管显示按键数值的程序DOCWord文件下载.docx

《用51单片机8255138373等实现数码管显示按键数值的程序DOCWord文件下载.docx》由会员分享,可在线阅读,更多相关《用51单片机8255138373等实现数码管显示按键数值的程序DOCWord文件下载.docx(20页珍藏版)》请在冰豆网上搜索。

用51单片机8255138373等实现数码管显示按键数值的程序DOCWord文件下载.docx

逻辑结构图:

包含四个部分:

●三个并行数据输入输出端口

●两个工作方式控制电路

●一个读写逻辑控制电路

●八位总线缓冲器

1.三个并行数据输入输出端口:

A口;

B口;

C口

一般,A口,B口作为数据输入输出端口,

C口作为控制/状态信息口,可以分为两个部分,分别与A口和B口配合使用,作为控制信息输出或状态信息输入。

2.工作方式控制电路

工作方式控制电路有两个:

A组控制和B组控制电路,

A组控制用来控制A口和C口的上半部分PC7——PC4;

B组控制用来控制B口和C口的下半部分PC3——PC0;

两组控制电路具有一个控制命令寄存器,用来接收来自

CPU的数据(控制字),以决定芯片的工作方式,或对

C口按位进行清“0”或者置“1”。

3.总线缓冲器

三态双向八位缓冲器,作为微处理器数据总线与8255之间的接口,用来传送命令、数据及状态信息。

4.读写逻辑控制电路

读写逻辑控制电路接受CPU来的控制信号:

读、写、地址及复位信息,根据控制信号的要求,将数据读出,送往CPU,或者将CPU来的信息写入端口。

引脚说明:

片选信号,低电平有效,表示芯片被选中;

读操作,低电平有效,控制数据读出;

写操作,低电平有效,控制数据写入;

A1,A0:

地址线,端口选择信号,用来选择8255内部端口:

A1A0操作

00010读A口到数据总线

01010读B口到数据总线

10010读C口到数据总线

00100写数据总线A口

01100写数据总线B口

10100写数据总线C口

11100写数据总线控制口

×

×

×

1数据总线为高阻态

11010非法操作

11110无效

RESET:

复位信号,高电平有效,各端口被置成输入;

D7—D0:

双向三态数据线;

PA7——PA0:

A口输入输出线;

PB7—PB0:

B口输入输出线;

PC7——PC0:

C口输入输出线;

3.工作方式选择——工作方式控制字

8255有三种工作方式:

其中方式2只对A口。

8255的工作方式是由工作方式控制字决定,工作方式控制字是

由CPU写入。

8255方式控制字定义如下:

D7D6D5D4D3D2D1D0B组:

端口C(下半部)

1:

输入,0:

输出

端口B

方式选择

0:

方式0,1方式1

A组

C口上半部

端口A

方式选择

00:

方式0,

01:

方式1

方式2

D7=1:

命令控制字有效。

当D7=0,通过控制口对C口进行位操作。

C口具有位操作功能,通过工作方式控制字可以将PC7——PC0

中任意一位置1或清0

D7D6D5D4D3D2D1D0

D7=0对C口操作,D6D5D4无效,

D3D2D1:

位选择

000PC0

001PC1

010PC2

011PC3

100PC4

101PC5

110PC6

111PC7

D0=0:

清0;

0=1:

置1

1.工作方式0:

基本输入输出方式

三个端口都可以设置成输入或输出方式:

●具有两个八位端口:

A口和B口

●具有两个四位端口:

PC0——PC3,PC4——PC7

●任一端口都可设置为输入或输出

●数据输出带锁存,输入时不锁存

此时,8255可以工作在无条件传送;

也可以查询式传送,C口作为联络信号

2.工作方式1:

选通式输入/输出方式

有固定的选通信号,选通信号与数据一齐传送,由选通信号表示数据传送的状态:

●三个端口分为两组:

A组和B组

●每组包括一个八位数据端口和一个四位的控制状态端口

●每个八位数据端口均可设置为输入或输出,输入输出均带锁存

●四位端口作为八位端口的控制/状态联络信号

2.51芯片资料

Vcc 40 电源端

    GND 20 接地端

    *工作电压为5V,另有AT89LV51工作电压则是2.7-6V,引脚功能一样。

  2.外接晶体引脚

图2-2 外接晶体引脚

    XTAL1 19

    XTAL2 18

    XTAL1是片内振荡器的反相放大器输入端,XTAL2则是输出端,使用外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2悬空。

内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12MHz,时钟频率就为6MHz。

晶振的频率可以在1MHz-24MHz内选择。

电容取30PF左右。

    *型号同样为AT89C51的芯片,在其后面还有频率编号,有12,16,20,24MHz可选。

大家在购买和选用时要注意了。

如AT89C5124PC就是最高振荡频率为24MHz,40P6封装的普通商用芯片。

  3.复位 RST 9

    在振荡器运行时,有两个机器周期(24个振荡周期)以上的高电平出现在此引腿时,将使单片机复位,只要这个脚保持高电平,51芯片便循环复位。

复位后P0-P3口均置1引脚表现为高电平,程序计数器和特殊功能寄存器SFR全部清零。

当复位脚由高电平变为低电平时,芯片为ROM的00H处开始运行程序。

常用的复位电路如图2-3所示。

    *复位操作不会对内部RAM有所影响。

图2-3 常用复位电路

  4.输入输出引脚

    

(1)P0端口[P0.0-P0.7]P0是一个8位漏极开路型双向I/O端口,端口置1(对端口写1)时作高阻抗输入端。

作为输出口时能驱动8个TTL。

      对内部Flash程序存储器编程时,接收指令字节;

校验程序时输出指令字节,要求外接上拉电阻。

      在访问外部程序和外部数据存储器时,P0口是分时转换的地址(低8位)/数据总线,访问期间内部的上拉电阻起作用。

    

(2)P1端口[P1.0-P1.7]P1是一个带有内部上拉电阻的8位双向I/0端口。

输出时可驱动4个TTL。

端口置1时,内部上拉电阻将端口拉到高电平,作输入用。

      对内部Flash程序存储器编程时,接收低8位地址信息。

    (3)P2端口[P2.0-P2.7]P2是一个带有内部上拉电阻的8位双向I/0端口。

      对内部Flash程序存储器编程时,接收高8位地址和控制信息。

      在访问外部程序和16位外部数据存储器时,P2口送出高8位地址。

而在访问8位地址的外部数据存储器时其引脚上的内容在此期间不会改变。

    (4)P3端口[P3.0-P3.7]P2是一个带有内部上拉电阻的8位双向I/0端口。

      对内部Flash程序存储器编程时,接控制信息。

除此之外P3端口还用于一些专门功能,具体请看表2-2.。

      *P1-3端口在做输入使用时,因内部有上接电阻,被外部拉低的引脚会输出一定的电流。

P3引脚

兼用功能

P3.0

串行通讯输入(RXD)

P3.1

串行通讯输出(TXD)

P3.2

外部中断0(INT0)

P3.3

外部中断1(INT1)

P3.4

定时器0输入(T0)

P3.5

定时器1输入(T1)

P3.6

外部数据存储器写选通WR

P3.7

外部数据存储器写选通RD

表2-2 P3端口引脚兼用功能表

  呼!

一口气说了那么多,停一下吧。

嗯,什么?

什么叫上拉电阻?

上拉电阻简单来说就是把电平拉高,通常用4.7-10K的电阻接到Vcc电源,下拉电阻则是把电平拉低,电阻接到GND地线上。

具体说明也不是这里要讨论的,接下来还是接着看其它的引脚功能吧。

  5.其它的控制或复用引脚

    

(1)ALE/PROG30访问外部存储器时,ALE(地址锁存允许)的输出用于锁存地址的低位字节。

即使不访问外部存储器,ALE端仍以不变的频率输出脉冲信号(此频率是振荡器频率的1/6)。

在访问外部数据存储器时,出现一个ALE脉冲。

对Flash存储器编程时,这个引脚用于输入编程脉冲PROG

    

(2)PSEN29该引是外部程序存储器的选通信号输出端。

当AT89C51由外部程序存储器取指令或常数时,每个机器周期输出2个脉冲即两次有效。

但访问外部数据存储器时,将不会有脉冲输出。

    (3)EA/Vpp31外部访问允许端。

当该引脚访问外部程序存储器时,应输入低电平。

要使AT89C51只访问外部程序存储器(地址为0000H-FFFFH),这时该引脚必须保持低电平。

对Flash存储器编程时,用于施加Vpp编程电压。

Vpp电压有两种,类似芯片最大频率值要根据附加的编号或芯片内的特征字决定。

具体如表2-3所列。

Vpp=12V

Vpp=5V

印刷在芯片面上的型号

AT89C51xxxxYYWW

AT89LV51xxxxYYWW

AT89C51xxxx-5YYWW

AT89LV51xxxx-5YYWW

片内特征字

030H=1EH

031H=51H

031H=61H

032H=FFH

032H=05H

表2-3 Vpp与芯片型号和片内特征字的关系

  看到这您对AT89C51引脚的功能应该有了一定的了解了,引脚在编程和校验时的时序我们在这里就不做详细的探讨,通常情况下我们也没有必要去撑握它,除非你想自己开发编程器。

下来的课程我们要开始以一些简单的实例来讲述C程序的语法和编写方法技巧,中间穿插相关的硬件知识如串口,中断的用法等等。

成HEX文件和最小化系统  在开始C语言的主要内容时,我们先来看看如

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1