MakerLab创客实验室 — Let's Make something.
现在注册
已注册用户请 登入
Andy large avatar
MakerLab创客实验室  ›  学习系统  ›  Arduino  ›  STduino原型板如何使用(Arduino Compatible)

让Arduino IDE支持你自己的STM32开发板

By Andy at 3 年前 , 8076 次浏览

想让自己的STM32开发板也可以使用Arduino IDE及arudino所提供的简单的API?没问题,下面我将告诉你如何添加你自己板子的支持。

硬件支持

由于STduino使用的编程方式为STM32自带的USART的isp方式。所以需要配置BOOT0来选自不同的启动方式。STduino的硬件设计是通过一个USB转串口来控制BOOT0的,但如果你自己的板子不支持,需要选择另外的编程方式比如JTAG等。也可以用我们的串口编程器。

关键文件

要想让Arduino IDE支持你自己的STM32开发板,需要配置以下几个文件。
boards.txt:配置你的板子的名称等基本信息及板子pins(管脚)配置文件的目录地址;
variant.h:一些常用变量的配置信息;
variant.cpp:pins配置信息。
platform.txt:该文件如果不更改上传代码的方式,不需要修改。

本文最后更新于:一年前
11 回复
zhzx medium avatar
#1 - 2 年前
zhzx

请教如何用JTAG方式编程。

Andy medium avatar
#2 - 2 年前
Andy

@zhzx 如果用jtag的话,需要用IDE编译为hex文件后,另外用jtag工具来编程。我的板子上留有swd编程接口。对应接上即可

zhzx medium avatar
#3 - 2 年前
zhzx

谢谢,但IDE编译出来的是bin文件,并非hex文件,如何解决?

Andy medium avatar
#4 - 2 年前
Andy

@zhzx 你试试bin文件能不能用jtag烧写。或者找找bin转hex工具试试

zhzx medium avatar
#5 - 2 年前
zhzx

明白,谢谢。

xvipservice medium avatar
#6 - 2 年前
xvipservice

为什么我的stm32f103ret6为什么不能下载啊?C:\Documents and Settings\Administrator\桌面\arduino-1.5.7\arduino-1.5.7/hardware/arduino/stm32/sloadhost.exe --serialdev COM7 --baudrate 115200 --dtrrtsconfigboot --globalerase --loadfile C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\build9054038981758401.tmp/Blink.cpp.bin --write 0x08000000
Made 5 tries in autobaudstart w/o ack, exiting

xvipservice medium avatar
#7 - 2 年前
xvipservice

用mcuisp下载就报
96位的芯片唯一序列号:38FFD8053159383337710557
读出的选项字节:
A55AFF00FF00FF00FF00FF00FF00FF00
程序文件不是0x8000000和0x20000000区域的

Andy medium avatar
#8 - 2 年前
Andy

@xvipservice 先用mcuisp上传成功后再用ide试试。

xvipservice medium avatar
#9 - 2 年前
xvipservice

@Andy 用mcuisp上传用其他的hex文件是正常的
但是上传arduino ide生成的bin文件,或者通过bin转出来的hex文件,就会说程序文件不是0x8000000和0x20000000区域的
请问为什么?

shunli70 medium avatar
#10 - 一年前
shunli70

选中 earth r1 板后,#include 语句是包含stm32库里的Wire.h?

cyue medium avatar
#11 - 一年前
cyue

Arduino 1.6.5 好像不能这样加开发板了。。。