STM32我用了近10年了,用它做过的项目至少也有10几个。
可以说是我用过单片机里,最省心最好用的,不会有乱七八糟的问题。
我感觉STM32这几年这么热门,开发板至少占了一半功劳。
不过,本质问题还是芯片也受到了市场和企业认可,毕竟商业都是逐利的。
下面聊下STM32到底有哪些优点?
STM32很早之前就有了,资料各方面都很丰富,在加上市面上开发板和教程的加持,导致大家学习STM32的门槛和成本都大大降低。
我觉得ST从开始的定位就很成功,推出固件库,让工程师直接调库就能把单片机用起来,免去繁琐的寄存器配置流程,极大缩短了产品开发周期。
印象中,ST是第一个走这种开发模式的,我第一次接触32位机是nxp的单片机,需要自己配置寄存器使用外设,光是这个环节都浪费了大量时间。
虽然STM32外设多,比较复杂,但是用熟了以后感觉比51还简单。
STM32单片机的内核基于ARMCortex-M,具有高性能、低功耗的特点,搭载高速的处理器和内存,能够轻松处理复杂的应用。
STM32 单片机支持多种外设接口和通信协议,例如 USB、CAN、SPI、I2C 等,方便与其他设备进行通信。
STM32 单片机配备了多种调试和测试接口,如 SWD 和 JTAG 接口,方便开发者进行调试和测试,这些调试工具都很便宜,有些单片机下载和仿真器都上千。
还有就是STM32很多都是用keil开发工具,虽然现在可能有更方便好用的,但是对于老一辈的工程师来说,还是Keil最亲切顺手。
之前用过一些单片机用eclipse配合插件的方式去开发,光搭建开发环境都搞死人。
STM32有许多开源的开发工具和库,如CMSIS、HAL库等,可以加快开发时间和减少开发成本。
STM32 单片机广泛应用于各种领域,如消费电子、工业控制、汽车电子、医疗设备等等,具有良好的市场前景和潜力。
还有一点很多工程师可能忽略了,就是ST官网有提供不同行业的整体解决方案。
从单片机到外围电路的芯片,官网都有建议的选型,不过都是推他们自家的产品。
如果你确定用ST的单片机,但是不知道选哪个型号的话,可以参考这个。
STM32单片机的早期的价格相对较低,能够提供高性价比的解决方案,适合各种应用场景,不过后面因为一些原因价格大幅上涨,现在也在慢慢回落。
STM32系列微控制器的封装非常丰富,适用于不同的应用需求和制造工艺。
在STM32系列中,常见的封装类型包括以下几种:
LQFP (Low profile Quad Flat Package): 该封装常见于STM32的低端型号,引脚比较少,适合使用手工焊接和小尺寸的PCB。
BGA (Ball Grid Array): 该封装采用球形引脚排列方式,具有高密度和可靠性,适合高端应用和小尺寸PCB。
TQFP (Thin Quad Flat Package): 该封装采用扁平引脚排列方式,相对于LQFP来说体积更小、高度更低。
LFBGA (Low profile Fine-pitch Ball GridArray): 该封装采用较小的引脚间距,适合高密度应用和小尺寸PCB。
此外,STM32还提供了QFP、LGA、WLCSP、UFQFPN等多种封装形式,可以满足不同应用需求。
在选择封装类型时,需要根据具体的应用场景、生产工艺和成本等综合因素进行考虑。
下面聊下,我们在产品研发前,单片机及周边芯片方案选型时要考虑的问题:
产品功能要求:需要根据硬件工程师设计的电路来规划需要用到的单片机外设,然后对比你选择的单片机资源是否满足,比如时钟频率,Flash,RAM,SPI,IIC,USART,PWM,ADC等等。
尺寸要求:根据产品尺寸选择单片机的封装,产品尺寸要求越小,封装也要选小的。
功耗要求:如果产品平时是电池供电,那就要选择低功耗系列的单片机,比如STM32L系列。
成本要求:在满足产品功能的前提下选择最便宜的芯片。
开发周期要求:选择时尽量选择资料/教程丰富的单片机,能快速上手意味着开发周期能缩短。
交货周期要求:如果产品后期量大,需要考虑到代理商/原厂交货周期的问题。
综合以上几点,你会发现,STM32在早期满足了很多点,并且性价比高。
最后彩蛋时间,最近有粉丝问我怎么提升单片机编程思维和水平。
我做了开发10几年,累计做过几十个项目,我针对这些项目共性功能,比如任务创建、管理、队列算法、LED特效、按键扫描等,写了一个标准程序框架。
这个架构,我在2019年也录了教程,我做新项目时,直接套用这个架构去写,效率直接起飞。
不出意外的话,应该是你目前能看到最实用、最硬核、最系统的干货。
现在限时放出来给大家看,后期可能会删,这套架构已申请版权,非学员仅供学习使用。
可以点击下方⬇️卡片看文章开头领取。
《单片机入门到高级开挂学习路径(附教程+工具)》
《单片机入门到高级开挂学习路径(附教程+工具)》
《单片机入门到高级开挂学习路径(附教程+工具)》
或者可以找「无际单片机」,全网同名的。
下面是更多无际原创的个人成长经历、行业经验、技术干货。
《最近在学C语言,非常痛苦,怎么办?》
《C语言开发单片机为什么大多数都采用全局变量的形式?》
《单片机怎么实现模块化编程?思维+实例+系统教程(实用程度令人发指)》
《c语言回调函数的使用及实际作用详解》
《spi时序图怎么分析,怎么看懂spi时序图》