问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

单片机原理及应用笔记:80C51单片机内部结构与项目实现

创作时间:
作者:
@小白创作中心

单片机原理及应用笔记:80C51单片机内部结构与项目实现

引用
CSDN
1.
https://blog.csdn.net/WL999655/article/details/142464921

本文详细介绍了80C51单片机的内部结构、组成、引脚功能、存储器组织以及特殊功能寄存器(SFR)的概念和应用。文章还包含了两个基于80C51单片机的LED灯控制项目,展示了如何通过编程实现对硬件的控制。

模块一:80C51单片机认识

项目1:80C51单片机内部结构认识

80C51单片机内部结构包括一个8位CPU、4KB ROM或EPROM(89C51无ROM)、128字节RAM、21个特殊功能寄存器SFR、4个8位并行I/O口、一个可编程全双工串行口、具有5个中断源的中断结构,支持两种优先级和嵌套中断、两个16位的定时器/计数器T0和T1,以及一个集成的片内振荡器和时钟电路。

80C51单片机的内部结构主要由以下几部分组成:

  1. 中央处理器(CPU):80C51的核心是一个8位CPU,负责执行程序中的各种指令,如逻辑运算、算术运算等。它由运算器(ALU)、控制器和专用寄存器组构成。运算器负责基本的算术和逻辑操作,而控制器则负责指令的解码与执行流程控制。专用寄存器组包括了程序计数器PC、累加器A、状态寄存器PSW等关键组件。

  2. 存储器:80C51内置了4KB的只读存储器(ROM)或EPROM,用于存储固件或程序代码。此外,它还配备了128字节的数据存储器(RAM),用于存储变量和临时数据。这些存储器是执行程序时不可或缺的部分,其中ROM用于长期保存程序,而RAM则用于动态数据处理。

  3. 输入输出接口:80C51提供了4个8位并行I/O端口,这些端口可以配置为输入或输出,用于与外部设备进行数据交换。同时,它还配备了一个全双工串行通信接口,支持UART协议,可用于与其他设备进行串行通信。

  4. 定时器与中断:80C51包含两个16位的定时器/计数器,可以用于计时或计数事件。此外,它的中断系统支持多种中断源,包括外部中断、定时器中断和串行通信中断,允许设备在需要时快速响应外部事件。

  5. 特殊功能寄存器:SFRs是用于控制单片机各种硬件功能的特殊寄存器,例如定时器、串行口和中断使能等。通过设置这些寄存器的特定位,可以启用或禁用特定的功能。

80C51单片机以其紧凑的结构、丰富的功能和灵活的配置选项,在嵌入式系统中得到了广泛的应用。

项目2:80C51单片机组成

80C51单片机主要由中央处理单元(CPU)、只读存储器(ROM)、随机存取存储器(RAM)、输入/输出端口(I/O)、定时器/计数器、串行通信接口以及中断系统组成。以下是对这些组成部分的具体介绍:

  1. 中央处理单元(CPU):80C51的CPU是一个8位处理器,包括一个8位算术逻辑单元(ALU),4KB ROM或EPROM(89C51无ROM),128字节RAM数据存储器,以及21个特殊功能寄存器SFR。CPU负责执行程序中的指令,进行数据处理和控制操作。

  2. 只读存储器(ROM):用于永久性存储应用程序代码,通常为4KB或8KB大小。ROM中的内容在断电后仍然保持不变,适用于存放固件或不可变的程序代码。

  3. 随机存取存储器(RAM):提供128字节或256字节的数据存储空间,用于存储临时数据和变量。RAM是易失性存储器,意味着一旦断电,其中的数据就会丢失。

  4. 输入/输出端口(I/O):80C51提供了4个8位并行I/O端口,这些端口可以配置为地址/数据线或普通的I/O线,用于与外部设备进行数据交换。

  5. 定时器/计数器:80C51包含两个16位的定时器/计数器,它们可以用于计时或计数事件,并在达到特定条件时产生中断。

  6. 串行通信接口:一个全双工串行口,支持UART协议,可用于与其他设备进行串行通信。

  7. 中断系统:具有五源中断、两级优先级和嵌套中断的能力,允许设备在需要时快速响应外部事件。

项目3:80C51单片机引脚及功能

80C51单片机的引脚及功能主要包括电源引脚、时钟引脚、复位引脚、I/O引脚以及控制引脚。以下是对这些引脚的具体介绍:

  1. 电源引脚:Vcc(第40脚)是芯片的正电源引脚,通常连接到+5V电源。VSS(第20脚)是接地端,用于提供电路的公共接地点。

  2. 时钟引脚:XTAL1(第19脚)和XTAL2(第18脚)是外部晶振连接端,用于接入晶振以产生时钟信号。这些引脚与内部的振荡器配合,为单片机提供必要的时钟脉冲,确保其按照预定的频率运行。

  3. 复位引脚:RST/VPD(第9脚)是复位输入端,当此引脚接收到高电平信号时,会触发单片机复位。在掉电情况下,该引脚还可以作为备用电源输入端,以保护内部RAM中的数据不丢失。

  4. I/O引脚:P0端口(P0.0~P0.7,引脚号为39~32)用作地址/数据线,可寻址64KB ROM和64KB RAM。P2端口(P2.0~P2.7,引脚号为21~28)用作地址线的高8位,与P0口配合,可寻址整个存储器空间。P3端口(P3.0~P3.7,引脚号为10~17)除了基本的I/O功能外,还具有第二功能,如串行通信接口RXD和TXD等。

  5. 控制引脚:EA/VPP(第31脚)用于选择内部或外部程序存储器,并可作为编程电压输入端。ALE/PROG(第30脚)用于地址锁存使能,同时在编程期间作为编程脉冲输入端。

