STM32什么是寄存器

提示:文章

文章目录

前言

前期疑问:

1、什么是寄存器?

答:在4GB的地址空间中,512MB的block2上,每4个字节组成32位,这个32位为一个单元,控制(对应)不同的功能,对这些地址取个别名,便于记忆,这个别名叫做寄存器。

本文目标:


一、背景

2025年6月7日11:26:35

重新看了下野火文章,什么是寄存器。获取到一些新的知识。

二、

2.1

关于看的这个教程的主控芯片,STM32F103ZET6。通过Z字段可以得知是144Pin引脚的芯片。E字段表示内部FLASH大小是512KB。T表示是QFP封装。6表示芯片工作温度范围为-40~85℃。

之前也有个疑惑的点,就是芯片内部的存储器包括什么?这次看了文章,直到芯片内部有内部FLASH,和SRAM(即平时说的RAM),还有一个外设模块。可见下图:

STM32芯片架构图

文章中提到STM32有4G的地址空间,然后我就很疑惑为什么STM32有4G那么大的空间?后来想了下可能寄存器是32位,可以查找4G的地址范围。2的32次方是,4294967296。然后4G的值,1GB的值是1 000 000 000。这个是10进制的算法,二进制算法是2的30次方,为1073741824。2的32次方是4294967296,确实是4G,所以确实地址空间确实是因为寄存器是32位的。

4G的地址空间分成了8个block,每个block的大小是512MB,第一个block0指向FLASH的地址空间,第二个block1指向的是SRAM的地址空间。STM32F103ZET6的FLASH大小是512KB,SRAM是64KB,不会占用全部512MB的地址空间。会有保留。具体看下表

FLASH地址位置
SRAM地址位置

联想到MDK上的配置,截了下图

MDK上之前设置的芯片是STM32F103RE,E字段代表FLASH是512KB的,设置的FLASH大小是512KB,SRAM设置成64KB

2.2

三、

3.1


总结

未完待续

相关推荐
钰珠AIOT5 小时前
在同一块电路板上同时存在 0805 0603 不同的封装有什么利弊?
嵌入式硬件
代码游侠5 小时前
复习——Linux设备驱动开发笔记
linux·arm开发·驱动开发·笔记·嵌入式硬件·架构
代码游侠16 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
xuxg200518 小时前
4G 模组 AT 命令解析框架课程正式发布
stm32·嵌入式·at命令解析框架
CODECOLLECT20 小时前
京元 I62D Windows PDA 技术拆解:Windows 10 IoT 兼容 + 硬解码模块,如何降低工业软件迁移成本?
stm32·单片机·嵌入式硬件
BackCatK Chen20 小时前
STM32+FreeRTOS:嵌入式开发的黄金搭档,未来十年就靠它了!
stm32·单片机·嵌入式硬件·freertos·低功耗·rtdbs·工业控制
全栈游侠1 天前
STM32F103XX 02-电源与备份寄存器
stm32·单片机·嵌入式硬件
Lsir10110_1 天前
【Linux】中断 —— 操作系统的运行基石
linux·运维·嵌入式硬件
深圳市九鼎创展科技1 天前
瑞芯微 RK3399 开发板 X3399 评测:高性能 ARM 平台的多面手
linux·arm开发·人工智能·单片机·嵌入式硬件·边缘计算
辰哥单片机设计1 天前
STM32项目分享:车辆防盗报警系统
stm32·单片机·嵌入式硬件