画个板子玩一玩STM32F030F4P6,也许是最便宜的32bit MCU
STM32目前最便宜的芯片之一应该就是这一块,STM32F030F4P6,这一个芯片没有USB,但是其他都有,引脚少,价格低廉,如果找不到原厂,可以买替代的国产芯片,性能也一样。
不管怎么样也是Cortex-M0,比8bit和16bit的性能都强,总的来说就是低价,引脚少,体积小的同时,还容易开发,有很多模拟输入可玩,还有SPI,硬件I2C等等
所以,这一款MCU真的是从理论来说又便宜又好用,非常适合把玩。
画个板,最小系统
STM32F030其实如果你够勇甚至不需要外接零件,因为ST官方涨价涨了三倍,我只好用的国产替代版本,它的ESD指标很高。当然在实际的设计中,我还是设计了常用的元器件,不过没有设置串口。
送去打板,最终焊接出来耍这样子,芯片是国产替代产品XM1008F6P6,使用上没有什么不同但是便宜很多很多。
在测试出来感觉没有问题后我又焊接了所有的板
如何在ArduinoIDE中使用,点亮LED灯
关于这一块的数据实在不多,STM32Duino中很少有人搞这个,那么要如何找到芯片的定义?首先你需要安装STM32的官方包,具体教程我之前写过
使用Arduino IDE来编写上传STM32以及STM8代码,STM32Duino教程
关于这个的资料不多,但是安装好STM32Duino相关的包后,我们可以在文件夹里面找到对于引脚的定义,具体位置
C:Users【你的用户名】AppDataLocalArduino15packagesSTM32hardwarestm321.9.0variantsDEMO_F030F4
在头文件中我们可以看到定义,也能更好的了解这一个Templete,可以看到模拟输入非常可观,A0到A8都支持模拟输入,A5到A8则是硬件SPI,而A9和A10是硬件I2C,
官方的LED设计在PA4上面,而我则是设计在PB1上。
先打开Blink这个例子来试试看板子行不行,插入一句,定义LED灯为A8
#define LED_BUILTIN A8烧录的时候,选择Generic STM32F0 series,然后Board Part Number选第一个,其他就原样不变了。
烧写成功后,可以看到B1接的正常点亮,如果没成功检查CLK和DIO引脚。
进一步,使用STM32F030F4P6的串口
这一款STM32芯片的PA3和PA2是串口的RX和TX,我使用CH340这种很常见的廉价芯片进行