第一章MCS-51单片机结构,单片机原理、接口及应用

文章目录

    • 一、MCS-51单片机内部结构
    • 二、CPU
    • 三、存储器
    • 四、特殊功能寄存器SFR
    • 五、时钟电路与复位电路
    • 六、引脚功能


一、MCS-51单片机内部结构

单片机是在一块芯中集成了CPU、RAM、ROM、定时/计数器和多功能I/O接口等基本部件的大规模集成电路,又称MCU。

51系列单片机内包含下列部件:
一个8位CPU
一个片内振荡器及时钟电路
4KBROM程序存储器
128BRAM数据存储器
可寻址64KB外部数据存储器和64KB外部程序存储器的控制电路
32条可编程的I/O线(4个8位并行I/O接口)
两个16位的定时/计数器
一个可编程全双工串行接口
五个中断源和两个优先级嵌套中断结构

在这里插入图片描述


二、CPU

核心部件,由运算器和控制器等部件组成。

运算器:算术运算,逻辑运算,位操作。

程序计数器PC:16位寄存器,用来存放即将要执行的指令地址,可对64KB程序存储器直接寻址。执行指令时,PC内容的低8位经P0口输出,高8位经P2口输出。

指令寄存器:用来存放指令代码,CPU执行指令时,将程序存储器中读取的指令代码送入指令寄存器,经指令译码器译码后由定时与控制电路发出相应的控制信号,完成指令功能。


三、存储器

分程序存储器和数据存储器,分片内和片外,从逻辑地址空间看,又可分为片内数据存储器、片外数据存储器、片内片外统一编址的程序存储器。

引脚EA(上面一横)的接法决定了程序存储器0000H~0FFFH的4KB地址范围是在片内还是片外。为1时,片内0000H~0FFFH,片外1000H~FFFFH;为0时,0000H~FFFFH64KB都是片外。

程序存储器:以PC作为地址指针,通过16位地址总线,可寻址64KB地址空间。

程序存储器中的特殊地址:

地址用途
0000H复位操作后的程序入口
0003H外部中断0服务程序入口
000BH定时器0中断服务程序入口
0013H外部中断1服务程序入口
001BH定时器1中断服务程序入口
0023H串行口中断服务程序入口

由于两入口地址直接的存储空间有限,通常在这些入口地址开始的两三个地址单元中,放入一条转移类指令(跳转指令),使得相应程序跳转到指定的程序存储器区域。

外部数据存储器:51单片机具有扩展64KB外部数据存储器RAM和I/O端口的能力,它们统一编址,使用相同的选通控制信号、相同的访问指令MOVX,以及相同的寄存器间接寻址。

内部数据存储器:51单片机中只有128字节RAM,地址为00H~7FH,它和SFR的地址(80H~FFH)空间是连续的,而在增强型52子系列中有256字节RAM,高128字节RAM和SFR的地址是重合的,访问高128字节RAM采用寄存器间接寻址,访问SFR则采用直接寻址。

在这里插入图片描述
在这里插入图片描述
前32个单元(00H~1FH)为寄存器区,共分4组,每组有8个8位寄存器R0~R7,R0和R1可作为间址寄存器使用。使用时,只能选其中一组寄存器,寄存器的选组由程序状态字PSW的RS1和RS0位定。一旦选中了一组寄存器,其它3组只能作为数据存储器使用,而不能作为寄存器使用。初始化或者复位时,自动选中0组。

20H~2FH为位地址区,共16个单元,每个单元有8位,共128位,每位有一个位地址,范围为00H~7FH,该区既可位寻址,又可字节寻址。

51单片机的堆栈设在内部RAM区,深度不大于128字节,初始化时SP指向07H。
在这里插入图片描述


四、特殊功能寄存器SFR

用途:
A累加器、状态标志寄存器
单片机内部各部件专用的控制、状态寄存器
并行口、串行口影射寄存器

地址空间:
21个特殊功能寄存器不连续地分布在80H~FFH128个字节地址空间,地址为X0H和X8H是可位寻址的寄存器。

A——累加器,带有全零标志Z,A=0,则Z=1;A不等于0,则Z=0。该标志常用于程序分支转移的判断条件。

B——寄存器,常用于乘除法运算。

PSW——程序状态字,主要起着标志寄存器的作用:
Cy:进/借位标志,反映运算中最高位有无进/借位,有进/借位时为1
AC:辅助进/借位标志,反映运算中低半字节与高半字节间的进/借位情况
F0:用户标志位,可由用户设定其含义
RS1、RS2:工作寄存器组选择位
OV:溢出标志位,补码运算的结果有溢出时为1,OV=Cy异或Cy-1
-:无效位
P:奇偶标志位,反映对累加器A操作后,A累加器中“1”个数的奇偶,奇为1
SP:堆栈指针寄存器
DPTR:16位数据指针寄存器,分DPL和DPH
P0~P3:I/O端口寄存器


五、时钟电路与复位电路

51单片机的时钟信号通常有两种电路形式:内部振荡方式和外部振荡方式。

内部振荡:在引脚XTAL1和XTAL2外接晶体振荡器(晶振),C1和C2起稳定振荡频率、快速起振作用。

