51单片机入门_01_单片机(MCU)概述(使用STC89C52芯片)
文章目录
- 1. 什么是单片机
- 1.1 微型计算机的组成
- 1.2 微型计算机的应用形态
- 1.3 单板微型计算机
- 1.4 单片机(MCU)
- 1.4.1 单片机内部结构
- 1.4.2 单片机应用系统的组成
- 1.5 80C51单片机系列
- 1.5.1 STC公司的51单片机
- 1.5.1 STC公司单片机的命名规则
- 2. 单片机的特点及应用领域
- 2.1 单片机的特点
- 2.2 单片机的应用领域
- 3. 单片机的发展趋势
- 4. 学习51单片机需要哪些基础知识
- 5. 如何快速的掌握51单片机
1. 什么是单片机
在认识单片机之前,需要了解单片机的前身,微型计算机的组成及应用形态
1.1 微型计算机的组成
主板上有微处理器CPU,还有内存RAM,内部总线控制器,通过系统总线连接到IO接口,IO接口上接外设,以上就是微型计算机的组成,通俗的讲这就是我们使用的电脑。
1.2 微型计算机的应用形态
将微处理器CPU、存储器(RAM、ROM)、基本输入/输出(I/O)接口电路和总线接口等组装在一块主机板(即微机主板)。各种适配(卡)插在主机板的扩展槽
上并与电源、软/硬盘驱动器和光驱等装在同一机箱内,再配上系统软件,就构成了一台完整的微型计算机系统。微型计算机硬件组成如图所示。
由微型计算机又发展到单板微型计算机
1.3 单板微型计算机
将CPU芯片、存储器芯片、I/O接口芯片和简单的1/0设备(小键盘、LED显示器)等装配在一块印刷电路板上
,再配上监控程序(固化在ROM中),:就构成了一台单板微型计算机(简称单板机)。单板微型计算机组成如图所示。主要应用于工业控制器、家用电器等。
由单板机又进一步发展到单片机。
1.4 单片机(MCU)
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机
。
在一片集成电路芯片上集成中央处理器(CPU)、存储器(ROM/RAM)、1/0接口电路,从而构成了单芯片微型计算机,简称单片机。
常用英文字母的缩写MCU表示单片机(Microcontroller Unit)
1.4.1 单片机内部结构
单片机内部结构示意图如图所示,它由微处理器CPU、随机存取存储器RAM、只读存储器ROM、基本输入Input/输出0utput(I/O)接口电路、定时器/计数器和中断系统等部件组成,并把它们制作在一块大规模集成电路芯片上,就构成一个完整的单片微型计算机。
下面对其内部结构图进行简单的了解:CPU的右侧箭头为数据总线,数据总线从上往下,从右往左接了程序存储器ROM,相当于电脑的硬盘,数据存储器相当于电脑的内存条,2个16位的定时器计数器,全双工串行口,可编程IO(用于接收和返回数据),总线控制器(现在使用的比较少了),左上角为振荡器(采用外部接振荡源,给CPU工作提供一个频率和节拍),左下为外部和内部中断,上面提到的都会在后面的课程中一一学习原理和使用。
1.4.2 单片机应用系统的组成
对于实现某个功能需要利用单片机的应用系统实现,单片机应用系统的组成如图所示。单片机应用系统是以单片机为核心,再加上接口电路及外设等硬件电路和软件,就构成了单片机应用系统。因此,单片机应用系统的设计人员必须从硬件和软件角度来研究单片机,这样才能研究和开发出单片机应用系统和产品。
1.5 80C51单片机系列
虽然目前单片机的品种很多,Intel公司在1980年推出80C51系列单片机,由于80C51单片机应用早,影响面很大,已经成为工业标准。
后来很多著名厂商如Atmel,philps,STC等公司申请了版权,生产了各种与80C51兼容的单片机系列。虽然制造工艺在不断地改进,但内核却没有变化,指令系统完全兼容,而且大多数管脚也兼容。我们把这些公司生产的与80C51兼容的单片机统称为80C51系列,也就是我们常说的80C51系列单片机
。
如:ATMEL公司的AT89S51、AT89S52、AT89S53等等,STC公司的STC89C51、STC89C52、STC89C53、STC90C516等等。
上面提到的单片机型号虽然不同,但是其程序、管脚等都是相同的,型号名又代表什么呢?简单的说就是内存不同,以后面课程使用的STC为例:AT89S51最后一位的1表示程序存储器空间为4kb,AT89S51最后一位的2表示程序存储器空间为8kb,依此类推
后期使用到的是STC89C52芯片
作为学习的硬件,STC单片机烧录要比AT公司的更为便捷。
1.5.1 STC公司的51单片机
下面以STC89C52芯片为例进行介绍,下面是采用不同封装形式下的
DIP封装采用双列直插式,学习也是使用的此种;PLCC封装是正方形四面都有引脚,脚是往里弯的;LQFP也是采用正方形四面有引脚,引脚没有向里弯。根据实际情况选用不同的封装类型,DIP封装较大,适合需要拆装的地方,其他两种适合在集成度要求比较高的地方。
1.5.1 STC公司单片机的命名规则
2. 单片机的特点及应用领域
2.1 单片机的特点
单片机芯片的集成度非常高,它将微型计算机的主要部件都集成在一块芯片上,因此,具有如下特点:
1、体积小、重量轻、价低、耗电少、易于产品化
2、控制性能。
实时控制功能强、运行速度快。因为CPU可以对I/0端口直接进行指令操作,而且位指令操作能力更是其它计算机无法比拟的。
3、可靠性高。
由于CPU、存储器及I/0接口集成在同一芯片内,各部件间的连接紧凑数据在传送时受干扰的影响较小,且不易受环境条件的影响,所以单片机的可靠性非常高。
2.2 单片机的应用领域
1、家用电器。”家用电器是单片机的重要应用领域之一,前景广阔。如微波炉、电视机、电饭煲、空调器、电冰箱、洗衣机等。
2、在交通领域中。如交通灯、汽车、火车、飞机等均有单片机的广泛应用。
3、智能仪器仪表。如各种智能电气测量仪表、智能传感器等4、机电一体化产品。如医疗设备(B超)、机人、数控机床、自动包装机、打印机、复印机等。
5、实时工业控制。如温度控制、电机转速控制、生产线控制等。
3. 单片机的发展趋势
20世纪80年代以来,单片机有了新的发展,各半导体器件厂商也纷纷推出自己的产品系列。根据市场的需求要求,未来单片机的发展趋势有如下几个方面:
- 单片机的字长由4位、8位、16 位发展到32位。(
字长越长,单片机的数据处理能力越强,运算精度也越高
)
目前8位的单片机仍然占主流地位,只有在精度要求特别高的场合如图像处理等,才采用16位或32位的单片机,用户可以根据需要进行字长的选择运行速度不断提高。 - 单片机的使用最高频率由6MHz、12MHz*、24MHz、33MHz发展到 40MHz和更高,用户可以根据产品的需要进行速度的选择
以下是物联网中嵌入到开关的的单片机系统,黑色的为无线模块,可以无线传输数据,无线模块下面是小的单片机,右侧中间是一个接收头,可以接收到红外遥控板的信号,左上角为集电器,接到交流电上控制开关
4. 学习51单片机需要哪些基础知识
- 会使用电脑
- 有C语言基础
- 了解简单的模拟电子和数字电路的知识(后期原理和选型都是进行介绍)
不必专门去学习没有掌握的东西,用到了再去学习了解,否则会花费大量时间,效果也不一定好。
5. 如何快速的掌握51单片机
以下为视频推荐的51开发学习板:
以下为学习视频地址:【51系列单片机2018新版教程】零基础学习单片机的开发-最全最新最基础!
相关文章:

