1.2.3.1.2 STM32 固件烧录指南
更新时间:2018-09-14 09:41:40
为了能在 STM32 上面开发 TinyEngine JavaScript 应用,需先烧录 TinyEngine 固件到 STM32 芯片中。
本文将介绍如何在 MAC 系统、Ubuntu 系统、Windows 系统上烧录 TinyEngine 固件。
1 准备st-flash工具
STM32 烧录固件,需要使用 st-flash 工具,在 TinyEngine 官方开源地址 的 tools/flash-burn-tools 路径下,我们已经下载了 osx(mac) 、linux64、windows 的 st-flash 可执行文件/安装包。
如下图所示:
.
├── WebIDE
├── drivers
└── flash-burn-tools
├── linux64
│ ├── st-flash
│ ├── st-info
│ └── st-util
├── osx
│ ├── st-flash
│ ├── st-info
│ └── st-util
└── windows
└── STM32 ST-LINK Utility v4.2.0 setup.exe
MAC系统: 无需安装,直接使用st-flash可执行文件即可。
LINUX系统: 无需安装,直接使用st-flash可执行文件即可。
WINDOWS系统: 点击安装 “STM32 ST-LINK Utility v4.2.0 setup.exe” 文件,并根据提示安装st-link的驱动。安装成功后,插入st-link usb口到PC,查看设备管理器-》端口会出现 “STMicroelectronocs STLink Virtual Com Port”端口。
FAQ:如未覆盖到您的主机操作系统或者 TinyEngine 仓库目录下的 st-flash 执行不了,请参考官方 github 文档下载st-link源码编译生成 st-flash 工具使用。
st-flash 工具 github 文档地址:https://github.com/texane/stlink
2 使用st-flash工具烧写固件
拷贝对应主机系统的 st-flash 到待烧录固件的同一目录,然后执行对应 st-flash 命令即可。
这里以烧录 Developerkit 的 TinyEngine 固件举例:
说明:请根据待烧录固件的实际名称将如下命令的 developerkit-xxx.bin 替换成 firmware 下的真实文件名
MAC系统下烧录
拷贝 tools/flash-burn-tools/osx/st-flash 到 firmware/stm32/developerkit/ 目录下。
然后进入 firmware/stm32/developerkit/ 下执行如下命令即可:
./st-flash --reset write developerkit-xxx.bin 0x8000000
LINUX系统烧录
64bit 系统:拷贝tools/flash-burn-tools/linux64/st-flash到firmware/stm32/developerkit/目录下。
32bit 系统:拷贝tools/flash-burn-tools/linux32/st-flash到firmware/stm32/developerkit/目录下。
然后进入firmware/stm32/developerkit/下执行如下命令即可:
./st-flash --reset write developerkit-xxx.bin 0x8000000
Windows系统烧录
- 第一步: 双击打开桌面上的 STM32 ST-LINK Utility 图标,点击File-》Open files,并选择 TinyEngine 仓库中 firmware 里面的固件 bin 文件。
例如,本例中烧写developerkit,从 TinyEngine官方开源库 选择firmware/stm32/developerkit/xxx.bin文件
- 第二步,连接 STM32 芯片的ST-LINK usb 口到 PC,并点击 Target->Connect
- 第三步,确认 Address 为0x08000000,及 stlink 是否连接成功,连接成功会显示Device信息。
- 第四步,点击Target-》Pragram 开始烧录
- 最后,等待烧录完成,即进度条跑完。