51单片机的硬件组成的功能以及40个引脚的功能

AT89S51单片机的硬件组成

本文主要涉及AT89S51单片机的硬件结构,与89C51还是存在一定的区别文中有说明,介绍了单片机的各硬件的基本功能,并详细介绍了单片机40个引脚的功能

文章目录

  • AT89S51单片机的硬件组成
    • 一、 AT89S51单片机的硬件组成
      • 1.1 功能部件与特性
      • 1.2 C51与S51对比
      • 1.3 片内功能部件
    • 二、 AT89S51的引脚功能
      • 2.1 电源及时钟引脚
        • 2.1.1 电源引脚
        • 2.1.2 时钟引脚
      • 2.2 控制引脚
        • (1)RST (RESET,9脚)
        • (2)EA*/VPP (Enable Address/Voltage Pulse of Programing,31脚)
        • (3)ALE/PROG*(Address Latch Enable/PROGramming,30脚)
        • (4) PSEN* (Program Strobe ENable,29脚)
      • 2.3 并行I/O口引脚

一、 AT89S51单片机的硬件组成

片内结构如图2-1所示。把作为控制应用所必需的基本功能部件都集成在一个集成电路芯片上。
在这里插入图片描述

1.1 功能部件与特性

有如下功能部件和特性:
(1)8位微处理器(CPU);
(2)数据存储器(128B RAM);
(3)程序存储器(4KB Flash ROM);
(4)4个8位可编程并行I/O口(P0口、P1口、P2口、P3口);
(5)1个全双工的异步串行口
(6)2个可编程的16位定时器/计数器
(7)1个看门狗定时器
(8)中断系统具有5个中断源、5个中断向量;
(9)特殊功能寄存器(SFR)26个
(10)低功耗模式有空闲模式掉电模式,且具有掉电模式下的中断恢复模式;
(11)3个程序加密锁定位;

1.2 C51与S51对比

与AT89C51比,AT89S51更突出的优点:
(1)增加在线可编程功能ISP(In System Program),字节和页编程,现场程序调试和修改更加方便灵活;–最重要的一点
(2)数据指针增加到两个,方便了对片外RAM的访问过程;
(3)增加了看门狗定时器,提高了系统的抗干扰能力;
(4)增加断电标志
(5)增加掉电状态下的中断恢复模式

1.3 片内功能部件

片内的各功能部件通过片内单一总线连接而成(见图2-1在文章开头部分),基本结构依旧是CPU 加上外围芯片的传统微机结构。

CPU对各种功能部件的控制是采用特殊功能寄存器(SFR,Special Function Register)的集中控制方式
AT89S51完全兼容AT89C51,在充分保留原来软、硬件条件下,完全可以用AT89S51直接换。

(1)CPU(微处理器)
8位的CPU,与通用CPU基本相同,包括了运算器和控制器两大部分,还有面向控制的位处理功能
(2)数据存储器(RAM)
片内为128B(52子系列为256B),片外最多可扩64KB。
(3)程序存储器(Flash ROM)
片内集成有4KB的Flash存储器(AT89S52 则为8KB;AT89C55片内20KB),如片内容量不够,片外可外扩至64KB。
(4)中断系统
具有5个中断源(52系列有6个),2级中断优先权。
(5)定时器/计数器
2个16位定时器/计数器(52子系列有3个),4种工作方式。
(6)1个看门狗定时器WDT
当CPU由于干扰使程序陷入死循环或跑飞时,WDT可使程序恢复正常运行。
(7)串行口
1个全双工的异步串行口,4种工作方式。可进行串行通信,扩展并行I/O口,还可与多个单片机构成多机系统。
(8) P0 、口P1口、P2口和P3口
4个8位并行I/O口。
(9)特殊功能寄存器(SFR)
(c51–25个)(S51是)26个,对片内各功能部件管理、控制和监视。是各个功能部件的控制寄存器状态寄存器,映射在片内RAM区80H~FFH内

二、 AT89S51的引脚功能

