80C51单片机的功能结构与引脚性能

发布者:素心静听最新更新时间:2023-09-30 来源: elecfans关键字:80C51  单片机  功能结构 手机看文章 扫描二维码
随时随地手机看文章

本文着手从集成电路角度去认识单片机,主要介绍了单片机的引脚图及引脚功能,以及单片机简易编程。


首先,先看下80C51单片机的功能结构框图。


80C51单片机属于MCS-51系列单片机,采用40引脚双列直插式DIP(Dual In Line Package),内有128个RAM单元及4K的ROM。

80C51单片机的功能结构与引脚性能

80C51单片机的功能结构框图

下面介绍一下单片机的引脚图及引脚功能(如下图所示),引脚的具体功能将在之后详细介绍。

80C51单片机的功能结构与引脚性能

单片机的40个引脚大致可分为4类:电源、时钟、控制和I/O引脚。

1. 电源:

⑴ VCC -芯片电源,接+5V;

⑵ VSS - 接地端;

2. 时钟:

XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。

3. 控制线:

控制线共有4根

⑴ ALE/PROG:地址锁存允许/片内EPROM编程脉冲

① ALE功能:用来锁存P0口送出的低8位地址

② PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。

⑵ PSEN:外ROM读选通信号。

⑶ RST/VPD:复位/备用电源

① RST(Reset)功能:复位信号输入端。

② VPD功能:在Vcc掉电情况下,接备用电源。

⑷ EA/Vpp:内外ROM选择/片内EPROM编程电源。

① EA功能:内外ROM选择端。

② Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。

4. I/O线

80C51共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。

80C51单片机的功能结构与引脚性能

拿到一块芯片,想要使用它,首先必须要知道怎样连线,我们用的一块称之为89C51的芯片,下面我们就看一下如何给它连线。

1、电源:这当然是必不可少的了。单片机使用的是5V电源,其中正极接40管脚,负极(地)接20管脚。

2、振荡电路:单片机是一种时序电路,必须供给脉冲信号才能正常工作,在单片机内部已集成了振荡器,使用晶体振荡器,接18、19脚。只要买来晶体振荡器,电容,连上就能了,按图1接上即可。

3、复位管脚:按图1中画法连好,至于复位是何含义及为何需要复要复位,在单片机功能中介绍。

4、EA管脚:EA管脚接到正电源端。 至此,一个单片机就接好,通上电,单片机就开始工作了。


