Cortex-M3 内核 MCU-STM32F1 开发之路:(一)单片机 MCU 的构成,包括 FLASH 和 SRAM 的区别,以及引脚类型

上一篇 下一篇
SWD 和 JTAG 的区别 待写

1)单片机 MCU 的构成

单片机:Single-Chip Microcomputer,单片微型计算机,是一个完整的系统级芯片,也称为 MCU(MicroController Unit)。

MCU 通常是一 个大的系统级芯片,他把 CPU、SRAM、FLASH 都集成到了这个芯片中(和电脑不一样,电脑这三个都是分开的),内部的完整构成为:CPU + 存储器 + 外设控制器 + 时钟系统 + 总线矩阵 + 电源管理

MCU 芯片外部图:

MCU 芯片内部图(LQFP封装,不尽相同,仅作参考):

构成:

其中:

  • CPU中央处理器,比如 ARM Cortex-M3(相当于电脑的 CPU )
  • SRAM静态随机存取存储器(相当于电脑的运行内存,不过电脑的是动态存储器 DRAM )
  • FLASH闪存 ,是一种非易失性存储器,其中一部分用于存储代码,一部分用于存储关键数据(相当于电脑的硬盘)
    • 也就是说代码是下载在单片机的 flash 里的,掉电保护。
    • 特点是:非易失、可多次擦写(10万次以上)、支持块擦除,速度快、成本低,集成度高。
    • 电脑中的硬盘,本质上就是大容量的 Flash 存储器。
    • 【注意】 ROM 翻译过来是只读存储器,最初的 ROM 是出厂时写入,无法修改,随着技术发展,出现了可编程的"ROM",比如 EEPROM,而 FLASH 是 EEPROM 的改进版,支持块擦除(比字节擦除更快)。现代多称呼 ROM 是一个功能概念,指 "用来存程序、掉电不丢的存储器" ,而 Flash 是一种技术实现,是现代单片机中实现 ROM 功能的主流方式。
  • 外设控制器IO 口、USB 等外设的控制器

2)FLASH 和 SRAM 的区别

特性 FLASH SRAM
存储类型 非易失性存储器(断电后数据不丢失) 易失性存储器(断电后数据丢失)
主要用途 存放程序代码常量数据(如图片、配置) 存放运行时数据(如变量、堆栈、中间结果)
读写速度 读取较快,写入很慢(需先擦除再写) 读写都极快,与 CPU 速度匹配
读写方式 按"扇区/页"擦除,按"字/页"写入 可按"字节/字"随机读写,像普通内存
寿命 有限(通常 1万~10万次擦写) 理论上无限次读写
成本与密度 成本低,存储密度高(容量大) 成本高,存储密度低(容量小)
类比 硬盘或 U 盘------用于长期保存文件 电脑内存条 (RAM)------程序运行时的"工作台"

简单来说就是:FLASH 是"仓库" :用来长期存放程序和数据,断电不丢,但存取慢;SRAM 是"工作台":程序运行时把要用的东西从仓库(FLASH)搬上来,快速处理,断电后清空。在单片机中,程序从 FLASH 启动,但运行时的变量、堆栈等必须加载到 SRAM 中才能被 CPU 高速访问。

【注意】 RW-data(read write)类型的数据:一个初始值非 0 的数据,初值会存放在 FLASH 中,然后程序启动后,将 Flash 中存储的 RW-data 初始值复制到 SRAM 中对应的变量地址。之后程序运行过程中,CPU 操作的都是 SRAM 中的,可以自由读写。

3)原理图引脚类型:

  • 电源引脚:标识符前以 V 开头的基本上都是;
  • 晶振引脚:标识符里带 OSC 的都是;
  • 复位引脚:标识符里带 RST 的都是;
  • 下载引脚:JTAG 和 SWD 相关的引脚(串口1也可以下载,但是一般都不用);
  • BOOT引脚:标识符里带 BOOT 的引脚都是(一般是2个);
  • GPIO引脚:凡是以 P 开头的引脚都是;

相关推荐
cjy_Somnr2 小时前
keil5报错显示stm32的SWDIO未连接不能烧录
stm32·单片机·嵌入式硬件
Lay_鑫辰3 小时前
西门子诊断-状态和错误位(“轴”工艺对象 V1...3)
服务器·网络·单片机·嵌入式硬件·自动化
无垠的广袤5 小时前
【工业树莓派 CM0 NANO 单板计算机】本地部署 EMQX
linux·python·嵌入式硬件·物联网·树莓派·emqx·工业物联网
雲烟7 小时前
嵌入式设备EMC安规检测参考
网络·单片机·嵌入式硬件
泽虞7 小时前
《STM32单片机开发》p7
笔记·stm32·单片机·嵌入式硬件
田甲8 小时前
【STM32】 数码管驱动
stm32·单片机·嵌入式硬件
up向上up8 小时前
基于51单片机垃圾箱自动分类加料机快递物流分拣器系统设计
单片机·嵌入式硬件·51单片机
纳祥科技17 小时前
Switch快充方案,内置GaN,集成了多个独立芯片
单片机
单片机日志18 小时前
【单片机毕业设计】【mcugc-mcu826】基于单片机的智能风扇系统设计
stm32·单片机·嵌入式硬件·毕业设计·智能家居·课程设计·电子信息
松涛和鸣19 小时前
从零开始理解 C 语言函数指针与回调机制
linux·c语言·开发语言·嵌入式硬件·排序算法