stm32week11

stm32学习

八.stm32基础

2.stm32内核和芯片

F1系统架构:4个主动单元和4个被动单元

AHB是内核高性能总线,APB是外围总线

总线矩阵将总线和各个主动被动单元连到一起

ICode总线直接连接Flash接口,不需要经过总线矩阵

AHB:72MHz,APB1:36MHz,APB2:72MHz

F4系统架构:8个主动单元和7个被动单元

架构图(F407为例)

F7系统架构:12个总线主控器+8个总线从控制器

结构图:

DTCM RAM:即可存放数据,也可存放指令

ITCM RAM:支持CPU时钟速度访问,0个等待周期

AHB1/2:216MHz

APB1:54MHz

APB2:108MHz

H7系统架构图:

有3个总线矩阵,矩阵之间有独立的通信通道,信号只能从主接口发送到从接口

ITCM:存放程序

DTCM:存放数据

AHB1/2/3/4:240MHz

APB1/2/3/4:120MHz

3.存储器映射

ST将4GB(2^32)地址空间分成8个块:

Block0(FLASH)功能划分:

Block1(SRAM)功能划分:

Block2(外设)功能划分:

4.寄存器映射

寄存器映射小技巧:

因为结构体内的变量的地址是连续的,所以可以快速的定义变量的地址

文件stm32f103xe.h是用来宏定义各种变量的,主要包括中断编号、外设寄存器结构体类型、寄存器映射、寄存器位定义、外设判定

九.HAL库

1.介绍

官网可下载各种型号的cube文件(HAL库)

CMSIS:微控制器软件接口标准,由ARM和芯片厂商等共同制定

Cube固件包文件夹简介:

重要的只有Drivers、Middlewares和Projects

Drivers、Middlewares文件夹介绍:

Drivers文件夹中的CMSIS文件夹中的关键文件:

Drivers文件夹中的CMSIS文件夹中的所有文件:

Device和Include文件夹的关键文件介绍:

相关推荐
CiLerLinux21 分钟前
第一章 FreeRTOS简介
单片机·嵌入式硬件·物联网·gnu
Allan_202530 分钟前
数据库学习
数据库·学习
报错小能手1 小时前
linux学习笔记(43)网络编程——HTTPS (补充)
linux·网络·学习
报错小能手1 小时前
linux学习笔记(45)git详解
linux·笔记·学习
百锦再1 小时前
Vue Scoped样式混淆问题详解与解决方案
java·前端·javascript·数据库·vue.js·学习·.net
Larry_Yanan2 小时前
QML学习笔记(四十四)QML与C++交互:对QML对象设置objectName
开发语言·c++·笔记·qt·学习·ui·交互
沐欣工作室_lvyiyi2 小时前
基于单片机的智能灯光控制系统设计与实现(论文+源码)
stm32·单片机·嵌入式硬件·毕业设计·灯光控制
Blossom.1182 小时前
把AI“刻”进玻璃:基于飞秒激光量子缺陷的随机数生成器与边缘安全实战
人工智能·python·单片机·深度学习·神经网络·安全·机器学习
Jeled3 小时前
AI: 生成Android自我学习路线规划与实战
android·学习·面试·kotlin
应用市场3 小时前
STM32电池管理系统(BMS):电量统计原理与实现
stm32·单片机·嵌入式硬件