我们的第一个任务是要用单片机点亮一只发光二极管LED,显然,这个LED必须要和单片机的某个管脚相连,不然单片机就没法控制它了,那么和哪个管脚相连呢?单片机上除了刚才用掉的5个管脚,还有35个,我们将这个LED和1脚相连。(见图1,其中R1是限流电阻


按照这个图的接法,当1脚是高电平时,LED不亮,只有1脚是低电平时,LED才发亮。因此要1脚我们要能够控制,也就是说,我们要能够让1管脚按要求变为高或低电平。即然我们要控制1脚,就得给它起个名字,总不能就叫它一脚吧?叫它什么名字呢?设计51芯片的INTEL公司已经起好了,就叫它P1.0,这是规定,不能由我们来更改。

80C51单片机的功能结构与引脚性能

图1 单片机简易应用电路图

单片机简易编程

名字有了,我们又怎样让它变‘高’或变‘低’呢?叫人做事,说一声就能,这叫发布命令,要计算机做事,也得要向计算机发命令,计算机能听得懂的命令称之为计算机的指令。让一个管脚输出高电平的指令是SETB,让一个管脚输出低电平的指令是CLR。因此,我们要P1.0输出高电平,只要写SETB P1.0,要P1.0输出低电平,只要写CLR P1.0就能了。


现在我们已经有办法让计算机去将P10输出高或低电平了,但是我们怎样才能计算机执行这条指令呢?总不能也对计算机也说一声了事吧。要解决这个问题,还得有几步要走。

第一,计算机看不懂SETBCLR之类的指令,我们得把指令翻译成计算机能懂的方式,再让计算机去读。计算机能懂什么呢?它只懂一样东西--数字。因此我们得把SETB P1.0变为(D2H,90H ),把CLR P1.0变为(C2H,90H ),至于为什么是这两个数字,这也是由51芯片的设计者--INTEL规定的,我们不去研究。


第二步,在得到这两个数字后,怎样让这两个数字进入单片机的内部呢?这要借助于一个硬件工具“编程器”.如果你还不知道是什么是编程器,我来介绍一下,就是把你在电脑上写出来来的代码用汇编器等编译器生成的一个目标烧写到单片机的eprom里面去的工具,80c51这种类型的单片机编程是一件很麻烦的事情,必要要先装到编程器上编程后才能在设备上使用,而目前最新的AT89s51或者STC89C51单片机能支持在线编程(isp)功能,不用拔出来利用简单的电路就可以实现把代码写入单片机内部。


我们将编程器与电脑连好,运行编程器的软件,然后在编缉区内写入(D2H,90H)见图2,写入……好,拿下片子,把片子插入做好的电路板,接通电源……什么?灯不亮?这就对了,因为我们写进去的指令就是让P10输出高电平,灯当然不亮,要是亮就错了。现在我们再拨下这块芯片,重新放回到编程器上,将编缉区的内容改为(C2H,90H),也就是CLR P1.0,写片,拿下片子,把片子插进电路板,接电,好,灯亮了。因为我们写入的()就是让P10输出低电平的指令。这样我们看到,硬件电路的连线没有做任何改变,只要改变写入单片机中的内容,就能改变电路的输出效果。

80C51单片机的功能结构与引脚性能


关键字:80C51  单片机  功能结构 引用地址:80C51单片机的功能结构与引脚性能

上一篇:基于AT89C52的家用电话控制和报警系统的设计
下一篇:80c51引脚图管脚图及各引脚功能介绍

推荐阅读最新更新时间:2024-11-09 20:51

在avr单片机(atmega16)上移植freertos
atmega16单片机配置: 内存:1KB flash:16KB 结果:移植后flash只剩4KB左右 内存只剩300KB左右 因此:移植之后基本上只能开启一两个任务,内存已经不够了 正文 一.基础铺垫 二.移植freertos 三.重定向printf到uart0 四.makefile的编写 背景: 在学校学习avr一般都是iccavr这个软件,后面工作后vscode + ubuntu成为了习惯,于是搜索后有了vscode + ubuntu + avr-gcc + isp下载hex文件的玩法。 一.基础铺垫 1.在window上安装vscode 2.在window上安装虚拟机+ubuntu 3.使用vscode ssh登录
[单片机]
在avr<font color='red'>单片机</font>(atmega16)上移植freertos
PIC系列单片机的优势是什么
一、引言 据统计,我国的单片机年容量已达1-3亿片,且每年以大约16%的速度增长,但相对于世界市场我国的占有率还不到1%。这说明单片机应用在我国才刚刚起步,有着广阔的前景。培养单片机应用人才,特别是在工程技术人员中普及单片机知识有着重要的现实意义。 当今单片机厂商琳琅满目,产品性能各异。针对具体情况,我们应选何种型号呢?首先,我们来弄清两个概念:集中指令集(CISC)和精简指令集(RISC)。采用CISC结构的单片机数据线和指令线分时复用,即所谓冯.诺伊曼结构。它的指令丰富,功能较强,但取指令和取数据不能同时进行,速度受限,价格亦高。采用RISC结构的单片机数据线和指令线分离,即所谓哈佛结构。这使得取指令和取数据可同时进行,且
[单片机]
PIC系列<font color='red'>单片机</font>的优势是什么
安森美:2020年微控制器趋势和机遇
多芯片模块(MCU) / 共同封装安全处理器 / 通信集成 – 安全挑战 当用户信用卡信息和设施暖通空调(HVAC)系统联接,边缘和嵌入式处理的安全性成为系统结构的主要影响因素。可以采取多种方法来增强数据存储环境中的安全性,但是没有一种方法是万无一失的。 历史表明,安全分层是保护有价值的信息或资产的最佳方法。Fortress和castle设计是安全分层的绝佳示例,随着他人接近有价值的物品,安全性会提高。众所周知的发生在2013年美国一家全国零售连锁店的数据泄露案件中,黑客入侵其中一家商店的HVAC系统中的Web应用程序获取信用卡信息。 那这与微控制器有何关系? 在工业系统中,微控制器对工业物联网(I-IoT)至关重要
[嵌入式]
将程序下载到单片机
首先,我们要把硬件连接好,把板子插到我们的电脑上,打开设备管理器查看所使用的是哪个 COM 口,如图 2-21 所示,找到“USB-SERIAL CH340(COM5)”这一项,这里最后的数字就是开发板目前所使用的 COM 端口号。 图 2-21 查看COM口 然后 STC 系列单片的下载软件——STC-ISP,如图 2-22 所示。 图2-22 程序下载设置 下载软件列出了 5 个步骤:第一步,选择单片机型号,我们现在用的单片机型号是STC89C52RC,这个一定不能选错了;第二步,点击“打开程序文件”,找到我们刚才建立工程的那个 lesson2 文件夹,找到 LED.hex 这个文件,点击打开;第三步,选择刚才查到的
[单片机]
将程序下载到<font color='red'>单片机</font>
汽车MCU的特点和要求
MCU作为一颗性能进行裁剪的小芯片,性能指标是一组综合指标,包括产品内核、主频、存储单元、对外接口、控制方式、AD通道数、工作电压、封装方式、引脚数量和温度适应性等指标,用户在使用时还会考虑工具链的可用性、性价比、可靠性等综合因素,MCU比拼的是对应用场景需求理解程度,比拼的是综合的一揽子指标。 MCU的下游是嵌入式开发,嵌入式开发选择的原则:功能特点、可用性、成本和熟悉程度。MCU是一颗应用驱动型芯片,核心在于服务好客户的需求,满足客户的规格需要。 当前汽车MCU主要是8位、32位产品,在汽车智能化、电动化的驱动下,32位MCU增量最大、增速最快,也是当下缺货最严重的车规芯片第一。 汽车MCU由于应用的特殊工况,工作
[嵌入式]
汽车<font color='red'>MCU</font>的特点和要求
单片机做显示器信号发生器
  在 维修 显示器 时,一般都是接 电脑 主机,经常拔插信号线很不方便。本文介绍的显示器信号发生器就可以替代电脑主机,给显示器一个信号,在维修时能显示各种信号,而且体积很小,携带在外维修也很方便。   我做的这个显示器信号发生器是在国外网站www.alexm.times.lv/vga_tester.htm看到的,电路原理图见下图,   PCB图见下图。主要是用单片机PICl6F84A来输出信号,74HCl64用来显示编码。一般 市场 上销售的彩显信号发生器都在130到200多元,而这个电路整个成本不到40元。   主要器件PICl6F84A市场价在12元左右,一些单片机网站都可以买到。 数码 管是共阳单管,VG
[单片机]
用<font color='red'>单片机</font>做显示器信号发生器
AVR单片机ATmega8工业总线项目的通信处理以及实现
这两天带博主的工程师给了一个小任务给我,使用7个小器件进行半双工的工业485总线通信,使用公司内部标准帧格式,采用主动上传方式每隔一定的定量时间进行数据上传。当然,实现一个器件的数据上传是十分简单的,但是使用大于两个器件进行485工业数据传输的时候就必须要考虑数据碰撞的问题了,因为由于485半双工的特性,同一时间数据只能上传或者下载,但是当多个数据进行数据通信的时候就要小心数据的交叉碰撞。 项目要求,在符合帧格式的前提下使用6台工作器件进行数据主动上传,因为前期设定每台设备的主动上传时间为2min,所以不可避免的遇到一个问题,就是如何进行数据的总线判“忙”检测,并且在其他的数据帧发送完毕后进行数据的发送? 经过博主的资料的查询和带
[单片机]
GD32 MCU上电跌落导致启动异常如何解决
大家是否碰到过MCU上电过程中存在电源波动或者电压跌落导致MCU启动异常的问题?本视频将会为大家讲解可能的原因以及解决方法: GD32 MCU上下电复位波形如下图所示,上电过程中如果存在吃电的模块,比如wifi模块/4G模块/开启某块电路等,可能存在电源电压跌落的情况,此时若MCU在启动过程中可能会造成MCU加载代码异常,进而导致启动异常。电压跌落到POR和PDR之间会有可能出现启动异常,因为该段电压区间为非正常工作电压且不会发生PDR复位。 解决方法上可以有以下两种:1、硬件整改上电波形,在VDD端增加电容,提升VDD的供电能力,进而降低电源波动;2、修改NRST引脚对应的RC阻容,调整MCU启动时间,避开电源电压跌落的
[单片机]

推荐帖子

【pyboardCN V2】使用I2C接口驱动I2C外设DS3231
pyboard上面有I2C类库可以供我们调用,根据邵版主的原话,I2C类库所挂载的I2C接口是STM32F405RG的硬件I2C接口,非GPIO模拟的I2C接口。硬件连线,DS3231连接pyboard的I2C2接口,即PB10和PB11:micropython使用类库操作接口有两种方式,第一种是新建对象来操作,对对象进行操作就是对硬件接口进行操作:i2c=I2C(2)i2c=I2C(2,I2C.MASTER)#新建一个I2C类的对象i2c
donatello1996 MicroPython开源版块
一个不错的avr代码生成软件
运用:avr初始化代码生成T0:CTC:一般用来生成占空比百分之五十的方波,如果是从OC0输出,则选择“匹配时OC0取反”,下面勾选FOC0,同时可选OCIE0(比较匹配中断使能),如果不从OC0输出,选择“不与OC0连接”,后面只选择OCIE0,通过中断来控制。TOIE0在这个模式下没有用,因为这个模式计数器从0开始计数一直到OCNT0然后重新计数,不会到达0XFF,所以没有溢出中断。相位修正PWM:由于是双向满程计数,所以晶振和分频都确定了,总的周期也就确定了,通过选择“匹配时引脚
w2008114110 Microchip MCU
基于msp430f149矩阵键盘
#ifndef__KEY_H__#define__KEY_H__#include\"delay.h\"ucharkeys_scan(){delay(10);ucharkeyno=16;P1DIR=0Xf0;//高四位输出,低四位输入P1OUT=0xef;switch(P1IN&0x0f){case0x0e:keyno=4;break;
tcvsdonnnie 微控制器 MCU
合泰HOLTEK代理之HT46R47应用篇
本帖最后由jameswangsynnex于2015-3-319:57编辑HT46R47高性能8位OTP单片机·63条精简指令集·13个双向I/O口·7层堆栈中断功能·1个8位带溢出可编程预分频定时/计数器·支持PFD(可编程分频器)输出·看门狗(WDT)电路·低
qwertyuiop11111 移动便携
求瑞萨单片机中文资料
一系列的求瑞萨单片机中文资料您好!我们公司是瑞萨的代理商,如有什么问题可与我联系.StevenAn(安先生)SalesEngineer**********************************************************************上海友菱电子有限公司北京办事处ShanghaiKoryoElectronicsCo.,Ltd.(BeiJingOffice)北京海淀区上地六街17号康得大厦6208BRm.6208B,Kang
htxiaofeng 单片机
MPU姿态传感器INT、MOSI、MISO、SCK、NCS这五个脚的作用是?波形对不对
MPU姿态传感器INT、MOSI、MISO、SCK、NCS这五个脚的作用是?波形对不对MPU姿态传感器INT、MOSI、MISO、SCK、NCS这五个脚的作用是?波形对不对怎么看相似是带货买示波器的 。。。无语了哎SPI通信接口,具体还是得看集训期说明,应该可以配置一些中断 这是SPI总线,INT中断口,MOSI数据口(主发从收),MiSO数据口(从发主收),SCK时钟,NCS硬件使能端(可以不用,用软件+IO口代替)
QWE4562009 测试/测量
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved