第一章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口,双功能静态端口
第一章MCS-51单片机结构,单片机原理、接口及应用相关推荐
- 【电机学习笔记】第一章 了解交流电机的结构以及工作原理
系列文章目录 第一章 了解交流电机的结构以及工作原理 文章目录 系列文章目录 文章目录 前言 一.交流电机的构成 二.同步与异步的区别 三. 交流电机的运动原理 前言 由于交流电力系 ...
- 【软件设计师】第一章 计算机组成与结构
目录 第一章 计算机组成与结构 第一节 数据的表示 1.进制的转化 2.源码.补码.反码.移码 3.浮点数运算(小阶向大阶对齐,小阶尾数右移) 第二节 计算机结构 运算器与控制器的组成 第三节 指令寻 ...
- 第一章 计算机网络 5 分层结构/协议/接口/服务的概念 [计算机网络笔记]
第一章 计算机网络 5 分层结构/协议/接口/服务的概念 本笔记参考书目: 计算机网络(第8版)谢希仁 2021王道计算机网络视频公开课 本节重点: 分层结构/协议/接口/服务 实体/对等实体 PCI ...
- 单片机结构和原理讲解!
89C51单片机结构框图 1.一个8位 的微处理器CPU. 2.片内数据存储器(RAM128B/256B):用以存放可以读/写的数据,如运算的中间结果.最终结果以及欲显示的数据等. 3.片内4kB程序 ...
- 第一章 微型计算机系统导论【微机原理】
第一章 微型计算机系统导论 第一章 微型计算机系统导论 1.1 引言 1.2 计算机的发展状况 1.3 微型计算机硬件系统 1.3.1 基于总线的微型计算机硬件系统 1.3.2 微处理器 1.3.3 ...
- 第一章 无线通信收发机结构 杨远望 和习题
这里写目录标题 绪论 发信机功能(发送过程) 收信机功能(接收过程) 其它的一些组成部分 无线通信系统特点 无线通信系统性能要求 ★ 无线通信系统发展趋势 方案设计尤为重要 1.1 概述 无线通信系统 ...
- python 微服务架构实战_《分布式服务架构:原理、设计与实战》第一章分布式微服务架构设计原理...
1.从传统单体架构到服务化架构 1.1 JEE架构 JEE将企业级软件架构分为三个层级 : Web 层.业务逻辑层和数据存取层.对应的职能团队,主要包括:用户 交互 UI 团队.后台业务逻辑处理团 队 ...
- 第一章:costmap_2d代价地图生成原理
系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录 系列文章目录 前言 (1)[代价地图]costmap_2d功能包源码解读 (1)代价地图 ...
- PTA第一章作业1--数据结构基本概念 顺序表基本操作
6-2 顺序表基本操作 (10分) 本题要求实现顺序表元素的增.删.查找以及顺序表输出共4个基本操作函数.L是一个顺序表,函数Status ListInsert_Sq(SqList &L, i ...
- 第一章: 新的结构化元素
事实再一次证明了,选一本好的书是多么的重要啊!弃掉一开始的坑,换一本书来继续我们的学习吧. (1) 结构化构建块 div: 这是我们都知道且喜爱的一种一般性容器.它是一种无附加语义含义的流式内容元素. ...
最新文章
- 控制输入框只能输入数字
- Neuron:迄今为止最大的颗粒细胞数据,发现海马齿状回神经元可过滤并放大空间信息...
- Spring mvc3的ajax
- Java Character 类
- 【Intellij IDEA系列】IDEA右键没有Git或svn处理方法
- POJ - 2828 Buy Tickets(线段树+思维/Splay+模拟)
- 工程应用中的自相关操作
- 街篮混服服务器信息,街篮手游闻鸡起舞服务器火爆开启
- iOS UIWebView 之 UIProgressView
- 【cf-edu-round72: C 】The Number Of Good Substrings(思维)
- 特征选择算法-Relief
- 云打印微信小程序,自助打印机,无人打印
- python视频格式转换_用Python+FFmpeg进行音视频格式转换
- quartz 每月一次_quartz cron表达式 每周一0点怎么设置
- Python房贷计算器GUI(等额本息,等额本金)
- DBA的主要工作是什么
- JavaScript_牛客网_编程初学者入门训练(21-30题解)
- dpdk:vfio-pci模式下iommu(N+Y)-Huge配置-numa配置
- 以麒麟音乐为例,教你如何构建专属自己的音乐播放器
- Unsupported major.minor version 52.0 解决方案
热门文章
- Java开发人员应该知道的三件事
- 使用Jolokia和JMX进行客户端服务器监视
- 三菱q系列plc连接电脑步骤_三菱Q系列PLC与三菱变频器的CC-link通讯技术(我的学习笔记)...
- Linux 及其它类 Unix 系统的系统服务管理和控制程序(初始化系统/init system)简单梳理
- html转pdf后 框会消失,html或其它文件转pdf弹出打开保存框
- 乱码 设置界面_和平精英:压轴更新后BUG频出,设置界面崩盘,界面全白变乱码...
- 判断 小程序 是否 滚动到页面底部 scrolltolower_微信小程序长列表性能优化——recycle-view
- linux服务器不会中毒,[转载]ubuntu 不会中毒的原因(转)
- tableau选择计算_干货 | 年薪40W, 掌握Tableau的留学生真的赚翻了
- python整数加法计算器_Python应用实例赏析2.1简单计算