AT89S51与51系列中各种型号芯片的引脚互相兼容。目前多采用40只引脚双列直插,如图2-2。此外,还有44引脚的PLCC和TQFP封装方式的芯片。
在这里插入图片描述

引脚按其功能可分为如下3类:
(1)电源及时钟引脚—VCC、VSS;XTAL1、XTAL2。
(2)控制引脚— PSEN*、ALE/PROG*、EA*/VPP、RST(RESET)
(3)I/O口引脚——P0、P1、P2、P3,为4个8位I/O口

2.1 电源及时钟引脚

2.1.1 电源引脚

(1)VCC(40脚):+5V电源。
(2)VSS(20脚):数字地。
在这里插入图片描述

2.1.2 时钟引脚

在这里插入图片描述

(1)XTAL1(19脚):片内振荡器反相放大器和时钟发生器电路输入端。用片内振荡器时,该脚接外部石英晶体和微调电容。外接时钟源时,该脚接外部时钟振荡器的信号
(2)XTAL2(18脚):片内振荡器反相放大器的输出端。当使用片内振荡器,该脚连接外部石英晶体和微调电容。当使用外部时钟源时,本脚悬空

2.2 控制引脚

在这里插入图片描述

(1)RST (RESET,9脚)

复位信号输入,在引脚加上持续时间大于2个机器周期的高电平,可使单片机复位。正常工作,此脚应 ≤ 0.5V
当看门狗定时器溢出输出时,该脚将输出长达96个时钟振荡周期的高电平。

(2)EA*/VPP (Enable Address/Voltage Pulse of Programing,31脚)

EA*:
引脚第一功能:外部程序存储器访问允许 控制端。

EA=1*,在PC值不超出0FFFH(即不超出片内4KB Flash存储器的地址范围)时,单片机读片内程序存储器(4KB)中的程序,但PC值超出0FFFH (即超出片内4KB Flash地址范围)时,将自动转向读取片外60KB(1000H-FFFFH)程序存储器空间中的程序。

EA=0*,只读取外部的程序存储器中的内容,读取的地址范围为0000H~FFFFH,片内的4KB Flash 程序存储器不起作用。

VPP

引脚第二功能,对片内Flash编程,接编程电压。

(3)ALE/PROG*(Address Latch Enable/PROGramming,30脚)

ALE为CPU访问外部程序存储器或外部数据存储器提供地址锁存信号,将低8位地址锁存在片外的地址锁存器中。
在这里插入图片描述

此外,单片机正常运行时,ALE端一直有正脉冲信号输出,此频率为时钟振荡器频率fosc的1/6。可作外部定时或触发信号用。
注意,每当AT89S51访问外部RAM时(执行MOVX类指令),要丢失一个ALE脉冲。
如需要,可将特殊功能寄存器AUXR(地址为8EH,将在后面介绍)的第0位(ALE禁止位)置1,来禁止ALE操作,但执行访问外部程序存储器或外部数据存储器指令“MOVC”或“MOVX”时,ALE仍然有效。即ALE禁止位不影响对外部存储器的访问。

PROG*:引脚第二功能,对片内 Flash编程,为编程脉冲输入

(4) PSEN* (Program Strobe ENable,29脚)

片外程序存储器读选通信号,低有效。

2.3 并行I/O口引脚

(1)P0口:8位,漏极开路的双向I/O口
当外扩存储器及I/O接口芯片时,P0口作为低8位地址总线及数据总线的分时复用端口

P0口也可作通用的I/O口用,需加上拉电阻,这时为准双向口。作为通用I/O输入,应先向端口写入1。可驱动8个LS型TTL负载。

(2)P1口:8位,准双向I/O口,具有内部上拉电阻

准双向I/O口,作为通用I/O输入时,应先向端口锁存器写1
P1口可驱动4个LS型TTL负载。

P1.5/MOSIP1.6/MISOP1.7/SCK可用于对片内Flash存储器串行编程和校验,它们分别是串行数据输入输出移位脉冲引脚

