学习情境1信号灯控制系统的设计与制作 联系客服

发布时间 : 星期一 文章学习情境1信号灯控制系统的设计与制作更新完毕开始阅读786b8230eefdc8d376ee3251

《单片机应用技术》

MCS-51系列单片机采用两种半导体工艺生产。一种是HMOS工艺,即高速度高密度短沟道MOS工艺。另外一种是CHMOS工艺,即互补金属氧化物的HMOS工艺。表0-1中芯片型号中带有字母“C”的,为CHMOS芯片,其余均为一般的HMOS芯片。

CHMOS是CMOS和HMOS的结合,除保持了HMOS高速度和高密度的特点之外,还具有CMOS低功耗的特点。例如8051的功耗为630mW ,而80C51的功耗只有120mW .在便携式 、手提式或野外作业仪器设备上低功耗是非常有意义的。因此在这些产品中必须使用CHMOS的单片机芯片。

3.片内ROM存储器配置形式

MCS-51单片机片内程序储器有三种配置形式,即:掩膜ROM、EPROM和无ROM。这三种配置形式对应三种不同的单片机芯片,它们各有特点,也各有其适用场合,在使用时应根据需要进行选择。一般情况下,片内带掩膜型ROM适应于定型大批量应用产品的生产;片内带EPROM适合于研制产品样机;外接EPROM的方式适用于研制新产品。最近Intel公司又推出片内带EEPROM型的单片机,可以在线写入程序。

1.1.2.3 MCS-51单片机结构和原理

尽管单片机比较简单,但要按五个基本组成部件来讲单片机的硬件结构和原理,也将是一件十分复杂的事。其实也没有这种必要。因此,通常讲述单片机结构原理时,总是从实际需要出发,只介绍与程序设计和系统扩展应用有关的内容。MCS-51单片机的内部组成及信号引脚MCS-51单片机的典型芯片是8031、8051、8751。8051内部有4KB ROM,8751内部有4KB EPROM,8031片内无ROM;除此之外,三者的内部结构及引脚完全相同。因此以8051为例,说明本系列单片机的内部组成及信号引脚。

1.8051单片机的基本组成

8051单片机的基本组成如图1.4。各部分的作用为 (1)中央处理器(CPU)

中央处理器是单片机的核心,完成运算和控制功能。MCS-51的CPU能处理8位二进制数或代码。

(2)内部数据存储器(内部RAM)

8051芯片中共有256个RAM单元,但其中后128单元被专用寄存器占用,能作为寄存器供用户使用的只是前128单元,用于存放可读写的数据。因此通常所说的内部数据存储器就是指前128单元,简称内部RAM。

T0T1时钟电路ROMRAM定时/计数器CPU并行接口串行接口中断系统P0P1P2P3TxDRxDINT0INT1

5

《单片机应用技术》

图1.4 MCS-51 单片机结构框图

(3)内部程序存储器(内部ROM)

8051共有4KB掩膜ROM,用于存放程序、原始数据或表格,因此称之为程序存储器,简称内部ROM。

(4)定时器/计数器

8051共有2个16位的定时器/计数器,以实现定时或计数功能,并以其定时或计数结果对计算机进行控制。

(5)并行I/O口

MCS-51共有四个8位的I/O口(P0、P1、P2、P3),以实现数据的并行输入输出。在实训中我们已经使用了P1口,通过P1口连接8个发光二极管。

(6)串行口

MCS-51单片机有一个全双工的串行口,以实现单片机和其它设备之间的串行数据传送。该串行口功能较强,既可作为全双工异步通信收发器使用,也可作为同步移位器使用。

(7)中断控制系统

MCS-51单片机的中断功能较强,以满足控制应用的需要。8051共有5个中断源,即外中断2个,定时/计数中断2个,串行中断1个。全部中断分为高级和低级共二个优先级别。

(8)时钟电路

MCS-51芯片的内部有时钟电路,但石英晶体和微调电容需外接。时钟电路为单机产生时钟脉冲序列。系统允许的。系统允许的晶振频率一般为6MHZ和12MHZ。

从上述内容可以看出,MCS-51虽然是一个单片机芯片,但作为计算机应该具有的基本部件它都包括,因此实际上它已是一个简单的微型计算机系统了。

2.MCS-51的信号引脚

MCS-51是标准的40引脚双列直插式集成电路芯片,引脚排列请参见图1.5。 1)信号引脚介绍 P0.0 ~ P0.7: P0口8位双向口线。

P1.0 ~ P1.7 :P1口8位双向口线。

P2.0 ~ P2.7 :P2口8位双向口线。 P3.0 ~ P3.7 :P3口8位双向口线。 ALE:地址锁存控制信号。

在系统扩展时,ALE用于控制把P0口输出的低8位地址锁存器锁存起地线。 VCC:+5V电源。

