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

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 映射组成

http://www.dtcms.com/a/303547.html

相关文章:

  • LLaMA-Factory微调教程2:命令行sft微调
  • 【拓扑排序 缩点】P2272 [ZJOI2007] 最大半连通子图|省选-
  • 【跳跃游戏】
  • BUUCTF-MISC-[HBNIS2018]caesar1
  • Linux驱动22 --- RV1126 环境搭建设备树修改
  • 从零到一:我是如何用深度学习打造高性能书籍推荐系统的
  • mp核心功能
  • 零基础学习性能测试第九章:全链路追踪-项目实操
  • 猎板 PCB 控深槽工艺:5G 基站散热模块的关键支撑
  • 解决c++运行时提示:first defined here (重复定义问题)
  • **线程与进程的区别与联系**
  • Qt下使用图形视图框架实现图像上各图形绘制
  • 一个Pycharm窗口添加多个项目来满足运行多个项目的需求
  • linux常用的指令
  • HTML响应式SEO公司网站源码
  • MVSNet系列网络概述
  • 7寸工业模组 XA070Y2-L01芯显科技详细参数资料
  • MCU中的外设总线是什么?
  • 带 USB 接口的多功能 AI 降噪消回音模组 A-59P:革新语音处理体验​
  • 基于Flask的智能停车场管理系统开发实践
  • Java基础-IO流
  • Python day27
  • GoLand 项目从 0 到 1:第三天 —— 图数据库版本管理方案调研与中间件部署
  • 064_不可变集合与同步集合
  • python列表与元组--python005
  • 《中小学音乐教育》是什么级别的期刊?是正规期刊吗?能评职称吗?
  • c++: 尾置返回类型(Trailing Return Type)
  • 深度解析Manus:从多智能体架构到通用AI Agent的技术革命
  • Unity教程(二十五)技能系统 掷剑技能(下)冻结时间实现
  • PostgreSQL 详解