(3)P2口:8位,准双向I/O口,具有内部上拉电阻。

当AT89S51扩展外部存储器及I/O口时,P2口作为高8位地址总线用,输出高8位地址。

P2口也可作为普通的I/O口使用。当作为通用I/O输入时,应先向端口输出锁存器写1。P2口可驱动4个LS型TTL负载

(4)P3口:8位,准双向I/O口,具有内部上拉电阻。

可作为通用的I/O口使用。作为通用I/O输入,应先向端口输出锁存器写入1。可驱动4个LS型TTL负载。

P3口还可提供第二功能。第二功能定义如表2-1,应熟记。

在这里插入图片描述

综上所述,P0口可作为总线口,为双向口。作为通用的I/O口使用时,为准双向口,这时需加上拉电阻P1口、P2口、P3口均为准双向口
注意:准双向口与双向口的差别。准双向口仅有两个状态。而P0口作为总线使用,口线内无上拉电阻,处于高阻“悬浮”态。故P0口为双向三态I/O口
为什么P0口要有高阻“悬浮”态?
准双向I/O口则无高阻的“悬浮”状态。
另外,准双向口作通用I/O的输入口使用时,一定要向该口先写入“1”
以上的准双向口与双向口的差别

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/224445.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

javaee实验:文件上传及拦截器的使用

目录 文件上传ModelAttribute注解实验目的实验内容实验过程项目结构编写代码结果展示 文件上传 Spring MVC 提供 MultipartFile 接口作为参数来处理文件上传。 MultipartFile 提供以下方法来获取上传的文件信息:  getOriginalFilename 获取上传的文件名字&#x…

数据结构之交换排序

目录 交换排序 冒泡排序 冒泡排序的时间复杂度 快速排序 快速排序单趟排序的时间复杂度 快速排序的时间复杂度 交换排序 在日常生活中交换排序的使用场景是很多的,比如在学校做早操,老师通常会让学生按大小个排队,如果此时来了一个新学…

【电路笔记】-交流电路中的电阻器

交流电路中的电阻器 文章目录 交流电路中的电阻器1、概述2、交流电路中的电阻器示例 13、交流电路中的电阻器示例2 电阻器也可用于交流电源,其中消耗的电压、电流和功率以有效值给出。 1、概述 在之前的文章中,我们研究了电阻器及其连接,并使…

vue2 echarts饼状图,柱状图,折线图,简单封装以及使用

vue2 echarts饼状图,柱状图,折线图,简单封装以及使用 1. 直接上代码(复制可直接用,请根据自己的文件修改引用地址,图表只是简单封装,可根据自身功能,进行进一步配置。) …

<Linux>(极简关键、省时省力)《Linux操作系统原理分析之Linux文件管理(1)》(25)

《Linux操作系统原理分析之Linux文件管理(1)》(25) 8 Linux文件管理8.1 Linux 文件系统概述8.2 EXT2 文件系统8.2.1 EXT2 文件系统的构造8.2.2 EXT2 超级块(super block)8.2.3 组描述符8.2.4 块位图 8.3 EX…

Linux 进程地址空间

文章目录 进程地址空间进程地址空间结构页表虚拟内存写时拷贝 进程地址空间 进程地址空间难以定义,因为它更像是一个中间件。 程序从磁盘中加载到内存,程序的执行需要硬件资源,所以每个程序启动时会创建至少一条进程,进程作为组…

layui日历插件

