【微机原理与单片机接口技术】MCS-51单片机的引脚功能介绍

news2024/11/19 19:46:13

前言

       MCS-51是指由美国Intel公司生产的一系列单片机的总称。MCS-51系列单片机型号有很多,按功能分位基本型和增强型两大类,分别称为8051系列单片机和8052系列单片机,两者以芯片型号中的末位数字区分,1为基本型,2为增强型。增强型单片机与基本型单片机相比,其最显著的特点是单片机内部的数据存储器和程序存储器的容量更大,同时增加了一个定时/计数器。

       单片机是将CPU、存储器和输入/输出单元(I/O)等集成在一块硅片上,把电路上的引脚用导线接引到封装基座的引脚上,以便与其他器件连接。封装的主要功能是保护芯片和便于焊接安装等。MCS-51系列中各种型号单片机的引脚是相互兼容的。

如图所示的PDIP封装,共有 40 只引脚,根据引脚用途可分为4大类,分别是电源引脚、时钟引脚、控制引脚和 I/O 引脚。下面对引脚定义及其功能进行说明。

 1.电源引脚

电源引脚用于外接单片机的工作电源。

(1)Vcc(40脚):单片机工作电源电压输入脚。不同型号单片机接入对应的电压电源。单片机芯片的推荐工作电压及电压范围在芯片用户手册中给出,注意在实际应用中务必严格遵守。

(2)GND(20脚):必须接地

2.时钟引脚

XTAL1(19脚)为片内振荡电路的输入端,XTAL2(18脚)为片内振荡电路的输出端

51单片机的 CPU 时钟可由以下两种方式提供。

(1)内部时钟方式:在XTAL1和XTAL2引脚外接一个石英品体或陶瓷晶振和振荡电容,如图所示。

振荡电容通常取10~30pF,石英晶体的频率为0.5~24MHZ,典型值为6MHz、I2MHZ和11.0592MHZ。在石英晶体起振后,XTAL2引脚输出一个2.24V左右的正弦波,XTAL1对地电压约为2.09V。51单片机片内的时钟和石英晶体的自激振荡频率相同,为保证振荡电路的稳定性及快速要求在设计电路板时,晶振和电容应尽量靠近单片机芯片,以减小分布电容对振荡电路的影响。

(2)外部时钟方式:使用外部振荡器脉冲信号,外部CMOS时钟源直接接到XTAL1引脚,XIAL2悬空,如图所示。

3、控制引脚

(1)复位引脚RST(9脚)

RST 为单片机复位输入端,高电平有效。当单片机运行时,若RST引脚输入大于两个机器周期(24个振荡周期)以上的高电平,则触发单片机复位操作,初始化单片机,使单片机重新运行程序,即从序存储器的 0000H 地址单元开始执行指令。

(2)\overline{PSEN}(29脚)

\overline{PSEN}引脚为外部程序存储器读选通信号,低电平有效。当单片机读取外部程序存储器上的数据或指令时,该引脚输出一个负脉冲用于选通外部程序存储器,否则一直输出高电平。外扩ROM 时, \overline{PSEN}引脚连接到外部ROM的\overline{OE}引脚。

(3)ALE/\overline{PROG}(30脚)

ALE/\overline{PROG}为双功能引脚。ALE为地址锁存允许输出端。当单片机访问外部存储器时,ALE引脚输出一个由正向负的负跳沿作为地址锁存信号,用于控制片外的地址锁存器锁存低8位的访问地址。访网地址为16位,低8位由P0口输出,高8位由P2口输出,由于P0口分时复用为低8位地址线8 位数据输入/输出,因此必须将地址低8位锁存起来。
\overline{PROG}为第二功能引脚。在对片内EPROM型单片机(如8751)烧写程序时,该引脚作为编程负脉冲输入端。
除上述两种情况外,该引脚自动输出固定频率的脉冲信号,频率为单片机时钟振荡频率的1/6,可用做外部时钟源或定时计数脉冲。