项目4:80C51单片机存储器组织

80C51单片机的存储器组织采用哈佛结构,这种结构将程序存储器和数据存储器分开实现,分别对应于程序存储器和数据存储器的地址空间。以下是对这两种存储器的详细介绍:

程序存储器

  1. 基本型单片机:基本型单片机片内程序存储器容量为4KB,地址范围是0000H~0FFFH。

  2. 增强型单片机:增强型单片机片内程序存储器容量为8KB,地址范围同样是0000H~0FFFH。

数据存储器

  1. 基本型单片机:基本型单片机片内数据存储器均为128字节,地址范围是00H7FH,用于存放运算的中间结果、暂存数据和数据缓冲。这128字节的低32个单元用作工作寄存器,在20H2FH共16个单元是位寻址区,然后是80个单元的通用数据缓冲区。

  2. 增强型单片机:增强型单片机片内数据存储器为256字节,地址范围是00H~FFH。低128字节的配置情况与基本型单片机相同,高128字节为一般RAM,仅能采用寄存器间接寻址方式访问

项目5:SFR简介

特殊功能寄存器(SFR)是80C51单片机中用于控制和监视各种外围设备的关键组件。以下是对SFR的介绍:

  1. 基本概念

定义:SFR是80C51单片机中各功能部件对应的寄存器,用于存放相应功能部件的控制命令、状态或数据。

作用:SFR是80C51单片机中最具有特色的部分,几乎所有80C51系列功能的增加和扩展都是通过增加特殊功能寄存器来达到目的的。

  1. 分类

按可寻址性分类:SFR可分为两类,一类是可以位寻址的,如ACC、IE、P1等;另一类是不可位寻址的,如SP、TMOD等。

按功能模块分类:SFR可分为I/O口相关、中断相关、定时器相关和串口通信相关四大部分。

  1. 应用

在I/O控制中的应用:通过配置SFR的值,可以实现对I/O端口的输入输出控制,从而实现对外部设备的操作。

在定时器控制中的应用:通过配置相关的SFR,可以完成对定时器的工作模式、计数值、中断使能等控制,从而实现对定时器的精确定时和计数功能。

模块二:80C51单片机项目实践

项目1:P3.5引脚控制LED5灯亮仿真

任务实现:

1:程序设计

建立文件夹“practise-3”,然后建立“practise-3”工程项目,最后建立源程序文件“practise-3.c”,输入如下源程序:

方法一:

#include<reg51.h> //包含51单片机寄存器定义的头文件
void main(void)
{
P3=0xdf; //P3=1101 1111B,即P3.5输出低电平
}

方法二:用位操作

#include<reg51.h> //包含51单片机寄存器定义的头文件
sbit D1=P3^5; //位操作
void main(void)
{
D1=0: //P3.5=0,即P3.5输出低电平
}

仿真效果实现:

项目2:P2.0、2.2、2.4、2.6引脚控制LED灯亮仿真(拓展项目)

方法一:

#include<regs1.h> //包含51单片机寄存器定义的头文件
void main(void)
{
P2=0xaa; //P2=10101010B
}

程序设计文件

方法二;

#include<reg51.h>
sbit D1 =P2^0;
sbit D2 =P2^2;
sbit D3 =P2^4;
sbit D4 =P2^6;
void main(void)
{
D1=0;
D2=0;
D3=0;
D4=0;
}

仿真效果文件

模块三:80C51单片机项目实践总结

总结:

本文详细介绍了80C51单片机的内部结构、组成、引脚功能、存储器组织以及特殊功能寄存器(SFR)的概念和应用。文章还包含了两个基于80C51单片机的LED灯控制项目,展示了如何通过编程实现对硬件的控制。以下是对文章内容的总结:

  1. 80C51单片机内部结构:包括一个8位CPU、4KB ROM或EPROM(89C51无ROM)、128字节RAM、21个特殊功能寄存器SFR、4个8位并行I/O口、一个可编程全双工串行口、具有5个中断源的中断结构,支持两种优先级和嵌套中断、两个16位的定时器/计数器T0和T1以及一个集成的片内振荡器和时钟电路。

  2. 80C51单片机组成:主要由中央处理单元(CPU)、只读存储器(ROM)、随机存取存储器(RAM)、输入/输出端口(I/O)、定时器/计数器、串行通信接口以及中断系统组成。

  3. 80C51单片机引脚及功能:包括电源引脚、时钟引脚、复位引脚、I/O引脚以及控制引脚,每个引脚都有其特定的功能和用途。

  4. 80C51单片机存储器组织:采用哈佛结构,将程序存储器和数据存储器分开实现,分别对应于程序存储器和数据存储器的地址空间。

  5. SFR简介:特殊功能寄存器(SFR)是80C51单片机中用于控制和监视各种外围设备的关键组件,通过配置SFR的值,可以实现对I/O端口的输入输出控制,从而实现对外部设备的操作。

  6. 80C51单片机项目实践:通过P3.5引脚控制LED5灯亮仿真和P2.0、2.2、2.4、2.6引脚控制LED灯亮仿真两个项目,展示了如何通过编程实现对硬件的控制。

本文提供了关于80C51单片机的全面知识,包括其内部结构、组成、引脚功能、存储器组织以及特殊功能寄存器的概念和应用。同时,通过具体的项目实践,展示了如何在实际项目中应用这些知识。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号