MCS-51单片机原理_51单片机的基本结构

MCS-51单片机原理_51单片机的基本结构MCS-51单片机结构及原理MCS-51单片机结构MCS-51单片机的内部结构MCS-51引脚及功能MCS-51的存储器结构存储器划分方法程序存储器数据存储器单片机的复位、时钟与时序复位与复位电路MCS-51单片机结构MCS-51单片机的内部结构SCM——将通用微计算机基本功能部件集成在一块芯片上构成的一种专用微计算机系统80C51=(1×8)CPU+128BRAM+4KBROM+……

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

MCS-51单片机结构

MCS-51单片机的内部结构

  • SCM——将通用微计算机基本功能部件集成在一块芯片上构成的一种专用微计算机系统
    在这里插入图片描述
  • 80C51=(1×8)CPU+128B RAM+4KB ROM+ (2×16)T/C + (4×8)I/O + 1个UART+5个中断源

UART:通用异步收发传输器。它将要传输的资料在串行通信与并行通信之间加以转换

单片机CPU = 控制器 + 运算器
在这里插入图片描述

  • 控制器:
    作用:统一指挥和控制计算机协调工作
    组成:程序计数器PC+指令译码器ID+数据指针DPTR+其它专用寄存器
    功能:
    (1)从存储器中取出下一条要执行的指令(取指)
    (2)对取出的指令进行识别(译码)
    (3)指挥运算器运算或控制数据传送(指挥)
  • 程序计数器(Program Counter——PC)
    作用:指令地址寄存器,永远存放着下一条指令的地址, PC的变化规律决定着程序的流程。
    特点:
    具有16位字长→可寻址范围216(=64KB)
    具有自动加1功能(计数器)→顺序运行程序功能
    具有可被指令修改功能→跳转运行程序功能
    复位时,PC值为0 →复位后程序从0开始运行
  • 数据指针寄存器(Data Pointer ——DPTR)
    16位字长,可寻址范围 2 16 2^{16} 216(64KB)
    可拆为2个8位的独立寄存器DPL和DPH
    用于表示存储器数据地址的指针,以便对片外64K的数据RAM区进行读/写操作
  • 运算器
    作用:对数据进行算术运算和逻辑操作
    组成:算术/逻辑部件ALU +累加器ACC+程序状态字寄存器PSW+其它工作单元
    功能:
    (1)对暂存器中的数据进行运算
    (2)结果保存在ACC
    (3)运行状态反映在PSW
  • 累加器(Accumulater——A)
    累加器A是一个8位寄存器,用来存放操作数或中间运算结果
    通过暂存器与ALU相连
    它是CPU中使用最频繁的寄存器
  • 程序状态字寄存器(Program State Word——PSW)
    PSW是一个8位的专用寄存器,用于存放程序运行过程中的各种状态信息。
    在这里插入图片描述
寄存器名称 功能
CY(PSW.7) 进位标志
AC(PSW.6) 辅助进位标志
F0(PSW.5) 用户标志位(用户可自定义)
RS1(PSW.4) 工作寄存器组指针
RS0(PSW.3) 工作寄存器组指针
OV(PSW.2) 溢出标志
F1(PSW.1) 用户标志位(用户可自定义)
P(PSW.0) 奇偶标志位
在这里插入图片描述

MCS-51引脚及功能

电源及晶振引脚(共4只)
控制引脚(共4只)
输入/输出引脚 (共32只)

电源及晶振引脚 引脚功能
VCC +5V电源引脚
VSS 接地引脚
XTAL1 外接晶振引脚(内置放大器输入端)
XTAL2 外接晶振引脚(内置放大器输出端)
控制引脚 引脚功能
RST/VPD 为复位/ 备用电源引脚
ALE/ P R O G ‾ \overline{PROG} PROG 为地址锁存使能输出/ 编程脉冲输入
P S E N ‾ \overline{PSEN} PSEN 输出访问片外程序存储器读选通信号
E A ‾ / V P P \overline{EA}/ V_{PP} EA/VPP 外接晶振引脚(内置放大器输出端)
并行I/O口引脚 引脚功能
P0.0~P0.7 P0口
P1.0~P1.7 P1口
P2.0~P2.7 P2口
P3.0~P3.7 P3口

MCS-51的存储器结构

存储器划分方法

计算机存储器地址空间的两种结构形式:
普林斯顿结构哈佛结构
在这里插入图片描述在这里插入图片描述
MCS-51系列单片机采用哈佛结构,存储器配置如图 :
在这里插入图片描述

程序存储器

作用:存放程序、表格或常数(非易失性——掉电保存)
字长:8位
数量:4KB
在这里插入图片描述