(4)\overline{EA}/V_{PP}(31脚)

\overline{EA}/V_{PP}为双功能引脚。\overline{EA}引脚为内部程序存储器和外部程序存储器的选择控制端。当\overline{EA}端接高电平(Vcc)时,单片机访间内部程序存储器,即运行内部程序存储器(地址范围为0000H~0FFFH)中的程序,但在程序计数器PC的值超过0FFFH(访问地址超过4KB)时,则自动转到外部程序存储器执行程序。当\overline{EA}端接低电平(GND)时,则只访问外部程序存储器,不管此时是否存在内部程序存储器。对于内部无ROM的8031单片机,程序存储器需外接,则\overline{EA}引脚必须接地(低电平)。

Vpp为第二功能引脚,为片内EPROM或Flash存储器的编程电压输入端,对内部有EPROM的8751单片机,编程电压的21V;对片内为Flash存储器的51单片机,编程电压为12V。

4.I/O引脚

       MCS-51单片机一共有32条输入/输出I/O引脚,由4个8位的并行接口P0、P1、P2和P3组成,每组并口有8位输入/输出接口,命名为Px.0~Px.7(x=0~3)。每个 I/O引脚都可以独立设置为输入或输出引脚。单片机内部设有对应的特殊功能寄存器P0~P3用于控制或读取并口状态,这些寄存器为直接字节寻址,且都支持按位寻址,即支持独立控制或读取某个I/O端口的状态。

(1)P0.0~P0.7(32~39 脚)

本组的8个引脚组成P0口,其中P0.0为最低位,P0.7为最高位。P0口为8位的双向三态口,由两个MOS串接,采用漏极开路输出。P0口可作为通用输入/输出端口,当单片机访问外部存储器或扩
展I/O时,分时复用为16位地址总线的低8位和8位数据总线。

注意,P0口作为地址总线和数据总线时,引脚外部无须外接上拉电阻,但作为通用输入/输出端口时,由于P0口每个I/O引脚内部电路为漏极开路的,无高电平输出能力,因此在引脚外必须接上拉电阻,P0口的引脚带负载能力为8个TTL负载。

(2)P1.0~P1.7(1~8脚)

本组的8个引脚组成P1口,其中P1.0为最低位,P1.7为最高位。P1口为8位准双向I/O口,内置上拉电阻。P1口用做普通输入/输出端口,每个P1口的引脚能驱动4个TTL负载。

(3)P2口(21~28 脚)

本组的8个引脚组成P2口,其中P2.0为最低位,P2.7为最高位。P2口为8位准双向I/O口,内置上拉电阻。P2 可用做通用输入/输出端口,每个P2口的引脚能驱动4个 TTL 负载。当单片机访问外部存储器时,作为16位地址总线的高8位。如果外接的数据存储器(RAM)小于256B,则可以使用字节寻址(Ri间接寻址),此时只使用低8位地址线(P0),P2可作为普通输入输出端口。如果外接的数据存储器大于256B或外接程序存储器,则必须采用字寻址方式,P2作为高8位地址线,P0作为低8位地址线。

(4)P3口(10~17脚)

本组的8个引脚组成P3口,其中P3.0为最低位,P3.7为最高位。P3口为8位准双向I/O口,内置上拉电阻,每个P3口的引脚能驱动4个TTL负载。P3 口除可用做普通输入/输出端口外,还具有第二功能,如表所示。

【例1】 I/O端口操作示例(汇编语言)。

  • P1口输出0000_1111,即P1.7~P1.4输出低电平,P1.3~P1.0输出高电平。
MOV P1, #0F H
  • 置P2.0为1,即P2.0输出高电平。
SETB P2.0
  • 清P2.1为0。
CLR P2.1
  • 翻转P3.0输出,即高电平变为低电平,低电平变为高电平。
