自学内容网 自学内容网

【单片机基础知识】基础知识(CortexM系列、STM32系统框架、存储器映射、寄存器映射)

1. CortexM系列介绍

ARM官方资料:

📎Arm Cortex-M4 Processor Datasheet.pdf📎Arm-Cortex-M7-Processor-Datasheet.pdf📎Arm Cortex-M Comparison Table_v3.pdf📎Arm Cortex-M3 Processor Datasheet.pdf

课程资料:

📎Cortex-M系列介绍(课堂总结).pdf📎体系结构(ARM架构版本)与其对应的ARM处理器内核.pdf📎Cortex-M系列介绍.pptx

1.1. ARM公司:

1.2. Cortex内核分类及特征

Thumb/Thumb-2——16/32位指令集

这里的中断资料是这个架构所支持的,具体由芯片公司设计

2. STM32系统框架

2.1. Cortex-M内核&芯片:

2.2. F1系统架构:

参考资料:

📎Cortex-M3权威指南.pdf

📎STM32F10xxx Cortex-M3编程手册.pdf

📎STM32F10xxx参考手册(中文).pdf

📎STM32F10xxx闪存编程参考手册(中文).pdf

📎STM32F103x8B数据手册(中文).pdf

📎STM32F103x8B数据手册(英文).pdf(系统框图在英文版中)

📎STM32F103xx固件函数库用户手册.pdf

2.2.1. 非互联型(4个主动单元):

C8T6举例

2.2.2. 互联型(5个主动单元、3个被动单元):添加了网口(ETH)、USB等主动单元

2.3. F4系统架构:

参考资料:

📎Cortex-M4 Devices Generic User Guide.pdf📎ST MCU 最新选型手册_201408.pdf📎STM32F3与F4系列Cortex M4内核编程手册.pdf📎STM32F4_高性能_DSC.pdf📎STM32F4xx英文参考手册.pdf📎STM32F4xx中文参考手册.pdf📎Cortex M3权威指南(中文).pdf📎Cortex M3与M4权威指南.pdf

小圆圈代表相连

2.4. F7系统架构:

2.5. H7系统架构:

参考资料:📎STM32H7开发指南-HAL库版本_V1.0.pdf

📎Cortex M3权威指南(中文).pdf📎Cortex M7 Generic User Guide.pdf📎Cortex M7 Technical Reference Manual.pdf📎Level 1 cache on STM32F7 Series.pdf📎ST MCU 最新选型手册_201903.pdf📎STM32 MPU说明.pdf📎STM32F7 Cache Oveview.pdf📎STM32F7 MPU Cache浅析.pdf📎STM32F7和H7的差异.pdf📎STM32F7中文参考手册.pdf📎STM32H7xx参考手册(V3中文版).pdf📎STM32H7xx参考手册.pdf📎STM32H7编程手册.pdf📎STM32H743勘误手册.pdf

2.5.1. 主从设备互联关系:主从设备的访问关系

3. STM32的寻址范围:2^32 == 0x0 ~ 0xFFFFFFFF

根据地址访问到的一次是8bit(1字节)

4. 存储器映射(熟悉):

4.1. STM32存储器功能划分——F1为例:

STM32的地址空间共4GB(即有2^32个地址),需要将地址和内存映射起来。

ST将这些地址划分成块,根据不同芯片中内存大小,映射长度也不同。

一般只侧重于前三个块。

4.1.1. Block0(FLASH)功能划分:

512MB

4.1.2. Block1(SRAM)功能划分:片内内存

512MB

4.1.3. Block2(外设)功能划分:

512MB

4.1.4. 其他块:用到再学习

4.2. STM32存储器功能划分——H7为例:

这里是H750举例

外设与F1不同

4.2.1. Block0

4.2.2. Block1

4.2.3. Block2

4.3. 可以在芯片手册找到(存储器)地址映射图:

4.3.1. 低级芯片:F1

4.3.2. 高级芯片:H7

📎STM32H7xx参考手册(V3中文版).pdf

5. 寄存器映射(熟悉):

5.1. 基础知识补充:寄存器是单片机内部一种特殊的内存,可控制单片机功能

5.2. STM32寄存器分类(了解):

内核寄存器、外设寄存器

5.3. 寄存器映射:(寄存器是特殊的存储器),给寄存器地址命名的过程,就叫寄存器映射

5.4. 寄存器描述解读——F1为例:

偏移量:针对当前外设基地址

基地址:

寄存器地址 = 偏移量 + 基地址

复位值:这个寄存器复位时的值

位表:(bit)位名,该位状态/读写情况

位功能描述:该位的作用

5.5. 寄存器映射举例:

5.6. 寄存器地址计算

  • 地址怎么找
  • 寄存器映射方法

示例:(F1)

5.7. 寄存器映射实现——HAL库(在stm32xxxxxe.h):(F1举例)

6. 对3. 4. 5.总结


原文地址:https://blog.csdn.net/m0_74209072/article/details/144266089

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!