下面就开始新的尝试与实验:
第一步:安装Arduino IDE
arduino官网[https://www.arduino.cc](https://www.arduino.cc/) ,下载Arduino IDE页面 [https://www.arduino.cc/en/Main/Software](https://www.arduino.cc/en/Main/Software)
安装版本是1.8.10,兼容各大平台,有安装版和免安装版二种。
第二步:下载安装Arduino SAM开发板
不安装这个开发板后编译会出现arm-none-eabi-g++错误
打开Arduino——工具——开发板管理器
然后搜索——SAM开发板并下载安装
安装成功是这样的
第三步:下载STM32F103RCT6用的Arduino开发板库
下载地址:<u style="overflow-wrap: break-word;">[https://github.com/rogerclarkmelbourne/Arduino_STM32](https://github.com/rogerclarkmelbourne/Arduino_STM32) </u>
下载后解压,将文件夹Arduino_STM32_master重命名为Arduino_STM32后复制到C:\Users\用户名\Documents\Arduino\hardware文件夹,如果没有hardware文件夹就新建一个(由于这个压缩包体积偏大,我下载好多次都失败了,后来在21ic下载站上用2元兑换了一个,呵呵,要解决问题,链接:[http://dl.21ic.com/download/code/arduino_stm32-210074.html](http://dl.21ic.com/download/code/arduino_stm32-210074.html))。这个Arduino_STM32的库有40多M,包括文件:
有了这个库我们就可以让arduino IDE支持ufun学习板了。由于是第三方的库,所以需要自己手动安装。
第四步:打开Arduino IDE,选择工具——开发板——选择如下开发板
选择STM32F103RCT6,256KB Flash + 48kB SRAM
第五步:安装UFUN2.0的串口驱动(串口芯片CH340),打开Arduino IDE,要能识别板子
设置端口
第六步:下载安装flash_loader_demo_v2.8.0
flash loader demo是一款ST官方的flash下载软件,用于STM32F103,STM32F407,STM32F446单片机的串口下载程序。
支持Windows 98SE, 2000, XP, Vista, 7, 8, 8.1, 10系统。
如何安装:首先删除之前版本,从开始-设置-控制面板中-添加或删除程序,移除之前的版本后,再运行安装程序。目前版本是2.8.0,下载之后默认安装。
下载链接:https://www.st.com/en/development-tools/flasher-stm32.html
链接2:https://pan.baidu.com/s/1jpwH-NU8_Y31hPPDKDuVwA
提取码:2qkb
第七步:更改ufun板子启动配置
STM32三种启动模式对应的存储介质均是芯片内置的,如下图:
(1)用户闪存 : 芯片内置的Flash。正常的工作模式。
(2)SRAM: 芯片内置的RAM区,就是内存。可以用于调试。
(3)系统存储器: 芯片内部一块特定的区域,芯片出厂时在这个区域预置了一段Bootloader,就是通常说的ISP程序。这个区域的内容在芯片出厂后没有人能够修改或擦除,即它是一个ROM区。启动的程序功能由厂家设置。
我们把ufun的BOOT0引脚拉高,进入系统存储器启动模式,这样就可以用ST的flash_loader进行程序的下载。如上图所示把ufun最右边的两个引脚短接在一起,就是拉高了BOOT0引脚。
第八步:使用flash_loader_demo_v2.8.0烧录bin文件
接上板子,打开软件,选择USB串口线的串口号(这里是COM5)
按开发板上重置键后按Next进入下一步(已能识别256K)
按Next进入下面界面,选择Download to device
下载下面文件,解压为bin后缀名文件
[generic_boot20_pc13.rar](http://generic_boot20_pc13.rar/)
然后选择上图的Download from file按钮,选择上面解压的文件
**第九步:从Git上([https://github.com/rogerclarkmelbourne](https://github.com/rogerclarkmelbourne))下载大佬的项目文件“STM32duino-bootloader-master”**
如下页面中第二个文件,如果不导入安装这个库文件的话就无法编译生成STM32 对应的hex文件。
找到上图中圈着红线的BIN文件,下载到桌面,一会我们将用工具下载到ufun学习板中。
下载链接: [https://github.com/rogerclarkmelbourne/STM32duino-bootloader/tree/master/binaries](https://github.com/rogerclarkmelbourne/STM32duino-bootloader/tree/master/binaries)
解压后放入C:\Users\用户\Documents\Arduino\hardware\Arduino_STM32中,并烧录成功见下图
第十步:打开Arduino IDE,烧录LED闪灯程序
先确认烧录UFUN2.0开发板的6个配置
烧录的Blink程序如下(把UFUN板子的boot引脚继续拉高,按一下复位按键,然后放开)
void setup() {
pinMode(PA1, OUTPUT);
}
void loop() {
digitalWrite(PA1, HIGH);
delay(1000);
digitalWrite(PA1, LOW);
delay(1000);
}
烧录成功是这样的
忙乎一天,终于点亮板载蓝色LED
视频地址 https://v.youku.com/v_show/id_XNDQ0NjkxMTA0NA==.html?spm=a2h3j.8428770.3416059.1
hacker_2023.08.02
666