STM32——寄存器映射

总 :STM32------HAL库总结-CSDN博客

芯片资料:

STM32F1系列参考手册-V10(中)

STM32F103ZET6(English)

一、寄存器基础

1.1 简介

单片机内部的控制机构。

像空气开关控制电路一样的原理,打开关闭某个开关,来控制某个电路,实现什么功能。

2.2 寄存器类型

二、寄存器映射

2.1 简介

例如:

其实就是C语言的(unsigned int)转指针。

2.2 存储器映像

STM32F1系列参考手册-V10(中)

STM32 一组IO 16个【PA0~PA15】,51单片机一组IO 8个。

2.3 寄存器解读

地址偏移是针对外设来说的。也就是说偏移量 0x0C是针对此物理地址的偏移值。

位功能在手册中会有具体描述。

2.4 寄存器赋值

2.4.1 直接赋值

2.4.2 宏名定义

2.5 寄存器地址计算

2.5.1 总线基地址

总线基地址就是存储器映像实际地址。

存储器映像中 APB1基地址:

STM32F1系列参考手册-V10(中)

APB1基地址,也叫外设基地址,此可由memory map查看:

STM32F103ZET6(English)

2.5.2 GPIO外设基地址

2.5.2.1 GPIOA 寄存器地址

2.5.3 寄存器地址确认

2.6 *结构体映射寄存器*

结构体成员是连续分配内存的。 使用相同类型的成员大小是相同的,不会被字节对齐有空位。那么也就是说,(unsigned int)强转的结构体指针可指向4byte大小的成员,也就是**连续的寄存器(4byte)**地址内容。

映射的核心理念还是 指针与(unsigned int)转换以及解引用。

三、stm32f103xe.h 映射组成

相关推荐
星恒讯工业路由器33 分钟前
MCU+WiFi与CPU+WiFi模块区别
单片机·嵌入式硬件
LCMICRO-1331084774634 分钟前
长芯微LD7940完全P2P替代AD7940,是一款14位、逐次逼近型模数转换器(ADC)
单片机·嵌入式硬件·fpga开发·硬件工程·dsp开发·模数转换器adc
聆风吟º1 小时前
【C标准库】深入理解C语言strcat函数:字符串拼接的利器
c语言·开发语言·strcat·库函数
进击的小头2 小时前
20_第20篇:嵌入式外设驱动开发基础:寄存器级开发与库函数开发对比实战
arm开发·驱动开发·单片机
guygg883 小时前
基于STM32的智能小区管理系统设计
stm32·单片机·嵌入式硬件
Deitymoon3 小时前
STM32——震动传感器控制led
stm32·单片机·嵌入式硬件
我不是懒洋洋4 小时前
手写一个一致性哈希:从原理到分布式缓存实战
c语言
mount_myj4 小时前
异或树【C语言】
c语言
70asunflower4 小时前
C/C++ 自定义函数的常用规范:从入门到工程实践
c语言·c++
发疯幼稚鬼4 小时前
二叉树的广度优先遍历
c语言·数据结构·算法·宽度优先