# Flash烧录方法
本文适用于:EMC3080、EMC3090、EMC3180、EMC3280、EMC3380、EMC3285 等系列模组。
可以通过多种方法对模组的Flash进行编程,烧录特定功能的固件。各种烧录方法的应用场景和限制条件如下:
方法 | 接口 | 通信引脚 | 进入烧录模式 | 准备工作 |
仿真调试器 | SWD | PA27,PB3 | - | 开发环境和JTAG调试器 |
串口下载模式 | UART0/UART1 | PA7,PA8 | PA7:低电平 | Image Tool 烧录软件 |
BAT烧录系统 | SWD | PA27,PB3 | - | BAT烧录系统 |
注: PA7上电默认高电平
各个烧录方法的应用场景如下:
- 仿真调试器:在模组的开发调试阶段烧录。
- 串口下载模式:在生产线上对模块进行批量烧录。
- BAT烧录系统:在模组或者产品的生产线上对模组进行二次烧录,并可用于烧录设备的唯一ID。
综上,建议在用户主板上引出PA7、PA8、PA27,PB3作为烧录测试点,方便开发和生产。
#用仿真调试器烧录
使用MXOS系统开发模组固件时,可以通过开发环境MiCoder中的编译命令直接将生成的固件烧录到模组中。MiCoder开发环境搭建请参阅相关文档。硬件仿真器通常选择JLink,连接方法如图所示:
在编译命令中添加download参数,即可下载当前编译的固件。由于需要安装开发环境,所以不适用于模组批量工厂烧录。
例如,编译Helloworld应用程序,执行命令:
mdev build -c helloworld emc3080 -f APP
命令运行结果:
Making config file for first time processing components: helloworld emc3280 MXOS …… Downloading applcation, size: 443512 bytes... #################################################################################################################################################################################################################### 100% 433 KiB 8.0 KiB/s 18 s Build complete Making .gdbinit Making .openocd_cfg
如果模组中预烧的Bootloader被破坏,只需在命令中增加total参数即可重新烧录Bootloader。
mdev build -c helloworld emc3080 -f ALL
#用串口下载模式烧录
- 按下图将连接硬件。将PA7接地后,对模组上电或者复位。然后释放PA7即可进入串口下载模式。
串口下载模式连接示意图
<span class="ne-text">若使用</span><span class="ne-text">MXCHIP</span><span class="ne-text">提供的</span><span class="ne-text">MXKIT</span><span class="ne-text">系列评估板,</span><span class="ne-text">MXKIT-BASE</span><span class="ne-text">板上的</span><span class="ne-text">Arduino</span><span class="ne-text">接口上的</span><span class="ne-text">BOOT0</span><span class="ne-text">信号接地。复位后,取消接地。</span>
![](/img/1585743834662-6f7454d4-62e4-4142-bd9d-a67019c169a2.png)
打开烧录软件image tool,Chip Select选择AmebaD(8721D)。📎Image_Tool.7z (opens new window)
在Flash Download区块中,选择需要下载的二进制文件,下载到对应的地址。
- 若使用MXCHIP提供的编译工具,通常会产生xxxx@emc328x.all.bin,对应的下载地址是0x08000000。
- 若使用其他编译工具,应查询编译系统的相关设定。通常产生的km0_boot_all.bin下载到0x08000000,km4_boot_all.bin下载到0x08004000,km0_km4_image2.bin下载到0x08006000。
点击Download按钮完成下载。
注意:如果下载失败,请尝试Baudrate设置为500000或更低。
Image Tool使用界面
#用BAT烧录系统
BAT是MXCHIP推出的面向工厂批量烧录的生产工具,不仅可以实现固件烧录,还可以为每一个模组烧录唯一ID,如云服务验证码,安全密钥,证书,令牌等。BAT系统采用服务器客户端架构。在服务器上可以批量导入固件和ID,创建生产任务,对生产系统进行统一管理。客户端从服务器上同步生产任务,一台客户端可以同时对4个模组进行烧录。客户端还可以和上料机,机械臂等自动化系统对接,实现全自动化生产。
BAT系统的使用方法,请参阅BAT系统相关的使用文档。EMC328x模组通过SWD接口和BAT系统交互。以下是BAT系统的应用框图:
BAT烧录系统
——————————————————————————————————————————————————
END.