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”
以上的准双向口与双向口的差别

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Qt开发学习笔记01

设置窗口背景图 在 .h 文件中添加引用和方法 #include <QPainter> #include <QPixmap> void paintEvent(QPaintEvent *);.cpp 文件中实现 paintEvent void sur_dev::paintEvent(QPaintEvent *ev) {QPainter painter(this);QPixmap pix;pix.load(":/image/bj01…

openeuler安装Google浏览器

1.安装Google浏览器 下载安装文件 wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm开始安装 yum install -y google-chrome-stable_current_x86_64.rpm2.安装todesk软件 https://www.todesk.com/linux.html 安装命令&#xff1a; sudo r…

计算机网络实用工具之nbtscan

简介 nbscan是一个用于扫描IP网络的NetBIOS名称信息的程序。它向提供范围内的每个地址发送NetBIOS状态查询&#xff0c;并以人类可读的形式列出接收到的信息。对于每个响应的主机&#xff0c;它列出了IP地址、NetBIOS计算机名、登录用户名和MAC地址。 对于安全检查、网络发现…

六要素超声波气象站气象监测小能手

随着科技的发展&#xff0c;人类对天气的掌控越来越强。六要素超声波气象站成为了现代气象预测的重要工具。本文将介绍这种气象站的特点、功能和应用&#xff0c;以及它如何改变我们对天气的预测和应对方式。 一、六要素超声波气象站简介 WX-CSQX6 六要素超声波气象站是一种集…

100G光模块的选购技巧——帮助您节省数据中心成本

数据中心在确保信息的即时可用性和访问性方面扮演着至关重要的角色。随着数据呈指数级增长&#xff0c;数据中心运营商一直在积极寻求优化其基础设施和降低成本的有效途径。在数据中心这个复杂生态系统中&#xff0c;100G光模块是一个不可或缺的部分&#xff0c;它对于实现高速…

SpringBoot3-集成mybatis

1、pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/POM/4.0.…

小航助学题库白名单竞赛考级蓝桥杯等考scratch(16级)(含题库教师学生账号)

需要在线模拟训练的题库账号请点击 小航助学编程在线模拟试卷系统&#xff08;含题库答题软件账号&#xff09; 需要在线模拟训练的题库账号请点击 小航助学编程在线模拟试卷系统&#xff08;含题库答题软件账号&#xff09;

2022年第十一届数学建模国际赛小美赛B题序列的遗传过程解题全过程文档及程序

2022年第十一届数学建模国际赛小美赛 B题 序列的遗传过程 原题再现&#xff1a; 序列同源性是指DNA、RNA或蛋白质序列之间的生物同源性&#xff0c;根据生命进化史中的共同祖先定义[1]。DNA、RNA或蛋白质之间的同源性通常根据它们的核苷酸或氨基酸序列相似性来推断。显著的相…

【C++11(二)】lambda表达式以及function包装器

&#x1f493;博主CSDN主页:杭电码农-NEO&#x1f493;   ⏩专栏分类:C从入门到精通⏪   &#x1f69a;代码仓库:NEO的学习日记&#x1f69a;   &#x1f339;关注我&#x1faf5;带你学习C   &#x1f51d;&#x1f51d; C11 1. 前言2. lambda表达式的提出3. lambda表达…

Python之html2text,清晰解读HTML内容!

更多Python学习内容&#xff1a;ipengtao.com 大家好&#xff0c;我是彭涛&#xff0c;今天为大家分享 Python之html2text&#xff0c;清晰解读HTML内容&#xff0c;全文3900字&#xff0c;阅读大约10分钟。 HTML是Web开发中常见的标记语言&#xff0c;但有时我们需要将HTML内容…

数据结构算法-归并排序

引言 小明和小森是超市的货架管理人员&#xff0c;他们每天都要确保货架上的商品摆放整齐、有序。一天&#xff0c;他们发现一个货架上的商品有些混乱&#xff0c;需要尽快进行补货。由于该货架上的商品种类繁多&#xff0c;不同种类的商品之间还要考虑价格、销量等因素&#…