在这里插入图片描述
外部振荡:把已有的时钟信号引入单片机,这种方式适宜用于使单片机的时钟与外部信号保持一致。对HMOS的单片机(8031),由XTAL2引入,对CHMOS的单片机(8XCXX),由XTAL1引入。

在这里插入图片描述
振荡周期:晶振的振荡周期,又称时钟周期,为最小的时序单位。

状态周期:振荡频率经单片机内的二分频器分频后提供给片内CPU的时钟周期,因此,一个状态周期包含两个振荡周期。

机器周期MC:1个机器周期由6个状态周期即12个振荡周期组成,是计算机执行一种基本操作的时间单位。

指令周期:执行一条指令所需的时间,一个指令周期由1~4个机器周期组成,依据指令不同而不同。

振荡周期和机器周期是单片机内计算其它时间值(例如波特率、定时器的定时时间等)的基本单位。

单片机外接晶振频率12MHZ时:
在这里插入图片描述
复位:使片内电路初始化,当复位引脚RST出现5ms以上的高电平时,单片机就完成复位操作。

两种复位操作的形式:上电复位,开关复位

上电复位:接通电源后自动复位

开关复位:在运行期间,按钮使单片机复位

在这里插入图片描述
单片机的复位操作使SFR寄存器初始化,而不改变片内RAM中的内容。

几个主要特殊功能寄存器复位状态:
PC=0000H:程序计数器为0表明单片机复位后程序从0000H地址单元开始执行
A=00H:累加器清零
PSW=00H:选寄存器0组为工作寄存器组
SP=07H:堆栈指针指向片内RAM的07H单元,根据先加后压的法则,第一个被压入的数据被写入08H单元中
P0~P3=FFH:向各端口写入1,各端口即可用于输入又可用于输出


六、引脚功能

在这里插入图片描述

Vss:接地端
Vcc:电源端
XTAL1、XTAL2:接外部晶体或外部时钟信号
RST/VPD:①复位信号输入②接备用电源
ALE:地址锁存允许,输出脉冲的频率为振荡频率的六分之一
PR0G(上面一横):对片内EPROM编程时,编程脉冲由该引脚引入
PSEN(上面一横):程序存储器允许,输出读取外部程序存储器的选通信号
EA(上面一横):选择访问程序存储器
P0.0~P0.7:P0口,数据/低八位地址复用总线端口
P1.0~P1.7:P1口,静态通用端口
P2.0~P2.7:P2口,高八位地址总线端口
P3.0~P3.7:P3口,双功能静态端口

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

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

相关文章

微信小程序云开发校园社交二手物品跳蚤平台表白动态求助寻物组队

