嵌入式1.1 单片机基础总结

news2025/1/12 13:24:06

单片机基础总结

https://blog.csdn.net/weixin_40414160/article/details/124526924?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-1-124526924-blog-123451395.235^v38^pc_relevant_default_base3&spm=1001.2101.3001.4242.2&utm_relevant_index=4


1.1单片机的基本概念


单片机是一种典型的嵌入式计算机,它把微型计算机中的微处理器、存储器、I/O接口、定时器/计数器、通信接口、中断系统等模块集成到一块芯片上,因而常被称为单片微型计算机,简称单片机。

单片机的英文叫法在国内有两种:
MCU : Micro-Controller Unite 微控制器
SCM : Single Chip Microcomputer 单片机

一个通用计算机系统应包含的基本部件:

 
基于传统电子技术和单片机设计的电路有什么区别?
 
基于单片机和数字逻辑芯片的电子系统的区別
传统数字电路设计方法是根据系统功能要求,通过组合各种独立的集成电路芯片,构成系统。系统一旦设计好后,功能需要修改时,需要重新设计电路;
基于微处理器设计方法中,设计相对通用的硬件电路,通过软件编程实现系统的逻辑关系。软件编程不仅能实现非常强大逻辑功能(几乎任何逻辑),设计难度也有所降低,而且当系统功能需要小范围修改时,硬件可以不改动,只需重新编写程序即可,这大大节约了经济成本和人工成本。
 

1.2 单片机发展和应用领域


单片机发展及分类
单片机初始阶段(1971~1976):以4位单片机和刚出现的8位单片机为代表。

1974年,美国Fairchild公司研制出第一台8位单片机F8。
1975年,美国TI公司研制的4位单片机TMS-1000。
4位单片机目前依然存在,主要用于价格便宜,低功耗的设备中,如低档玩具,电子秤,家用电器等,主要生产国是日本。

计算机的位数代表的含义?
计算机内部以及CPU与外部设备间通信时,一次同时处理的二进制数据的位数,位数越多,表示计算机处理数据的能力越强。


低性能8位单片机阶段 (1976~1978)

1978年以前各厂家生产的8位单片机,速度慢,集成度低,性能相对较低,称为低档8位单片机。例如Intel公司的MCS-48单片机。

高性能8位单片机阶段(1978~至今)

一些高性能的8位单片机,使单片机发展进入了新阶段。8位单片机因其功能强,

能够满足目前大多数应用要求,价格较低,种类最多。例如Intel公司的MCS-51单片机。

其他高性能单片机的发展(1982~至今)

随着应用需求对单片机性能的提升,出现了16位,32位等速度更快,性能更强的单片机。例如Intel公司的MCS-96系列,TI公司的MSP430系列等。

但是在仪表,测控等领域,16位,32位单片机只是在少数特殊场合才有使用,8位单片机,始终占据着单片机市场的主要份额。
 单片机的应用领域
工业自动化检测、控制
智能仪器仪表
计算机外设和智能设备
家用电器和消费电子
常见51系列兼容单片机简介
美国Intel公司的MCS-51系列单片机
美国Atmel公司的89系列
荷兰NXP(恩智浦,原Philips)公司的LPC89系列,80C55X系列等
美国 Silicon Labs公司的C8051F系列
台湾Winbond华邦公司的W78C5X系列
单片机系统开发流程
方案设计、原理图设
PCB印刷电路板设计
电路板制作
软件调试
 

2.1 MCS51单片机的型号与组成
MCS-51系列单片机最早是美国Intel公司在1980年推出的,当时包含51和52 两个子系列型号。

51系列,主要有8031、8051、8751三种型号,它们的指令系统与芯片引脚完全兼容,仅是片内的程序存储器容量有所不同。

8031芯片不带任何ROM
8051芯片带4kB(OTP) PROM(一次性写入)
8751芯片带4kB EPROM(紫外线可擦除)。
52系列,有8032、8052、8752 三种机型。52子系列与51子系列相比大部分相同,不同之处在于:片内数据存储器增至256个字节;

8032芯片不带ROM,
8052芯片带8kB PROM,
路8752芯片带8kB EPROM;
MCS-51单片机型号命名规则

