用STM32代替arduino开发
arduino一直以来深受广大极客的喜爱,丰富的库以及外围扩展,但是Atmega328已经比较老旧了,STM32相比而言,性能要比arduino强大了太多,因此我们选择用STM32F103C系列来代替arduino开发
下面跟随我们一起在arduino IDE中搭建stm32开发环境吧
1
硬件准备:
STM32F103C8T6 蓝色开发板 x 1(如图)
软件准备:
Arduino开发环境
操作步骤:
运行Arduino。选择文件->首选项,在附加开发板管理器中填入以下网址:
http://dan.drown.org/stm32duino/package_STM32duino_index.json
选择‘好’,保存设置。退出该界面
打开工具->开发板->开发板管理器
如上图所示。点击后会需要一段时间从网络上加载开发板信息,请耐心等待。
加载完成后,选择‘贡献’项,搜索stm32,选择STM32F1XX 开发包。
下载与安装将花费一段(大约十几分钟)时间。。
安装完之后,工具--开发板管理器里面找到 "Genneric STM32F103C series"选中即可
下载和烧写Bootloder
首先我们要下载Bootloader,进入一个开源项目,地址如下:
https://github.com/rogerclarkmelbourne/STM32duino-bootloader/tree/master/binaries
选择你的STM32最小系统板的除电源指示灯外的另一个LED所对应的接口名字的文件下载(一定要选择对应的),我的板子为PC13,所以下载这个:
然后使用USB转串口线连接开发板和电脑USB,其中串口线的TX RX分布连接开发板PA10 PA9,然后将BOOT0短接3.3V BOOT1短接GND进入烧写状态,串口线的VCC GND分布连接开发板的5V 即可无需另外供电。
所需工具:flash_loader_demo_v2.8.0
ST官方下载地址:http://www.st.com/en/development-tools/flasher-stm32.html
选择USB串口线的串口号,注意需要boot0 为1,boot1 为0(默认全是0)
在下列红色框内添加下载的bin文件,next,即可完成下载(bootloder的烧写)
bootloader下载完成后,即可进行用电脑通过MicroUSB连接板子进行开发了,不过得先装一下驱动。
驱动安装
去github上下载代码
Arduino_STM32:https://github.com/rogerclarkmelbourne/Arduino_STM32
下载压缩文件并解压,以管理员身份运行install_drivers.bat和install_STM_COM_drivers.bat
然后将开发板的串口线断开,将开发板BOOT0接GND后,使用手机数据线连接开发板MicroUSB和电脑USB开始安装驱动,会发现一个新的USB串行设备,下面为COM11
下载例程测试
将Arduino IDE的上传方式设置为STM32duino bootloader
端口号改成新的串口号
打开一个例程,LED闪烁的,例程里引脚为PB1,修改PC13(和板子对应,也可以不修改接一个LED即可)
例程如下,然后编译上传:
出现Done就代表上传成功了,
然后就可以看到LED闪烁了,大功告成,喝杯水休息下吧。