以上是MCS-51单片机芯片40条引脚的定义及简单功能说明,读者可以对照实训电路找到相应引脚,在电路中查看每个引脚的连接使用。

6

《单片机应用技术》

123456P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST/VPDRXD P3.0TXD P3.1INT0 P3.2INT1 P3.3T0 P3.4T1 P3.5WR P3.6RD P3.7XTAL2XTAL1VSSVCCP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EA/VPPALE/PROGPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.040393837363534333231302928272625242322218031 8051 87517891011121314151617181920

图1.5 MCS –51 引脚图

2)信号引脚的第二功能 由于工艺及标准化等原因,芯片的引脚数目是有限制的。例如MCS-51系列把芯片引脚数目限定为40条,但单片机为实现其功能所需要的信号数目却远远超过此数,因此就出现了需要与可能的矛盾。如何解决这个矛盾?“兼职”是唯一可行的办法,即给一些信号引脚赋以双重功能。如果把前述的信号定义为引脚第一功能的话,则根据需要再定义的信号就是它的第二功能。下面介绍一些信号引脚的第二功能。

(1)P3口线的第二功能

P3的8条口线都定义有第二功能,详见表1.2。 (2)EPROM存储器程序固化所需要的信号

有内部EPROM的单片机芯片(例如8751),为写入程序需提供专门的编程脉冲和编程电源,这些信号也是由信号引脚以第二功能的形式提供的,即:

编程脉冲:30脚(ALE/PROG)

编程电压(25V):31脚(EA/VPP)

来,以实现低位地址和数据的隔离。此外由于ALE是以晶振六分之一的固定频率输出的正脉冲,因此可作为外部时钟或外部定时脉冲使用。

:外部程序存储器读选通信号。在读外部ROM时PSEN有效(低电平),以实现

外部ROM单元的读操作。

EA:访问程序存储控制信号。当EA信号为低电平时,对ROM的读操作限定在外部

PSEN程序存储器;而当EA信号为高电平时,则对ROM的读操作是从内部程序存储器开始,并可延至外部程序存储器。

RST:复位信号。当输入的复位信号延续2个机器周期以上高电平即为有效,用以完成单片机的复位初始化操作。

XTAL1和XTAL2 :外接晶体引线端。当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。

VSS:电压(25V):31脚(EA/VPP)

7

《单片机应用技术》

表1.2 P3口各引脚

引脚 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 第二功能 RXD TXD INT0 INT1 T0 T1 WR 信号名称 串行数据接收 串行数据发送 外部中断0申请 外部中断1申请 定时器/计数器0的外部输入 定时器/计数器1的外部输入 外部RAM写选通 外部RAM读选通 P3.7 RD

(3)备用电源引入

MCS-51单片机的备用电源也是以第二功能的方式由9脚(RST/VPD)引入的。当电源发生故障电压降低到下限值时,备用电源经此端向内部RAM提供电压,以保护内部RAM中的信息不丢失。

以上把MCS-51单片机的全部信号,分别以第一功能和第二功能的形式列出。对于各种型号的芯片,其引脚的第一功能信号是相同的,所不同的只在引脚的第二功能信号。

对于9、30和31三个引脚,由于第一功能信号与第二功能信号是单片机在不同工作方式下的信号,因此不会发生使用上的矛盾。但是P3口的情况却有所不同,它的第二功能信号都是单片机的重要控制信号。因此在实际使用时,都是先按需要选用第二功能信号,剩下的才以第一功能的身份作数据位的输入输出使用。

1.1.2.4 MCS-51内部数据存储器

MCS-51单片机的芯片内部有RAM和ROM两类存储器,即所谓的内部RAM和内部ROM,首先分析内部RAM。

1.内部数据存储器低128单元

8051的内部RAM共有256个单元,通常把这256个单元按其功能划分为两部分:低128单元(单元地址00H~7FH)和高128单元(单元地址80H~FFH)。如图1.6所示为低128单元的配置图。

30H ~7FH 20H ~2FH 18H ~1FH 10H ~17H 08H ~0FH 数据缓冲区 位寻址区(00H~7FH) 工作寄存器3区(R7~R0) 工作寄存器2区(R7~R0) 工作寄存器1区(R7~R0) 工作寄存器0区(R7~R0) 00H ~07H 图1.6 片内RAM的配置

低128单元是单片机的真正RAM存储器,按其用途划分为三个区域: 1)寄存器区

共有四组寄存器,每组8个寄存单元(各为8位),各组都以R0~R7作寄存单元编号。寄存器常用于存放操作数及中间结果等,由于它们的功能及使用不作预先规定,因此称之为通用寄存器,有时也叫工作寄存器。四组通用寄存器占据内部RAM的00H~1FH单元地址。

在任一时刻,CPU只能使用其中的一组寄存器,并且把正在使用的那组寄存器称之为当前寄存器组。到底是哪一组,由程序状态字寄存器PSW中RS1、RS0位的状态组合来决

8