51单片机入门_01_单片机(MCU)概述(使用STC89C52芯片)
文章目录 1. 什么是单片机1.1 微型计算机的组成1.2 微型计算机的应用形态1.3 单板微型计算机1.4 单片机(MCU)1.4.1 单片机内部结构1.4.2 单片机应用系统的组成 1.5 80C51单片机系列1.5.1 STC公司的51单片机1.5.1 STC公司单片机的命名规则 2. 单片机的特点及应用领域2.1 单片机的…...

基础项目——扫雷(c++)
目录 前言一、环境配置二、基础框架三、关闭事件四、资源加载五、初始地图六、常量定义七、地图随机八、点击排雷九、格子类化十、 地图类化十一、 接口优化十二、 文件拆分十三、游戏重开 前言 各位小伙伴们,这期我们一起学习出贪吃蛇以外另一个基础的项目——扫雷…...

docker安装elk6.7.1-搜集java日志
docker安装elk6.7.1-搜集java日志 如果对运维课程感兴趣,可以在b站上、A站或csdn上搜索我的账号: 运维实战课程,可以关注我,学习更多免费的运维实战技术视频 0.规划 192.168.171.130 tomcat日志filebeat 192.168.171.131 …...

自然语言处理(NLP)入门:基础概念与应用场景
什么是自然语言处理(NLP)? 自然语言处理(Natural Language Processing, NLP)是人工智能(AI)的一个重要分支,研究如何让计算机理解、生成、分析和与人类语言进行交互。换句话说&…...