CPL P3.0
  • 判断P1.0输入,如果为高电平('1'),则等待(跳转到本指令),否则继续执行后续指令。
JB P1.0, $
  • 判断P1.1输入,如果为低电平('0'),则等待(跳转到本指令),否则继续执行后续指令。
JNB P1.1, $

【例2】I/O端口操作示例(C51)。

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

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

相关文章

高仿原神官网UI 纯html源码

高仿原神官网UI源码介绍 如果您希望打造一个与原神官方网站相似的外观和用户体验,但又不想使用复杂的框架或模板,那么我们的高仿原神官网UI源码将是一个完美的选择。它采用纯HTML5构建,无需任何额外的CSS或JavaScript库支持,即可…

【C语言】深入理解指针

目录 1.字符指针 2.指针数组 3.数组指针 4.数组传参与指针传参 一维数组传参 二维数组传参 一级指针传参 二级指针传参 5.函数指针 6.函数指针数组 7.指向函数指针数组的指针(了解即可) 8.回调函数 回调函数的应用:库函数qsort …

C语言函数栈帧的创建和销毁(逐步分析)

什么是函数栈帧 我们在写C语言代码的时候,经常会把一个独立的功能抽象为函数,所以C程序是以函数为基本单位的。 那函数是如何调用的?函数的返回值又是如何返回的?函数参数是如何传递的?这些问题都和函数栈帧有关系。 …

Linux操作系统基础(六):Linux常见命令(一)

文章目录 Linux常见命令 一、命令结构 二、ls命令 三、cd命令 四、mkdir命令 五、touch命令 六、rm命令 七、cp命令 八、mv命令 九、cat命令 十、more命令 Linux常见命令 一、命令结构 command [-options] [parameter]说明: command : 命令名, 相应功能的英文单词…

vue3 的setup和生命周期

