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


总结

未完待续

相关推荐
偶像你挑的噻7 小时前
15-Linux驱动开发-PWM子系统
linux·驱动开发·stm32·嵌入式硬件
硅农深芯8 小时前
是时候跟GitBucket说再见了
git·单片机
未来之窗软件服务8 小时前
幽冥大陆(三十八)P50酒店门锁SDK C#仙盟插件——东方仙盟筑基期
开发语言·单片机·c#·东方仙盟·东方仙盟sdk·东方仙盟vos智能浏览器
Java小白,一起学习11 小时前
STM32新建工程(标准库官网下载)
stm32·单片机·嵌入式硬件
vickycheung311 小时前
RK3588增加Xenomai3实时补丁
经验分享·嵌入式硬件·arm 嵌入式开发
Bona Sun13 小时前
单片机手搓掌上游戏机(十五)—pico运行fc模拟器之编译环境
c语言·c++·单片机·游戏机
贝塔实验室13 小时前
红外编解码彻底解析
网络·嵌入式硬件·信息与通信·信号处理·代码规范·基带工程·精益工程
小尧嵌入式13 小时前
C++基础语法总结
开发语言·c++·stm32·单片机·嵌入式硬件·算法
2401_8534482314 小时前
STM32F103C8T6---OLED显示屏
stm32·单片机·oled
沐欣工作室_lvyiyi14 小时前
基于单片机的居家智能音箱系统(论文+源码)
stm32·单片机·嵌入式硬件·毕业设计·智能音箱