分享

单片机硬件原理

 朱子俊 2023-05-30 发布于江苏

2.1、单片机的结构

单片机的种类很多,其中以Intel公司生产的MCS-51系列单片机应用最为广泛。由于各种单片机的工作原理基本相同,所以本书就以MCS-51系列单片机为例来介绍单片机技术。

MCS-51 系列单片机的具体型号很多,如 Intel 公司生产的 8031、8051、8751、8032、8052 和Atmel公司生产的AT89C51、AT89S51等都属于MCS-51系列单片机。MCS-51系列单片机的内部组成基本相同,具体如图2-1所示。

文章图片1
文章图片2

图2-1 MCS-51系列单片机的内部组成

从图2-1可以看出,单片机内部主要由CPU、时钟振荡器、中断控制器、程序存储器(ROM)、随机存取存储器(RAM)、两个定时器/计数器、串行通信口、输入/输出(I/O)接口和总线控制器组成。

2.1.1、CPU

CPU(中央处理器)是单片机的核心部件,决定了单片机的主要功能和特性。工作时,CPU从ROM中调取程序并进行运算,然后发出控制信号通过总线送到I/O接口,再由I/O接口将控制信号送到外围的输出电路。

2.1.2、时钟振荡器

时钟振荡器的功能是产生时钟信号送给单片机内部各电路,并且控制这些电路,使它们有节拍地工作。时钟信号频率越高,内部电路工作速度越快。

2.1.3、中断控制器

当CPU执行正常的程序时,如果在INT0或INT1端给中断控制器送入一个中断请求信号(一般为低电平信号),中断控制器马上让CPU停止正在执行的程序,转而去执行ROM中特定的某段程序,执行完该段程序后再继续执行先前中断的程序。

MCS-51系列单片机中断控制器可以接受5个中断请求:两个外部中断请求、两个定时器/计数器中断请求和串行通信口中断请求。

2.1.4、ROM

ROM(只读存储器,又称程序存储器)是一种具有存储功能的电路,断电后其中的信息不会消失。ROM主要用来存储程序代码。欲使单片机完成不同的控制功能,可以将不同的程序写入到ROM中。

工作时,CPU会自动从ROM中读取程序再进行运算,然后通过I/O接口向外部电路输出相应的控制信号。早期的ROM一般是单独的芯片,没有集成在单片机内部(如8031单片机内部就没有ROM,需要外接),现在的单片机基本上都将ROM集成在内部。

ROM主要有下面几种。

(1)Mask ROM(掩膜ROM)

Mask ROM中的内容由厂家生产时一次性写入,以后不能改变。这种ROM成本低,适用于大批量生产。

(2)PROM(可编程ROM)

PROM中没有内容,编程者可将程序写入内部,但只能写一次,以后不能更改。如果PROM在单片机内部,PROM中的程序写错了,整个单片机便不能使用。

(3)EPROM(紫外线可擦写PROM)

EPROM是一种可擦写的PROM,采用EPROM的单片机上面有一块透明的石英窗口,平时该窗口被不透明的标签贴封,当需要擦除EPROM内部的信息时,可撕开标签,再用紫外线照射透明窗口15~30min,即可将内部的信息全部擦除,然后重新写入新的信息。

(4)EEPROM(电可擦写PROM)

EEPROM也是一种可反复擦写的存储器,但它不像EPROM需要用紫外线来擦除信息,该ROM只要加适当的擦除电压,就可以轻松快速地擦除其中的信息,然后重新写入信息。EEPROM反复擦写可达1000多次,目前主流单片机内部就采用这种ROM。

2.1.5、RAM

RAM(随机存取存储器,又称可读写存储器、数据存储器)也是一种存储电路。RAM的特点是:可以存入信息(称作写),也可以将信息取出(称作读),断电后存储的信息会全部消失。单片机的RAM主要用来存储一些临时数据。

2.1.6、定时器、计数器

定时器/计数器就像单片机的内部时钟或计数器,可以根据需要将它设为定时器或计数器。如果要求CPU在一段时间(如5ms)后执行某段程序,可让定时器/计数器工作在定时状态,定时器/计数器开始计时,当计到5ms后马上产生一个请求信号送到中断控制器,中“断控制器则输出信号让CPU停止正在执行的程序,转而去执行ROM中特定的某段程序。

如果定时器/计数器工作在计数状态,可以从T0或T1端输入脉冲信号,定时器/计数器开始对输入的脉冲进行计数,当计数到某个数值时,马上输出一个信号送到中断控制器,让中断控制器控制CPU去执行ROM中特定的某段程序。

2.1.7、串行通信口

串行通信口是单片机和外部设备进行串行通信的接口。当单片机要将数据传送给外部设备时,可以通过串行通信口将数据由TXD端输出;外部设备送来的数据可以从RXD端输入,通过串行通信口将数据送入单片机。

串行是指数据传递的一种方式,串行传递数据时,数据是一位一位进行传递的。

2.1.8、I/O接口

MCS-51系列单片机有4组I/O接口,它们分别是P0、P1、P2和P3端口。单片机通过这些端口与外部设备连接。这4组端口都是复用端口,既可作为输出端口,也可以作为输入端口,具体作为哪种端口由单片机内部的程序来决定。

当这些端口用作输入端口时,可以外接键盘、各种传感器和检测开关等输入部件;如果用作输出端口,可以接发光二极管、继电器等输出部件。