vue3 的setup和生命周期 许多文章认为setup执行时间在beforeCreate 和created 之间,但是通过实际测试发现setup调用在beforecreate之前。 export default {beforeCreate() {console.log(beforeCreate running....);},created() {console.log("created runnin…

前端JavaScript篇之call() 和 apply() 的区别?

目录 call() 和 apply() 的区别? call() 和 apply() 的区别? 在JavaScript中,call()和apply()都是用来改变函数中this指向的方法,它们的作用是一样的,只是传参的方式不同。 call()方法和apply()方法的第一个参数都是…

【北邮鲁鹏老师计算机视觉课程笔记】01 introduction

1 生活中的计算机视觉 生活中的各种计算机视觉识别系统已经广泛地应用起来了。 2 计算机视觉与其他学科的关系 认知科学和神经科学是研究人类视觉系统的,如果能把人类视觉系统学习得更好,可以迁移到计算机视觉。是计算机视觉的理论基础。 算法、系统、框…

curl8.6.0 - CURLE_PEER_FAILED_VERIFICATION

文章目录 curl8.6.0 - CURLE_PEER_FAILED_VERIFICATION概述笔记END curl8.6.0 - CURLE_PEER_FAILED_VERIFICATION 概述 在看一个开源工程, 里面用到了curl和openssl, 但是工程使用vcpkg来管理的包, 用CMake来编译 依赖太多了, win10 编译选项为 vs2019 x64/Win32(或者Ninja)…

kaggle实战语义分割-Car segmentation(附源码)

目录 前言 项目介绍 数据集处理 数据集加载 定义网络 训练网络 验证网络 前言 本篇文章会讲解使用pytorch完成另外一个计算机视觉的基本任务-语义分割。 语义分割是将图片中每个部分根据其语义分割出来,其相比于图像分类的不同点是,图像分类是对…

Windows下搭建Redis Sentinel

下载安装程序 下载Redis关于Windows安装程序,下载地址 下载成功后进行解压,解压如下: 配置redis和sentinel 首先复制三份redis.windows.conf,分别命名为:redis.6379.conf、redis.6380.conf、redis.6381.conf&…

【机器学习笔记】回归算法

回归算法 文章目录 回归算法1 线性回归2 损失函数3 多元线性回归4 线性回归的相关系数 1 线性回归 回归分析(Regression) 回归分析是描述变量间关系的一种统计分析方法 例:在线教育场景 因变量 Y:在线学习课程满意度 自变量 X:平台交互性、教…

《CSS 简易速速上手小册》第1章:CSS 基础入门(2024 最新版)

文章目录 1.1 CSS 语法和选择器:挑选你的画笔1.1.1 基础知识1.1.2 重点案例:创建一个响应式导航菜单1.1.3 拓展案例 1:为特定链接添加图标1.1.4 拓展案例 2:创建一个简单的问答折叠面板 1.2 盒模型的基础:构建你的乐高…

Linux 【docker系列1 - docker 安装与使用】

系列文章目录 文章目录 系列文章目录前言一、docker安装二、常用使用1.镜像相关2.读入数据 总结 前言 一、docker安装 docker的官方文档写的非常的详细,它包含了docker在各种环境下的安装,以及可能遇到的问题和解决方案。这里我们只描述docker在contOS上…

Excel+VBA处理高斯光束

文章目录 1 图片导入与裁剪2 获取图片数据3 数据拟合 1 图片导入与裁剪 插入图片没什么好说的,新建Excel,【插入】->【图片】。 由于图像比较大,所以要对数据进行截取,选中图片之后,点击选项卡右端的【图片格式】…

Qt QML学习(一):Qt Quick 与 QML 简介

参考引用 QML和Qt Quick快速入门全面认识 Qt Widgets、QML、Qt Quick 1. Qt Widgets、QML、Qt Quick 区别 1.1 QML 和 Qt Quick 是什么关系? 1.1.1 从概念上区分 QML 是一种用户界面规范和标记语言,它允许开发人员创建高性能、流畅的动画和具有视觉吸引…

pycharm deployment 灰色 一直无法点击

我的development的配置如下,我看了很多教程一直不知道为什么一直是灰色的, 文件夹配置: 如果你这里 Autodect,那么你Mapping 的文件夹应该是应该省略这个前缀的,例如我下面,我应该将本地文件夹映射到/home…

解析十六进制雷达数据格式:解析雷达FSPEC数据

以Cat62格式雷达数据为例,十六进制雷达数据部分代码: 3e0120bf7da4ffee0085 base_fspec_processor.h // // Created by qiaowei on 2024-02-03. //#ifndef RADARDATACONTROLLER_BASE_FSPEC_PROCESSOR_H #define RADARDATACONTROLLER_BASE_FSPEC_PROCESS…

音视频/流媒体协议和编码汇总

一、流媒体协议 1. RTMP/RTMPT/RTMPS/RTMPE 等多变种 是应用层协议,使用TCP作为底层传输协议,并提供了低延迟、高带宽利用率和实时性的特点。 (1)RTMP协议是Adobe的私有协议,未完全公开 (2)一般传输的是 flv,f4v 格式流 2. RTP/RTCP/SRTP …

【51单片机】LCD1602(可视化液晶屏)调试工具的使用

前言 大家好吖,欢迎来到 YY 滴 单片机系列 ,热烈欢迎! 本章主要内容面向接触过单片机的老铁 主要内容含: 欢迎订阅 YY滴C专栏!更多干货持续更新!以下是传送门! YY的《C》专栏YY的《C11》专栏YY…

网络编程..

1.互联网 有了互联网的出现 我们就可以足不出户的实现看电影、购物等等操作 我们认知中可能的互联网模型 较为真实的互联网模型 那么数据是如何从一个设备传递到另外一个设备的呢? 2.网络互联模型 统共有三种: 3.TCP/IP协议 TCP/IP是一群协议 里面…