STM32系列的单片机大家用的应该是比较多的,功能强大、型号丰富、价格亲民。但你有被它他的某些功能吓到吗?
这里给大家介绍一个STM32的隐藏功能!
之前查资料的时候,发现网上某人分享的资料里原理图和硬件功能对不上。因为已经照着资料打样了,如果有问题,那次打样基本就费了。但回来后,发现功能正常。
发现的隐藏功能在STM32F030系列,以STM32F030F4P6为例做演示。打开数据手册,注意看它的PA0PA1PA2PA3管脚功能:
这里是没有TIM2功能的,定时器介绍里也没有提到该系列有TIM2。但是,其内部隐藏了一个TIM2。
使用代码对PA0PA1PA2PA3四个管脚进行配置,GPIO管脚复用,然后TIM2的四个通道初始化,输出PWM。上图:
四个通道我都测了,放心,有输出。本来这芯片就不贵,现在又多了一个TIM,这下性价比更高了。
我在网上搜了一下,发现已经有很多人发现了STM32的这个现象,而且不止一个这一个型号有隐藏功能。
例如,之前有64K的flash,实际flash容量128K;山寨STLINK里使用的STM32F101,数据手册里是没有USB的,但非要用的话,也能用。
为什么会这样?
说法主要有两种:
1、具有隐藏功能的芯片,应该是某个型号的低成本版本。生产时为了丰富产品种类,同时提高生产效率和合格率,从而做了不同的区分。
2、一些高端型号的部分功能出问题后,降为低端产品。
注意事项:这个功能只建议DIY爱好者使用,实际产品中不建议。因为如果你使用了数据手册里没有的功能,一旦出了问题,厂家是不负责的。