MCS-51系列单片机的结构原理
它由中央处理器(CPU)、定时器,并行口等八部分组成


MCS-51系列单片机的中央处理器(CPU)
1. 运算部件
运算部件以一个8位算术逻辑运算单元ALU为核心,包含累加器ACC、B寄存器、标志寄存器PSW等部件,能实现算术运算、逻辑运算、位运算、数据传输等处理。

51单片机的ALU还有一个位运算器,它可以对一位二进制数据进行置位、清零、求反、测试转移及位逻辑“与〞、“或〞等处理,这对于控制方面很有用。

累加器ACC(Accumulator简称为A)是CPU中使用最频繁的寄存器,ALU进行运算时,数据绝大多数时候都来自于累加器A,运算结果也通常送回累加器A。

寄存器B称为辅助寄存器,它是为乘法和除法指令而设置的。

标志寄存器PSW (Program Status Word) 是一个8位的寄存器,它用于保存指令执行结果的状态。

D7    D6    D5    D4    D3    D2    D1    D0
C    AC    F0    RS0    RS0    OV        P
RS1、 RSO ( Register Select):寄存器组选择位.

RS1    RS0    工作寄存器组
0    0    0组 (00H-07H)
0    1    1组 (08H-OFH)
1    0    2组 (10H-17H)
1    1    3组 (18H-1FH)
C(Carry)    进位标志位
AC(Auxilary Carry.    辅助进位标志位
FO (Flag Zero    用户标志位
Ov(Over flow)    溢出标志位
P(Parity)    奇偶标志位
2. 控制部件
控制部件是单片机的控制中心,它包括定时和控制电路、指令寄存器、指令译码器、程序计数器PC ( Por gram Counter)、堆栈指针SP(Stack Pointer)、数据指针DPTR(Data Pointer Register ) 等。

它先以振荡信号为基准产生CPU的时序,从ROM中取出指令到指令寄存器,然后在指令译码器中对指令进行译码,产生指令执行所需的各种控制信号,送到单片机内部的各功能部件,指挥各功能部件产生相应的操作,完成对应的功能。

2.2 MCS-51单片机的程序存储器结构
MCS-51单片机存储器结构与一般微机的存储器种类不同,分为:程序存储器ROM和数据存储器RAM。

程序存储器ROM
存放单片机工作时的程序,单片机上电工作时,程序指令指导单片机完成设定的功能,没有ROM存储器,单片机不能工作。

MCS51单片机专门设置一个16位的程序计数器(PC),用于指示下一时刻CPU将要所执行的程序在ROM空间中的地址位置,由于PC指针长度为16位,即51单片机的程序存储器空间大小为64kB,最大地址从0000-FFFFH

MCS-51单片机的程序存储器,从物理结构上分为:

片内程序存储器ROM(不同型号的容量不同)
片外程序存储器ROM(64kB地址空间,外部通过总线访问)

片外程序存储器ROM(64kB地址空间,外部通过总线访问)
程序存储器的编址与访问
在MCS-51系列中,不同型号机型的程序存储器

8031和8032内部没有ROM,
8051片内有4kBROM,8751内部有4kB EPROM(0000H-0FFFH)
8052片内有8kB ROM,8752内部有8kB EPROM(0000H-1FFFH).
程序存储器的7个特殊地址
MCS-51系列单片机复位后PC的内容为0000H,故单片机复位后将从0000H单元开始执行程序。程序存储器的0000H单元地址是系统程序的启动地址。这里一般放一条绝对转移指令。

中断源    入口地址
外部中断0    0003H
定时/计数器0    000BH
外部中断1    0013H
定时/计数器1    001BH
串行口    0023H
定时/计数器2(仅52子系列有)    002BH
6个中断源的地址之间仅隔8个单元,存放中断服务程序往往不够用,这是通常放一条绝对转移指令,转到真正的中断服务程序,真正的中断服务程序放到后面。

数据存储器RAM
数据存储器(RAM)存储单片机运行期间所需要的数据和临时生成的数据,需要能够快速读出和写入数据。此类存储器掉电后,存储的数据会丢失,不能永久保存。

由于数据存储器包含单片机工作时所需要的多种用途的存储器,各部分存储器特性不同,访问方式也不同。

从物理结构上分为片内数据存储器和片外数据存储器。

片内数据存储器RAM(片内连线访问,不同型号大小不同)
片外数据存储器RAM (64kB地址空间,外部通过16位地址总线访问)

片内数据存储器
工作寄存器组区

OOHI—1FH单元为工作寄存器组区,共32个字节。工作寄存器也称为通用寄存器,用于临时寄存8个信息。工作寄存器共有4组,称为、1、23组,每组用RO~R7表示

位寻址区

20F一2FE为位寻址区,共16字节,128位。这128位每位都可以按位方式使用,一位都有一个位地址,位地址范围为00H—7FH

一般RAM区

30H一7FH是一般RAM区,也称为用户RAM区,共80字节,对于52子系列,般RAM区从30H—FFH单元。另外,对于前两区中未用的单元也可作为用户RAM单元使用。

堆栈区与堆栈指针

堆栈是按先入后出、后入先出的原则进行管理的一段存储区域。MCS-51单片机中,堆栈是用片内数据存储器的一段区域,一般设在2FH以后的单元,使用时应避开工作寄存器、位寻址区。

MCS-51单片机的堆栈是向上生长型的,存入数据是从地址低端向高端延伸,取出数据是从地址高端向低端延伸。入栈和出栈数据是以字节为单位。

为实现堆栈的先入后出、后入先出的数据处理,专门设置了一个堆栈指针SP(Stack Pointer)。

入栈(Push)时,SP指针的内容先自动加1,再把数据存入到SP指针指向的单元;
出栈(Pop)时,先把sP指针指向的单元的数据取出,然后再把SP指针的内容自动城l。
向上生长型堆栈


特殊功能寄存器

特殊功能寄存器(SFR,Special Function Register)专门用于控制、管理片内算术逻辑部件、并行I/0口、串行口、定时/计数器、中断系统等功能模块的工作,用户在编程时可以给其设定值,但不能移作它用。分布在80H—FFH地址空间,与片内数据存储器统一编址,除PC外,51子系列有18个特殊功能寄存器,52子系列有21个特殊寄存器。

它们的分配情况如下:
CPU专用寄存器:累加器A(EOH),寄存器B(FOH),程序状态寄存器PSW(DOE),堆栈指针SP(81H),数据指针DPTR (82H1、 83H)

片外数据存储器
单片机片内RAM存储器不够使用时,单片机可以通过外部总线扩展的片外数据存储器获得更大的存储空间,由于外部地址总线宽度为16位,所以片外RAM扩展最多64KB,地址范围为0000H—0FFFFH。

2.3 MCS-51单片机外部引脚及总线接口
MCS-51系列单片机的引脚及功能说明

一、输入/输出引脚
P0口(3932脚):P0.0P0.7统称为P0口。在不接片外存储器与不扩展I/0口时,作为双向输入/输出口。在接有片外存储器或扩展I/0口时,P0口分时复用为低8位地址总线和双向数据总线。

P1口(18脚):P1.0P1.7统称为P1口,可作为双向I/O口使用。

P2口(2128脚):P2.0P2.7统称为P2口,一般可作为双向I/O口使用;在扩展片外存储器时,P2口用作高8位地址总线。

P3口(1017脚):P3.0P3.7统称为P3口。除作为准双向I/0口使用外,还可以将每一位用于第二功能。

P3口    第二功能
P3.0    RXD 串行口输入端
P3.1    TXD 串行口输出端
P3.2    INTO 外部中断0请求输入端,低电平有效
P3.3    INT1 外部中断1请求输入端,低电平有效
P3.4    T0定时/计数器0外部计数脉冲输入端
P3.5    T1定时/计数器0外部计数脉冲输入端
P3.6    WR 外部数据存储器写信号,低电平有效
P3.7    RD外部数据存储器读信号,低电平有效
二、控制线
ALE(Adress Lock Enable (30脚):地址锁存信号输出端。
PSEN(Peripherals Select Enable)(29脚):片外程序存储器读选通信号输出端。
RST(Reset)(9脚):当单片机振荡器工作时,该引脚上出现持续10 ms以上的高电平,就可实现复位操作,使单片机回复到初始状态。
EA (31脚):EA为片外程序存储器选用端。该引脚低电平时,选用片外程序存储器,高电平或悬空时选用片内程序存储器。
三、主电源引脚
VCC(40脚):接+5V电源。
GND(20脚):接地。
 

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

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

相关文章

无缝集结:一键式部署前后端分离项目,快速构建强大的容器化应用

一键式部署前后端分离项目,快速构建强大的容器化应用 文章目录 一键式部署前后端分离项目,快速构建强大的容器化应用关于作者1.搜索nginx镜像2.拉取nginx镜像3.运行镜像4.在/home/ 目录下新建目录 nginx5.拷贝nginx配置文件到主机目录,为文件…

CPSC法规-2023/9月召回案例 多款产品被召回

国内双十一大促的预热已然开始,国外感恩节、万圣节、黑五等产品大促也随即临近,卖家在大量备货的同时,务必保障自身产品通过相关安全测试,一旦产品被相关部门抽查没能达标,或因质量问题被消费者投诉,将可能…

13.4 DirectX内部劫持绘制

相对于外部绘图技术的不稳定性,内部绘制则显得更加流程与稳定,在Dx9环境中,函数EndScene是在绘制3D场景后,用于完成将最终的图像渲染到屏幕的一系列操作的函数。它会将缓冲区中的图像清空,设置视口和其他渲染状态&…

Win10系统备份的方法和步骤

在Win10电脑中,用户为了避免丢失重要的数据而无法找回,提前备份这些重要数据是特别有必要的。但是,许多新手用户不知道Win10系统备份的详细操作方法,接下来小编给大家介绍关于备份Win10系统的简单方法与步骤。 Win10系统备份的方法…

d3中svg标签里插入图片不显示的解决方案

1. 使用背景 在d3中的svg元素中插入图片&#xff0c;图片未正常显示。 2. 使用image标签 首先&#xff0c;在svg中加载图片用的image标签&#xff0c;而不是img标签。支持的图片格式可以是 JPEG、PNG、SVG.。 该元素<img> 一样&#xff0c;会解析渲染为图片。 <im…

vue2进阶学习知识汇总

目录 1.组件之处理边界情况 1.1 子组件访问根组件数据 1.2 子组件访问父组件数据 1.3 父组件访问子组件 1.4 依赖注入 1.5 程序化的事件侦听器 1.6 递归组件 1.7 内联模板 1.8 X-Template 1.9 强制更新 1.10 v-once 2.过渡效果与状态 2.1 过渡效果 2.1.1 单元素/…

VMware Workstation Pro下载安装

VMware Workstation Pro下载安装 下载 VMware Workstation Pro 1. 进入官网下载页面 VMware Workstation Pro下载页面&#xff1a;https://www.vmware.com/cn/products/workstation-pro/workstation-pro-evaluation.html 2. 选择对应操作系统平台下载 VMware Workstation Pr…

2023年清洁电器行业数据分析:洗地机市场规模持续倍增,进入赛点

洗地机作为清洁电器领域的明星品类&#xff0c;正在成为继扫地机器人之后拉动清洁电器市场大盘的又一核心动力。 在清洁电器领域&#xff0c;扫地机器人、洗地机和吸尘器是三大热门品类。截至今年9月份&#xff0c;根据鲸参谋平台的数据显示&#xff0c;吸尘器的规模继续大幅下…

基于Android 10系统的瑞芯微RK3399K烧写镜像实录

基于Android 10系统的瑞芯微RK3399K烧写镜像实录 1. 前言2. 官网及相关资料3. 烧写固件所需软件4. 直接烧写单一固件步骤5. 固件文件6. Windows下烧写准备6.1 安装 RK USB 驱动6.2 连接设备 7. 烧写固件7.1 烧写统一固件 update.img7.2 烧写分区映像 8. Linux下烧写8.1 upgrade…

Vue组件自定义事件父子

Vue组件父子之间自定义事件 父组件使用props传递数据给子组件&#xff0c;子组件怎么跟父组件通信呢&#xff1f;这时&#xff0c;Vue的自定义事件就派上用场了 示例代码 <div id"zjw1"><span>CQNU--重庆ZJW--同学</span><input placeholder…

数据安全小课堂开讲啦!看这里!

数据安全小课堂开讲啦&#xff01;看这里&#xff01; 1、什么是数据&#xff1f; 《数据安全法》第三条明确&#xff0c;本法所称的数据&#xff0c;就是指任何以电子或者其他方式对信息的记录。小到个人使用手机、电脑等电子产品时浏览的网页、下载的应用、存储的文件&…

【等保小课堂】等保测评后还要花很多钱做等保整改吗?

我国正在严格执行等保政策&#xff0c;过等保企业也越来越多。但大家对于等保政策还不是很了解&#xff0c;有小伙伴在问&#xff0c;等保测评后还要花很多钱做等保整改吗&#xff1f; 等保测评后还要花很多钱做等保整改吗&#xff1f; 【回答】&#xff1a;不一定。等保测评后…

Web前端接入Microsoft Azure AI文本翻译

Azure 文本翻译是 Azure AI 翻译服务的一项基于云的 REST API 功能。 文本翻译 API 支持实时快速准确地进行源到目标文本翻译。 文本翻译软件开发工具包 (SDK) 是一组库和工具&#xff0c;可用于轻松地将文本翻译 REST API 功能集成到应用程序中。 文本翻译 SDK 可跨 C#/.NET、…

一篇文章教会你搭建Hive分布式集群

目录 ​编辑 一、环境描述 二、安装mysql 2.1 卸载mysql 2.1.1 列出安装的mysql 2.1.2 卸载mysql 2.1.3 删除mysql文件目录 2.1.3.1 查看mysql 目录 2.1.3.2 依次删除 2.2.1 下载安装源 2.2.2 安装源rpm 2.2.3 加入rpm密钥 2.2.4 执行安装 2.2.5 设置开机自启动 …

STM32 定时器配置不当导致误差(精度)偏大的问题发现与解决

通用定时器TIM2/3/4/5&#xff0c;PWM输出1Khz的波形 一开始初始化代码如下&#xff1a; void MX_TIM2_Init(void)//1kHz {TIM_ClockConfigTypeDef sClockSourceConfig {0};TIM_MasterConfigTypeDef sMasterConfig {0};TIM_OC_InitTypeDef sConfigOC {0};htim2.Instance T…

Git简明教程

1.Git的定位 在我们自己开发项目的过程中&#xff0c;经常会遇到这样的情况&#xff0c;为了防止代码丢失&#xff0c;或者新变更的代码影响到原有的代码功能&#xff0c;为了在失误后能恢复到原来的版本&#xff0c;不得不复制出一个副本,比如&#xff1a;“坦克大战1.0”“坦…

十个最常用的计算机视觉数据集

如今&#xff0c;人工智能和机器学习领域中最振奋人心的一个分支是计算机视觉&#xff08;Computer Vision&#xff0c;简称CV&#xff09;。CV应用于多种场景&#xff0c;以改善我们的日常生活&#xff0c;并推进科学技术研究。其中包括&#xff1a; 自动驾驶自动生成图像描述…

一、W5100S/W5500+RP2040树莓派Pico<静态配置网络信息>

文章目录 1. 前言2. 相关网络信息2.1 简介2.2 优点2.3 应用 3. WIZnet以太网芯片4. 静态IP网络设置示例讲解以及使用4.1 程序流程图4.2 测试准备4.3 连接方式4.4 相关代码4.5 编译烧录 5. 注意事项6. 相关链接 1. 前言 从本章开始我们将用WIZnet的W5100S/W5500以太网芯片结合RP…

听GPT 讲Rust源代码--library/std(3)

rust标准库std中的src目录主要包含以下内容和模块: alloc:内存分配相关函数,比如alloc::boxed::Box、alloc::string::String等。 ascii:ASCII相关工具函数。 char:字符相关类型和函数,如Char、char等。 cmp:比较相关trait和函数,如Ord、Eq、PartialOrd等。 env:环境变量相关功能…

机架式服务器介绍

大家都知道服务器分为机架式服务器、刀片式服务器、塔式服务器三类&#xff0c;今天小编就分别讲一讲这三种服务器&#xff0c;第一篇先来讲一讲机架式服务器的介绍。 机架式服务器定义&#xff1a;机架式服务器是安装在标准机柜中的服务器&#xff0c;一般采用19英寸的标准尺寸…