AI News(1/21/2025):OpenAI 安全疏忽:ChatGPT漏洞引发DDoS风险/OpenAI 代理工具即将发布
1、OpenAI 的安全疏忽:ChatGPT API 漏洞引发DDoS风险 德国安全研究员 Benjamin Flesch 发现了一个严重的安全漏洞:攻击者可以通过向 ChatGPT API 发送一个 HTTP 请求,利用 ChatGPT 的爬虫对目标网站发起 DDoS 攻击。该漏洞源于 OpenAI 在处理…...

Linux——包源管理工具
一、概要 Linux下的包/源管理命令:主要任务就是完成在Linux环境下的安装/卸载/维护软件。 1.rpm 是最基础的rpm包的安装命令,需要提前下载相关安装包和依赖包。 2.yum/dnf (最好用)是基于rpm包的自动安装命令,可以自动…...

C++解决走迷宫问题:DFS、BFS算法应用
文章目录 思路:DFSBFSBFS和DFS的特点BFS 与 DFS 的区别BFS 的优点BFS 时间复杂度深度优先搜索(DFS)的优点深度优先搜索(DFS)的时间复杂度解释:空间复杂度总结:例如下面的迷宫: // 迷宫的表示:0表示可以走,1表示障碍 vector<vector<int>> maze = {{0, 0,…...

机器学习09-Pytorch功能拆解
机器学习09-Pytorch功能拆解 我个人是Java程序员,关于Python代码的使用过程中的相关代码事项,在此进行记录 文章目录 机器学习09-Pytorch功能拆解1-核心逻辑脉络2-个人备注3-Pytorch软件包拆解1-Python有参和无参构造构造方法的基本语法示例解释注意事项…...

BLE透传方案,IoT短距无线通信的“中坚力量”
在物联网(IoT)短距无线通信生态系统中,低功耗蓝牙(BLE)数据透传是一种无需任何网络或基础设施即可完成双向通信的技术。其主要通过简单操作串口的方式进行无线数据传输,最高能满足2Mbps的数据传输速率&…...

Linux 中的poll、select和epoll有什么区别?
poll 和 select 是Linux 系统中用于多路复用 I/O 的系统调用,它们允许一个程序同时监视多个文件描述符,以便在任何一个文件描述符准备好进行 I/O 操作时得到通知。 一、select select 是一种较早的 I/O 多路复用机制,具有以下特点ÿ…...

单片机-STM32 WIFI模块--ESP8266 (十二)
1.WIFI模块--ESP8266 名字由来: Wi-Fi这个术语被人们普遍误以为是指无线保真(Wireless Fidelity),并且即便是Wi-Fi联盟本身也经常在新闻稿和文件中使用“Wireless Fidelity”这个词,Wi-Fi还出现在ITAA的一个论文中。…...

linux日志排查相关命令
实时查看日志 tail -f -n 100 文件名 -f:实时查看 -n:查看多少行 直接查看日志文件 .log文件 cat 文件名 .gz文件 zgcat 文件名 在日志文件搜索指定内容 .log文件 grep -A 3 “呀1” 文件名 -A:向后查看 3:向后查看行数 “呀1”:搜…...

每日一题-二叉搜索树与双向链表
将二叉搜索树转化为排序双向链表 问题描述 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表,要求空间复杂度为 O(1),时间复杂度为 O(n),并且不能创建新的结点,只能调整树中结点的指针指向。 数据范围 …...

【多视图学习】Self-Weighted Contrastive Fusion for Deep Multi-View Clustering
Self-Weighted Contrastive Fusion for Deep Multi-View Clustering 用于深度多视图聚类的自加权对比融合 TMM 2024 代码链接 论文链接 0.摘要 多视图聚类可以从多个视图中探索共识信息,在过去二十年中越来越受到关注。然而,现有的工作面临两个主要挑…...

ASK-HAR:多尺度特征提取的深度学习模型
一、探索多尺度特征提取方法 在近年来,随着智能家居智能系统和传感技术的快速发展,人类活动识别(HAR)技术已经成为一个备受瞩目的研究领域。HAR技术的核心在于通过各种跟踪设备和测量手段,如传感器和摄像头࿰…...

C语言:数据的存储
本文重点: 1. 数据类型详细介绍 2. 整形在内存中的存储:原码、反码、补码 3. 大小端字节序介绍及判断 4. 浮点型在内存中的存储解析 数据类型结构的介绍: 类型的基本归类: 整型家族 浮点家族 构造类型: 指针类型&…...