Volumetric Lights 2 HDRP

高清晰度渲染管道,包括先进的新功能,如半透明阴影图和直接灯光投射加上许多改进。 插件是一个快速,灵活和伟大的前瞻性光散射解决方案的高清晰度渲染管道。只需点击几下,即可改善场景中的照明视觉效果。 兼容: 点光源 聚光灯 碟形灯 矩形灯 通过覆盖摄像机周围大面积区域的…

算法通关村第二关—K个一组反转(黄金)

K个一组翻转链表 题目介绍 LeetCode25.给你一个链表&#xff0c;每k个节点一组进行翻转&#xff0c;请你返回翻转后的链表。k是一个正整数&#xff0c;它的值小于或等于链表的长度。如果节点总数不是k的整数倍&#xff0c;那么请将最后剩余的节点保持原有顺序。进阶&#xff1…

Android Init系统:引领设备启动的先锋

Android Init系统&#xff1a;引领设备启动的先锋 引言 Init系统是一个操作系统启动的必要组件&#xff0c;负责在启动时初始化所有系统资源、服务和应用程序。在Android设备中&#xff0c;Init系统起到了至关重要的作用&#xff0c;它是启动过程中的第一个进程&#xff0c;负…

题目:谈判(蓝桥OJ 545)

题目描述&#xff1a; 解题思路&#xff1a; 本题采用贪心的思想&#xff0c;与蓝桥的合并果子题思路一样。可以使用优先对列&#xff0c;输入进去后自动排序。将两个最小的合并再放入对列中&#xff0c;并将值加入到ans&#xff0c;最终结果即ans。如下图&#xff1a;xy为4&a…

kyuubi整合flink yarn session mode

目录 概述配置flink 配置kyuubi 配置kyuubi-defaults.confkyuubi-env.shhive 验证启动kyuubibeeline 连接使用hive catlogsql测试 结束 概述 flink 版本 1.17.1、kyuubi 1.8.0、hive 3.1.3、paimon 0.5 整合过程中&#xff0c;需要注意对应的版本。 注意以上版本 配置 ky…

JavaScript面向对象编程的奥秘揭秘:掌握核心概念与设计模式

​&#x1f308;个人主页&#xff1a;前端青山 &#x1f525;系列专栏&#xff1a;JavaScript篇 &#x1f516;人终将被年少不可得之物困其一生 依旧青山,本期给大家带来JavaScript篇专栏内容:JavaScript-面向对象 目录 什么是面向对象&#xff1f; 类与对象的主要区别 创建…

ambari 开启hdfs回收站机制

hdfs回收站类似于我们常用的windows中的回收站&#xff0c;被删除的文件会被暂时存储于此&#xff0c;和回收站相关的参数有两个&#xff1a; fs.trash.interval&#xff1a;默认值为0 代表禁用回收站&#xff0c;其他值为回收站保存文件时间&#xff0c;单位为分钟 fs.trash…

【Vue第2章】Vue组件化编程

目录 2.1 模块与组件、模块化与组件化 2.1.1 模块 2.1.2 组件 2.1.3 模块化 2.1.4 组件化 2.2 非单文件组件 2.3.1 代码 2.3.1.1 基本使用 2.3.1.2 几个注意点 2.3.1.3 组件的嵌套 2.3.1.4 VueComponent 2.3.1.5 一个重要的内置关系 2.3 单文件组件 2.3.1 一个.v…

2024年网络安全行业前景和技术自学

很多人不知道网络安全发展前景好吗&#xff1f;学习网络安全能做什么&#xff1f;今天为大家解答下 先说结论&#xff0c;网络安全的前景必然是超级好的 作为一个有丰富Web安全攻防、渗透领域老工程师&#xff0c;之前也写了不少网络安全技术相关的文章&#xff0c;不少读者朋…