当前位置: 首页 > news >正文

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

BLE透传方案,IoT短距无线通信的“中坚力量”

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

Linux 中的poll、select和epoll有什么区别?

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

单片机-STM32 WIFI模块--ESP8266 (十二)

1.WIFI模块--ESP8266 名字由来&#xff1a; Wi-Fi这个术语被人们普遍误以为是指无线保真&#xff08;Wireless Fidelity&#xff09;&#xff0c;并且即便是Wi-Fi联盟本身也经常在新闻稿和文件中使用“Wireless Fidelity”这个词&#xff0c;Wi-Fi还出现在ITAA的一个论文中。…...

linux日志排查相关命令

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

每日一题-二叉搜索树与双向链表

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

【多视图学习】Self-Weighted Contrastive Fusion for Deep Multi-View Clustering

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

ASK-HAR:多尺度特征提取的深度学习模型

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

C语言:数据的存储

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

深入理解动态规划(dp)--(提前要对dfs有了解)

前言&#xff1a;对于动态规划&#xff1a;该算法思维是在dfs基础上演化发展来的&#xff0c;所以我不想讲的是看到一个题怎样直接用动态规划来解决&#xff0c;而是说先用dfs搜索&#xff0c;一步步优化&#xff0c;这个过程叫做动态规划。&#xff08;该文章教你怎样一步步的…...

单片机基础模块学习——数码管(二)

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

【大数据】机器学习----------强化学习机器学习阶段尾声

一、强化学习的基本概念 注&#xff1a; 圈图与折线图引用知乎博主斜杠青年 1. 任务与奖赏 任务&#xff1a;强化学习的目标是让智能体&#xff08;agent&#xff09;在一个环境&#xff08;environment&#xff09;中采取一系列行动&#xff08;actions&#xff09;以完成一个…...

flink写parquet解决timestamp时间格式字段问题

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

利用快马ai快速生成流水线plc控制逻辑原型,无硬件也能验证思路

最近在做一个自动化流水线的小项目&#xff0c;需要设计PLC控制逻辑。传统方式需要先搭建硬件环境才能调试&#xff0c;但通过InsCode(快马)平台的AI辅助&#xff0c;我实现了无硬件环境下的快速原型验证&#xff0c;分享下这个实用经验。 项目背景与需求分析 这个流水线控制系…...

【紧急预警】Mojo nightly build已悄然移除PyModule::import() API!立即备份旧版+迁移至PyO3 0.21+手动GC管理方案(附自动化迁移脚本)

第一章&#xff1a;【紧急预警】Mojo nightly build已悄然移除PyModule::import() API&#xff01;立即备份旧版迁移至PyO3 0.21手动GC管理方案&#xff08;附自动化迁移脚本&#xff09;Mojo nightly build v2024.06.12 起&#xff0c;PyModule::import() 已被彻底移除&#x…...

Pencil:重新定义设计与开发的边界

&#x1f3a8; Pencil&#xff1a;重新定义设计与开发的边界 更多问题讨论和资料获取&#xff0c;请关注文章最后的微信公众号 当"设计即代码"成为现实&#xff0c;前端开发者的工作流正在经历一场革命 &#x1f4d6; 什么是 Pencil&#xff1f; 如果你是一名前端开…...

【开发工具】Trae IDE 解决 Windows 下 C 工程无法跳转定义问题

1. 概要 &#x1f44b; 作为 Trae IDE 使用者&#xff0c;在 Windows 环境打开本地 C 工程时&#xff0c;习惯用 Ctrl 鼠标左键 快速跳转函数 / 变量定义却失效&#xff0c;仅能做文本匹配&#xff0c;无法精准定位语义定义。核心原因是 Trae 依赖 LSP&#xff08;语言服务器协…...

Vivado仿真踩坑实录:PR模式不支持仿真的快速解决方案(附详细步骤)

Vivado仿真避坑指南&#xff1a;PR模式不支持仿真的深度解析与实战方案 刚接触FPGA开发的朋友们&#xff0c;不知道你们是否遇到过这样的场景&#xff1a;在Vivado中精心设计了一个工程&#xff0c;准备进行仿真验证时&#xff0c;突然弹出一个令人困惑的错误提示——"Sim…...

Docker 容器中文字体及 matplotlib 环境应用

为了避开 Noto CJK 这种复杂的 TTC(TrueType Collection)大包带来的识别问题,最理想的选择是使用独立打包的 OTF 或 TTF 字体。 0. 环境检查 # 1. 更新源并安装 fontconfig apt-get update apt-get install -y fontconfig# 2. 现在 fc-cache 命令可用了,刷新系统字体 fc-…...

Wireshark抓包实战:DHCP协议交互全流程解析(附常见问题排查)

Wireshark深度解析&#xff1a;DHCP协议交互全流程与实战排错指南 从零开始理解DHCP协议的本质 想象一下&#xff0c;当你带着笔记本电脑走进一家咖啡馆&#xff0c;连接Wi-Fi的瞬间&#xff0c;设备就自动获得了上网所需的所有配置——IP地址、子网掩码、默认网关、DNS服务器。…...

Dlib零基础避坑指南:Windows Python环境一键部署实战

Dlib零基础避坑指南&#xff1a;Windows Python环境一键部署实战 【免费下载链接】Dlib_Windows_Python3.x Dlib compiled binary (.whl) for Python 3.7-3.11 and Windows x64 项目地址: https://gitcode.com/gh_mirrors/dl/Dlib_Windows_Python3.x 副标题&#xff1a;…...

Realistic Vision V5.1镜像部署实操:解决‘模型路径不存在’异常的完整排查链

Realistic Vision V5.1镜像部署实操&#xff1a;解决‘模型路径不存在’异常的完整排查链 1. 引言&#xff1a;从“模型路径不存在”说起 如果你在部署Realistic Vision V5.1虚拟摄影棚时&#xff0c;满怀期待地启动程序&#xff0c;结果却在控制台看到一行冰冷的“模型路径不…...

SpringBoot 3.2.0 项目里整合 Flowable 7.1.0,我踩过的那些坑和最佳实践

SpringBoot 3.2.0 项目里整合 Flowable 7.1.0&#xff0c;我踩过的那些坑和最佳实践 最近在重构公司内部的工作流系统时&#xff0c;我决定采用 SpringBoot 3.2.0 和 Flowable 7.1.0 的组合。本以为只是简单的依赖引入和配置&#xff0c;没想到从 POM 文件开始就踩了不少坑。这…...