ROM的6个特殊存储器单元——引导程序跳转

地址 功能
0000H 复位后程序自动运行的首地址
0003H 外部中断0入口地址
000BH 定时器0溢出中断入口地址
0013H 外部中断1入口地址
001BH 定时器1溢出中断入口地址
0023H 串行口中断入口地址
所以,程序一般应安排在0030H地址以后。
在这里插入图片描述
  • EA引脚接高电平(开关接A点)时,4 KB以内的地址在片内ROM,大于4KB的地址在片外ROM中(图中折线),两者共同构成64KB空间;
  • 当**EA引脚接低电平(开关接B点)**时,片内ROM被禁用,全部64KB地址都在片外ROM中(图中直线)。

数据存储器

作用:存放程序运行结果
字长:8位
数量:256B
低128B( 00H~7FH )为普通RAM区
高128B (80H~FFH)为特殊功能寄存器区
在这里插入图片描述
位寻址与字节寻址:
这里我们以一个例子进行说明

  • 欲将地址(20H)中存放数 0111 0010B的最高位改为1, 而其余不变。
    方法1,用 数1000 0000B与(20H)的内容进行“或”运算
    MOV A, 20H ;先将 20H的内容传入A里
    ORL A, #80H ;再对A进行80H的“或”运算
    方法2,直接针对最高位进行“置位”操作
    SETB 07H ;07H为20H最高位的位地址

单片机的复位、时钟与时序

复位与复位电路

R S T / V P D RST/V_{PD} RST/VPD引脚端出现满足复位时间要求的高电平状态,该时间等于系统时钟振荡周期建立时间再加2个机器周期时间(一般不小于10ms)。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/188745.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • geostudio渗流教程_曲面静水压力计算

    geostudio渗流教程_曲面静水压力计算大家好,我是小马老师。本文继续介绍lammps模拟薄膜过滤的案例代码。在前面推文中,已经介绍了模型的建模过程。薄膜建模方法模型经过minimize能量最小化之后,进入弛豫阶段。因弛豫阶段代码较长,不再一一介绍各部分代码的功能,仅对代码中的几个比较重要的功能进行详细介绍。(1)薄膜固定及活塞墙的加压控制在模拟过程中,过滤薄膜不能移动,使用fixsetforce命令对其进行固定。fix mysf1membranesetforce000活塞墙在y、z方向需要固定,在x方向允许移动

    2025年9月23日
    5
  • ajax是什么框架_常用的web开发框架

    ajax是什么框架_常用的web开发框架AJAX(AsynchronousJavaScriptandXML,异步JavaScript和XML),是创建交互式Web应用的主要开发技术。互联网中也有大量的关于AJAX的框架,本文汇总了最常

    2022年8月5日
    6
  • 【刘文彬】区块链3.0:拥抱EOS[通俗易懂]

    【刘文彬】区块链3.0:拥抱EOS[通俗易懂]【刘文彬】区块链3.0:拥抱EOS

    2022年4月21日
    49
  • 如何学分子模拟的软件

    如何学分子模拟的软件当今分子模拟已经成为很多领域学术研究的主流方法。多年前,因为计算量的原因,很多情况下,MC方法是首选,特别是只关心平衡体系,关心相边界行为的时候。随着计算资源的增加、计算成本的降低、一些研究对象的平衡态的体系已经几乎被做烂了,科研工作者慢慢关心动力学行为,非平衡特征,致力于发现新的现象,新的物理规律(总要有事做,有饭吃吧),于是MD越来越普及,用的人也越来越多。除了极端的方法学工作者,一般情况下…

    2022年5月26日
    32
  • [Linux] 非root安装Lefse软件及其数据分析「建议收藏」

    [Linux] 非root安装Lefse软件及其数据分析「建议收藏」说明Lefse软件是宏组学物种研究常用软件,一般大家用在线版本即可。但要搭建在Linux集群环境中有点烦,记录一下折腾过程。安装这个软件是python2写的,因此假设我已经安装好了较高版本的python2以及pip等工具,在此基础上来安装lefse。lefse下载地址:https://bitbucket.org/nsegata/lefse/src/default/。这个网站有丰富…

    2022年5月26日
    27
  • 关于RewriteCond的内容

    关于RewriteCond的内容 RewriteCond Syntax:RewriteCondTestStringCondPattern[flags]   RewriteCond指令定义一条规则条件。在一条RewriteRule指令前面可能会有一条或多条RewriteCond指令,只有当自身的模板(pattern)匹配成功且这些条件也满足时规则才被应用于当前URL处理。   TestString是一个字符串,除了包

    2022年5月2日
    36

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号