本节书摘来自华章出版社《STM32库开发实战指南:基于STM32F4》一书中的第3章,第3.3节,作者刘火良,杨森编著,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
3.3 STM32选型
3.3.1 STM32分类
STM32有很多系列,可以满足市场的各种需求。从内核上分,有Cortex-M0、M3、M4和M7,每个内核又可分为主流、高性能和低功耗等,具体见表3-2。
单纯从学习的角度出发,可以选择F1和F4系列。F1代表了基础型,基于Cortex-M3内核,主频为72MHz;F4代表了高性能,基于Cortex-M4内核,主频180MHz。
与F1相比,F4(429系列以上)除了内核不同且主频有提升外,更高级的特点是带了LCD控制器和摄像头接口,支持SDRAM,这个区别在STM32选型上会被优先考虑。
3.3.2 STM32命名方法
这里我们以秉火F429挑战者所用的型号STM32F429IGT6来说明一下STM32的命名方法,见表3-3。
更详细的命名方法见图3-5,摘自《STM8和STM32选型手册》。
3.3.3 选择合适的MCU
了解了STM32的分类和命名方法之后,就可以根据项目的具体需求选择内核的MCU,如果是普通应用,不需要接大屏幕,一般选择Cortex-M3内核的F1系列;如果追求高性能,需要大量的数据运算,且需要外接RGB大屏幕,则选择Cortex-M4内核的F429系列。
明确了大方向之后,接下来就是细分选型。先确定引脚,引脚多的功能就多,价格也贵,具体得根据实际项目中需要使用的功能选择。确定好了引脚数目之后再选择闪存大小,相同引脚数的MCU会有不同大小的闪存可供选择,这个也要参考实际需要,代码量大的就选择大点的闪存,产品一量产后可省下不少钱。有些月出货量以KK(百万数量级)为单位的产品,不仅是MCU,连电阻、电容都要精打细算,甚至连PCB的过孔的多少都要计算。在项目中元器件的选型有很多学问值得研究。
1.如何分配原理图上的IO引脚
在画原理图之前,一般的做法是先把IO引脚分类好。IO引脚分类见表3-4。
2.如何寻找IO的功能说明
要想根据功能来分配IO,就得先知道每个IO的功能说明,这可以从官方的数据手册里面找到。在学习的时候,会经常用到两个官方资料,一个是参考手册(Reference Manual),另外一个是数据手册(Data Sheet)。两者的具体区别见表3-5。
一句话概括:数据手册主要用于芯片选型和设计原理图,参考手册主要用于编程。这两个文档可以从官方网址下载:http://www.stmcu.org/document/list/index/category-150。
在数据手册中,有关引脚定义的部分在“Pinouts and pin description”这一节中,具体定义见表3-6,具体说明见表3-7。
3.开始分配原理图IO
比如F429挑战者使用的MCU型号是STM32F429IGT6,封装为LQFP176,在数据手册中找到这个封装的引脚定义,然后根据引脚序号,逐一复制出来,整理成Excel表。具体整理方法参照表3-4即可。分配好之后就可开始画原理图。