深入理解动态规划(dp)--(提前要对dfs有了解)
前言:对于动态规划:该算法思维是在dfs基础上演化发展来的,所以我不想讲的是看到一个题怎样直接用动态规划来解决,而是说先用dfs搜索,一步步优化,这个过程叫做动态规划。(该文章教你怎样一步步的…...

单片机基础模块学习——数码管(二)
一、数码管模块代码 这部分包括将数码管想要显示的字符转换成对应段码的函数,另外还包括数码管显示函数 值得注意的是对于小数点和不显示部分的处理方式 由于小数点没有单独占一位,所以这里用到了两个变量i,j用于跳过小数点导致的占据其他字符显示在数…...

【大数据】机器学习----------强化学习机器学习阶段尾声
一、强化学习的基本概念 注: 圈图与折线图引用知乎博主斜杠青年 1. 任务与奖赏 任务:强化学习的目标是让智能体(agent)在一个环境(environment)中采取一系列行动(actions)以完成一个…...

flink写parquet解决timestamp时间格式字段问题
背景 Apache Parquet 是一种开源的列式数据文件格式,旨在实现高效的数据存储和检索。它提供高性能压缩和编码方案(encoding schemes)来批量处理复杂数据,并且受到许多编程语言和分析工具的支持。 在我们通过flink写入parquet文件的时候,会遇到timestamp时间格式写入的问题。…...

redis实现lamp架构缓存
redis服务器环境下mysql实现lamp架构缓存 ip角色环境192.168.242.49缓存服务器Redis2.2.7192.168.242.50mysql服务器mysql192.168.242.51web端php ***默认已安装好redis,mysql 三台服务器时间同步(非常重要) # 下载ntpdate yum -y install…...

正则表达式中常见的贪婪词
1. * 含义:匹配前面的元素零次或者多次。示例:对于正则表达式 a*,在字符串 "aaaa" 中,它会匹配整个 "aaaa",因为它会尽可能多地匹配 a 字符。代码示例(Python):…...

CF 339A.Helpful Maths(Java实现)
题目分析 输入一串式子,输出从小到大排列的式子 思路分析 如上所说核心思路,但是我要使用笨方法,输入一串式子用split分割开,但是此时需要用到转义字符,即函数内参数不能直接使用“”,而是“\\”。分割开后…...

SQL 指南
SQL 指南 引言 SQL(Structured Query Language,结构化查询语言)是一种用于管理关系数据库系统的标准计算机语言。自1970年代问世以来,SQL已经成为了数据库管理和数据操作的事实标准。本文旨在为初学者和有经验的数据库用户提供一个全面的SQL指南,涵盖SQL的基础知识、高级…...

DDD架构实战第七讲总结:分层模型和代码组织
云架构师系列课程之DDD架构实战第七讲总结:分层模型和代码组织 一、引言 在前几讲中,我们介绍了领域驱动设计(DDD)的基本构造块和生命周期模型中的聚合。本讲将重点讨论如何将这些构造块和代码组织起来,探讨分层架构和六边形模型,以及如何组织代码结构。 二、工厂和资…...

Python “字典” 实战案例:5个项目开发实例
Python “字典” 实战案例:5个项目开发实例 内容摘要 本文包括 5 个使用 Python 字典的综合应用实例。具体是: 电影推荐系统配置文件解析器选票统计与排序电话黄页管理系统缓存系统(LRU 缓存) 以上每一个实例均有完整的程序代…...

(一)QT的简介与环境配置WIN11
目录 一、QT的概述 二、QT的下载 三、简单编程 常用快捷键 一、QT的概述 简介 Qt(发音:[kjuːt],类似“cute”)是一个跨平台的开发库,主要用于开发图形用户界面(GUI)应用程序,…...

在 Windows 系统上,将 Ubuntu 从 C 盘 迁移到 D 盘
在 Windows 系统上,如果你使用的是 WSL(Windows Subsystem for Linux)并安装了 Ubuntu,你可以将 Ubuntu 从 C 盘 迁移到 D 盘。迁移过程涉及导出当前的 Ubuntu 发行版,然后将其导入到 D 盘的目标目录。以下是详细的步骤…...

vue2的$el.querySelector在vue3中怎么写
这个也属于直接操作 dom 了,不建议在项目中这样操作,不过我是在vue2升级vue3的时候遇到的,是以前同事写的代码,也没办法 先来看一下对比 在vue2中获取实例是直接通过 this.$refs.xxx 获取绑定属性 refxxx 的实例,并且…...

GPSd定时检测保活TCP GPS源
为了在 TCP GPS 源丢失连接时自动重新连接,可以编写一个监控脚本,定期检查 gpspipe 输出中的 TCP 源数据是否存在。如果检测到丢失,则使用 gpsdctl 或直接命令重新添加 TCP 源。 1、工具 检查并安装必要工具,本例需要使用 gpspi…...