前些天发现了十分不错的人工智能学习网站,通俗易懂,风趣幽默,没有广告,分享给大家,大家可以自行看看。(点击跳转人工智能学习资料) 微信公众号:创享日记(微信号csds99202…

html悬浮弹窗后面背景变深,JS+CSS实现Div弹出窗口同时背景变暗的方法

本文实例讲述了JSCSS实现Div弹出窗口同时背景变暗的方法。分享给大家供大家参考。具体实现方法如下:代码如下:JSCSS实现的Div弹出窗口,同时背景变暗function locking(){document.all.ly.style.display"block";document.all.ly.style.widthd…

传感与检测实验报告,差动变压器的特性测定,江南大学物联网自动化

前些天发现了十分不错的人工智能学习电子书,通俗易懂,风趣幽默,没有广告,分享给大家,大家可以自行看看。(点击跳转人工智能学习资料) public class LeastSquares {public static void matching(…

计算机网络由 子网,计算机网络系统是由通信子网和资源子网组成的。()

计算机网络系统是由通信子网和资源子网组成的。()更多相关问题“May I speak to Iris?” “This is () speaking.”用FDI提出的二位数字法记录的牙位24指的是凡在一个登记期内有:伪造学历和出版专业工作资历证明、脱离出版专业技术岗位_______年、因违法…

如何使用Spring初始化程序创建Spring Boot项目

你好朋友, 如果您以前使用过Spring框架,则必须意识到,即使要开始使用基本的Spring功能也需要付出一些真正的努力。有了Spring Boot,最初的麻烦就消失了,您可以在数分钟内开始使用。 欢迎来到Spring Boot的世界&#…

计算机组成原理,计算机系统总线,总线分类、特性、性能指标、结构以及总线控制,判优控制通信控制

文章目录总线的基本概念总线的分类总线特性及性能指标总线结构总线控制一、总线判优控制二、总线通信控制总线的基本概念 一、总线是连接各个部件的信息传输线,是各个部件共享的传输介质。 二、总线上信息的传送有串行和并行: 三、总线结构计算机举例…

虚拟机使用计算机网络,虚拟机技术在计算机网络专业课程教学中的应用

环境,做一些服务器配置,这就需要机房安装多种操作系统与多种软件,还需要允许学生随意的对操作环境进行配置。计算机机房的建设越来越完善,但需要承担的多门课程的学习和实验,使用率高。如若进行与操作系统配置实验&…

传感与检测技术,Pt100热电阻测温实验报告,江南大学物联网

public class LeastSquares {public static void matching(double[] x, double[] y, double[] input, double fully) {double k getK(x, y);double b getB(x, y);System.out.println("线性回归系数 k 值:\t" k "\n" "线性回归系数 b …

html 高度不够,HTML/CSS:Div未扩展到内容高度

我有几个未扩展的div元素以匹配其内容的高度。我已经读过,这可能是由浮动内容引起的;这个内容不是浮动的 - 虽然我开始觉得我应该把我的电脑扔在河里。这算不算?HTML/CSS:Div未扩展到内容高度代码:#interaction-options-container…

传感与检测技术,光电二极管和光敏电阻的特性研究实验报告,江南大学物联网工程学院自动化

前些天发现了十分不错的人工智能学习电子书,通俗易懂,风趣幽默,没有广告,分享给大家,大家可以自行看看。(点击跳转人工智能学习资料) 江南大学物联网工程学院传感与检测技术《光电二极管和光敏电…

sql 动态写入数据库字段_批处理写入,动态SQL和参数化SQL,数据库的性能如何?...

sql 动态写入数据库字段最有效的数据库优化之一是批处理写入。 批处理写入受大多数现代数据库和JDBC标准的一部分支持,并且受大多数JPA提供程序支持。 普通数据库访问包括在单独的数据库/网络访问中将每个DML(插入,更新,删除&…

将HTML转换为Apache POI的RichTextString

1.概述 在本教程中,我们将构建一个将HTML作为输入的应用程序,并使用提供HTML的RichText表示形式创建Microsoft Excel工作簿。 为了生成Microsoft Excel工作簿,我们将使用Apache POI 。 为了分析HTML,我们将使用Jericho。 Github上…

计算机基础知识第3版答案,计算机基础知识试题库及答案(3)

65、计算机的CPU每执行一个__B___,就完成一步基本运算或判断。A、语句B、指令C、程序D、软件66、计算机能按照人们的意图自动、高速地进行操作,是因为采用了__A__。A、程序存储在内存B、高性能的CPUC、高级语言D、机器语言67、语言处理程序的发展经历了_…

MySQL常见问题的解决,root用户密码忘记,不是内部或外部命令,修改数据库和表的字符编码,命令行客户端的字符集问题

文章目录问题1:root用户密码忘记,重置的操作问题2:mysql命令报“不是内部或外部命令”问题3:错误ERROR :没有选择数据库就操作表格和数据问题4:命令行客户端的字符集问题问题5:修改数据库和表的…

html首页我的待办,JavaScript / HTML中的待办事项列表

我已经设置了这个待办事项列表,几乎所有东西都完美无缺.但是,如果我删除列表中的所有内容.它不会让我添加一个新的条目,我似乎无法弄明白为什么.只要我在列表中至少有一个条目,它就可以正常工作.非常感谢任何帮助,谢谢.< head >< script type "text/javascript&…

win10下最新MySQL8.0安装与环境配置,Navicat图形化管理工具连接,完整详细可收藏

微信公众号&#xff1a;创享日记 发送&#xff1a;sqlyog 获取SQLyog客户端安装包 文章目录一、MySQL的卸载二、MySQL的下载安装和配置三、MySQL的开启和登录四、MySQL图形化管理工具一、MySQL的卸载 步骤1&#xff1a;停止MySQL服务 在卸载之前&#xff0c;先停止MySQL8.0的服…

Fn函数来构建Oracle ADF应用程序

在我以前的一篇文章中&#xff0c;我描述了如何创建一个Docker容器作为ADF应用程序的构建器。 在这里&#xff0c;我将展示如何将此容器用作 在FN平台的功能 。 首先&#xff0c;让我们更新容器&#xff0c;使其符合功能要求&#xff0c;这意味着可以将其作为接受某些参数的可…

教师计算机提升学到的知识,计算机教学质量提升措施浅谈.doc

计算机教学质量提升措施浅谈计算机教学质量提升措施浅谈一、热情投入&#xff0c;创设宽松和谐的课堂学习氛围在课堂教学中&#xff0c;教师要尊重每一个学生的权利&#xff0c;一视同仁&#xff0c;对于学生的错误&#xff0c;要委婉地指出&#xff0c;鼓励学生进行改正&#…

MySQL基本的SELECT语句,SQL语言概述,基础和重要不冲突,完整详细可收藏

文章目录1、SQL语言的分类2、SQL语言的规则与规范3、基本的SELECT语句4、DESCRIBE显示表结构5、WHERE过滤数据1、SQL语言的分类 SQL语言在功能上主要分为如下3大类&#xff1a; DDL&#xff08;Data Definition Languages、数据定义语言&#xff09;&#xff0c;这些语句定义…

广告学和计算机共通,本科生广告学专业个人职业规划书范文

广告经营管理、广告策划创意和设计制作、市场营销策划及市场调查分析工作的广告学高级专门人才。一般来说&#xff0c;广告业的发展多数集中在大中城市和经济发达的地区。这些地区人口密集、竞争激烈&#xff0c;但薪水相对较高。三、职业选择分析1、个人职业选择目前最大的困惑…