layui日历插件: 在已开源的layui日历插件的基础上的改版(原版插件地址:https://gitee.com/smalldragen/lay-calender-mark)https://gitee.com/tangmaozizi/layui-calendar-plugin.gitjava后台代码并没有把项目完整结构上传上去,因…

敏捷:应对软件定义汽车时代的开发模式变革

随着软件定义汽车典型应用场景的落地,汽车从交通工具转向智能移动终端的趋势愈发明显。几十年前,一台好车的定义主要取决于高性能的底盘操稳与动力系统;几年前,一台好车的定义主要取决于智能化系统与智能交互能否满足终端用户的用…

分类预测 | Matlab实现OOA-SVM鱼鹰算法优化支持向量机的多变量输入数据分类预测

分类预测 | Matlab实现OOA-SVM鱼鹰算法优化支持向量机的多变量输入数据分类预测 目录 分类预测 | Matlab实现OOA-SVM鱼鹰算法优化支持向量机的多变量输入数据分类预测分类效果基本描述程序设计参考资料 分类效果 基本描述 1.Matlab实现OOA-SVM鱼鹰算法优化支持向量机的多变量输…

Python中组合数据类型

1.常见的组合类型有3大类: 集合类型:是一个元素集合,元素之间无序,相同元素在集合中唯一存在。集合(set)序列类型:是一个元素向量,元素之间存在先后关系,通过序号访问&a…

sklearn随机森林 测试 路面点云分类

一、特征5个坐标 坐标-特征-类别 训练数据 二、模型训练 记录分享给有需要的人,代码质量勿喷 import numpy as np import pandas as pd import joblib#region 1 读取数据 dir D:\\py\\RandomForest\\ filename1 trainRS filename2 .csv path dirfilename1file…

QT 中基于 TCP 的网络通信 (备查)

基础 基于 TCP 的套接字通信需要用到两个类: 1)QTcpServer:服务器类,用于监听客户端连接以及和客户端建立连接。 2)QTcpSocket:通信的套接字类,客户端、服务器端都需要使用。 这两个套接字通信类…

基于PicGo实现Typora图片自动上传GitHub

文章目录 一. 引言二. 原理三. 配置3.1 GitHub 设置3.2 下载配置 PicGo3.3 配置 Typora3.4 使用 一. 引言 Typora是一款非常好的笔记软件,但是有一个比较不好的地方:默认图片是存放在本地缓存中。这就会导致文件夹一旦被误删或电脑系统重装而忘记备份文件…

6.1810: Operating System Engineering 2023 <Lab4 traps: Traps>

一、本节任务 二、要点(Traps and system calls) 有三种事件会使 CPU 暂停当前的指令执行,并强制将控制转移到处理该事件的特殊代码中: 系统调用(ecall);异常(如非法指令&#xff…

VSCode之C++ CUDA入门:reduce的N+1重境界

背景 Reduce是几乎所有多线程技术的基础和关键,同样也是诸如深度学习等领域的核心,简单如卷积运算,复杂如梯度聚合、分布式训练等,了解CUDA实现reduce,以及优化reduce是理解CUDA软硬件连接点的很好切入点。 硬件环境&…

JVM 分析GC日志

GC日志参数 -verbose:gc 输出gc日志信息,默认输出到标准输出 -XX:PrintGC 输出GC日志。类似:-verbose:gc -XX:PrintGCDetails 在发生垃圾回收时打印内存回收详细的日志,并在进程退出时输出当前内存各区域分配情况 -XX:PrintGCTimeStam…

【TiDB理论知识10】TiDB6.0新特性

新特性 Placement Rules in SQL 小表缓存 内存悲观锁 Top SQL TiDB Enterprise Manager 一 Placement Rules in SQL Placement Rules in SQL 之前会遇到的问题 比如 北京的业务需要访问 T2 和 T3表 ,但是T3表的数据在纽约 纽约的业务需要问访T4 T5 T6表…

2023 金砖国家职业技能大赛网络安全省赛理论题样题(金砖国家未来技能挑战赛)

2023 金砖国家职业技能大赛网络安全省赛理论题样题(金砖国家未来技能挑战赛) 一、参加比赛的形式 团队参与,每队2名选手(设队长1名)。 二、项目项目阶段简介 项目由四个阶段组成,将按顺序完成。向参与者…

Notes数据直接在Excel中统计

大家好,才是真的好。 我希望你看过前面两篇内容《Domino REST API安装和运行》和《Domino REST API安装和运行》,因为今天我们正是使用REST API方式在Excel中查询和统计Notes数据。 不过首先你得知道一个OData协议,全名Open Data Protocol(…