目录
1、STM32芯片的样子
使用的芯片是144pin的STM32F407ZGT6。芯片正面是丝印,ARM应该是表示该芯片使用的是ARM的内核,STM32F429IGT6是芯片型号,后面的字应该是跟生产批次相关,最下面的是ST的LOGO。
1.1、芯片的正方向
- 芯片四周是引脚,左下角的小圆点表示1脚,然后从1脚起按照逆时针的顺序排列。
- 没有小圆点的时候,正看丝印,左上脚为第一引脚,逆时针顺序排列。
1.2、芯片引脚名称
1.3、STM32芯片架构
2、存储器映射
在总线接口中,连接被控总线的是FLASH,RAM和片上外设, 这些功能部件共同排列在一个4GB的地址空间内。在编程的时候,操作的也正是这些功能部件。
存储器本身不具有地址信息,它的地址是由芯片厂商或用户分配,给存储器分配地址的过程就称为存储器映射,见下图 。如果给存储器再分配一个地址就叫存储器重映射。
下方的存储区映射图可以在STM32的数据手册中的memory mapping小节中找到。
2.1、存储器区域功能划分
在这4GB的地址空间中,ARM已经粗线条的平均分成了8个块,每块512MB,每个块也都规定了用途,具体分类见下表。 每个块的大小都有512MB,显然这是非常大的,芯片厂商在每个块的范围内设计各具特色的外设时并不一定都用得完,都是只用了其中的一部分而已。
在这8个Block里面,有3个块非常重要,也是我们最关心的三个块。Boock0用来设计成内部FLASH,Block1用来设计成内部RAM,Block2用来设计成片上的外设。
2.1.1、block0的功能区域划分
lock0主要用于设计片内的FLASH,FLASH的最大内存为1MB,