单片机在工作时,输入部件通过输入端口将输入信号送入内部,CPU根据输入信号来执行ROM中的相关程序,然后从输出端口输出控制信号,控制输出部件工作。

2.1.9、总线控制器

单片机内部用ROM来存储写入的程序,但内部的ROM容量通常较小,只能存储一些不复杂的程序,如果遇到一些大型复杂的程序,所占容量大,单片机内部的 ROM 将无法完全装下,解决这个问题的方法就是使用外接存储器。总线控制器主要用于控制外接存储器,使它能像单片机内部的存储器一样使用。

2.2、MCS-51系列单片机的引脚功能

习单片机技术,一定要了解单片机中各引脚的功能。MCS-51系列单片机共有40个引脚,各引脚的排列如图2-2所示。

MCS-51系列单片机的40个引脚根据功能可以分作3类:基本工作条件引脚、输入/输出(I/O)引脚和控制引脚。

2.2.1、基本工作条件引脚

单片机基本工作条件引脚有电源引脚、复位引脚和时钟引脚,只有具备了基本工作条件,单片机才能开始工作。

文章图片3

图2-2 MCS-51系列单片机各引脚排列图

(1)电源引脚

0脚为电源正极引脚(VCC),20脚为电源负极引脚(VSS)。

电源正极引脚一般接5V电源,电源负极引脚接地。

(2)复位引脚

9脚为复位引脚(RST/VPD)。

在单片机接通电源后,为了使内部电路正常工作,需要复位电路为它提供复位信号,使内部电路进入初始状态,然后才开始工作。MCS-51 系列单片机采用高电平复位,即外接复位电路给复位引脚送入高电平信号后,就可以对单片机内部电路进行复位。

9脚还具有掉电保持功能,为了防止掉电使单片机内部RAM中的数据丢失,可在该脚再接一个备用电源,掉电时,由备用电源为该“脚提供4.5~5.5V的电压,可保持RAM中的数据不会丢失。

(3)时钟引脚

18、19脚为时钟引脚(XTAL2、XTAL1)。

单片机内部有大量的数字电路,这些数字电路工作时需要时钟信号进行控制,才能有次序、有节拍地工作。单片机内部的时钟振荡器与时钟引脚外接的定时电路构成时钟振荡电路,产生时钟信号供给内部电路使用;另外,也可以由外部的振荡器产生时钟信号,通过时钟引脚送入单片机,供给内部电路。

2.2.2、输入、输出引脚

MCS-51系列单片机有P0、P1、P2和P3共4组I/O接口,每组接口又有8个引脚:P0端口引脚P0.0~P0.7,P1端口引脚P1.0~P1.7,P2端口引脚P2.0~P2.7,P3端口引脚P3.0~P3.7。这4组接口既可用作输入端口将外部信号输入单片机,也可以用作输出端口将信号从单片机内输出。另外,这些接口还具有一些其他功能,具体说明如下。

P0端口(32~39脚)的功能有:输入8路信号,输出8路信号,用作8位数据总线,或用作16位地址总线中的低8位地址总线。

P1端口(1~8脚)的功能有:输入8路信号,输出8路信号。

P2端口(21~28脚)的功能有:输入8路信号,输出8路信号,用作16位地址总线中的高8位地址总线。

P3端口(10~17脚)的功能有:输入8路信号,输出8路信号。P3端口的8个引脚还具有其他功能,具体说明如下。

P3.0:用作串行数据输入端(RXD)。

P3.1:用作串行数据输出端(TXD)。

P3.2:用作外部中断0请求信号输入端如下:

文章图片4

P3.3:用作外部中断1请求信号输入端如下:

文章图片5

P3.4:用作定时器/计数器T0的外部脉冲信号输入端(T0)。

P3.5:用作定时器/计数器T1的外部脉冲信号输入端(T1)。

P3.6:该端在写片外RAM时,输出写控制信号如下:

文章图片6

P3.7:该端在读片外RAM时,输出读控制信号如下:

文章图片7

P0、P1、P2、P3端口具有多种功能,具体应用哪一种功能,由单片机内部的程序来决定。需要注意的是,在某一时刻,端口的某一引脚只能用作一种功能。

2.2.3、控制引脚

控制引脚的功能主要有:当单片机外接存储器(RAM或ROM)时,通过控制引脚控制外接存储器,使单片机能像使用内部存储器一样使用外接存储器;在向单片机编程(即向单片机内部写入编好的程序)时,编程器通过控制引脚使单片机进入编程状态,然后才能将程序写入单片机。

控制引脚的功能说明如下。

EA/VPP (31脚):存储器使用控制输入端/编程电压输入端。

当EA=1(高电平)时,单片机使用内部存储器;当EA=0(低电平)时,单片机使用外接存储器。在用编程器往单片机写入程序时,要在该脚加12~25V的编程电压。

PSEN (29脚):程序存储允许输出端。它是外部ROM读选通控制端,当单片机要从外接ROM 中读取信息时,该端要输出一个低电平给外接ROM。

ALE/(30脚):低8 位地址锁存允许信号输出端/编程脉冲输入端。

在外接存储器时,如图2-3所示,该脚输出控制信号到单片机的外接锁存器,让锁存器将P0 端口送来的 8 位地址信号锁存起来,当作低 8 位地址信号A0~A7(高8位地址A8~A15由P2端口送出),这样P0端口不用再输出8位地址信号,就可以空闲下来,用来传送8位数据信号。在单片机编程时,编程器由该脚将编程脉冲输入单片机。

文章图片8

图2-3 单片机外接存储器

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多