极海APM32F407IG-Tiny开发板的DAPLINK固件更新方法

描述

来源:转载自21ic论坛极海半导体专区

最近申请到了APM32F407IG-Tiny板,这块开发板做工不错,尤其自带了DAPLINK下载器,外设资源也挺丰富的,很适合做mbedos移植,并且mbedos官方stduio是有自带的DAPLINK烧录固件的,而如果我们要使用mbed studio开发的话,就需要手动改写板载的DAPLINK固件,那么怎么改写呢?这篇文档就简单介绍一下。

1、APM32F407IG 参数

系统

·  Arm Cortex-M4F

·  工作主频168MHz

·  内置16个数据流的DMA

·  支持FPU和DSP指令

存储

·  Flash512/1024KB

·  SRAM192+4KB

·  SDRAM2MB

电源管理

·  工作电压 1.8~3.6V

·  支持上电/掉电/欠压复位

·  支持可编程电源电压检测器

定时器

·  16位高级定时器:2

·  16/32位通用定时器:8/2

·  16位基本定时器:2

·  看门狗定时器:2

·  24位系统滴答定时器:1

模拟外设

·  12位ADC:3,通道数:24

·  12位DAC: 1,双通道

I/O

·  多达140个I/O

·  均可映射到外部中断向量

通信外设

·  U(S)ART:6

·  I2C:3

·  SPI(I2S):3(2)

·  USB_OTG:3

·  CAN:2

·  SDIO:1

·  EMMC

·  Ethernet MAC1

固件

2、DAPLINK概述

• Arm Mbed DAPLink 是一个开源软件项目,支持对在Arm Cortex CPU 上运行的应用软件进行编程和调试。DAPLink通常称为接口固件,在连接到应用MCU的SWD或JTAG端口的辅助MCU上运行。几乎所有开发板上都可以找到这种配置。枚举为USB 复合设备,它在开发计算机和 CPU调试访问端口之间创建桥接。DAPLink 使开发人员能够:

•  MSC - 拖放式编程闪存

•  CDC - 用于日志、跟踪和终端仿真的虚拟 com 端口

•  CMSIS-DAPv2 WinUSB(无驱动程序供应商特定批量)- 符合 CMSIS 标准的调试通道

•  CMSIS-DAPv1 HID - 符合CMSIS标准的调试通道

•  WebUSB CMSIS-DAP HID - 符合CMSIS标准的调试通道

它相比于F407自带的DAPLINK,多了拖拽式烧录以及串口集成这两个功能。

3、固件更新   

在此之前,我们需要确保我们电脑已经安装好了git以及python(python3.7及以上)环境,这里就不在过多赘述git以及python的安装了。下面是git和python的官网网址,可去官网自行下载。(这里我只介绍了windows上固件更新的流程)

git官网:https://git-scm.com

python官网:https://www.python.org

3.1 固件所需资源

1、APM32F407IG固件更新hex文件:https://github.com/GeehySemi/mbed-os-DAPLINK-Hardware

2、DAPLINK源码获取:https://github.com/ARMmbed/DAPLink

3、一根USB线,用于连接PC端与开发板

4、两根杜邦线,用于连接 APM32 LINK 与 F407 开发板的串口

5、用于固件烧录的工具(jlink等等)

3.2 固件更新步骤

3.2.1 参考APM32 LINK原理图,使用烧录器与开发板连接

固件

固件

我们接线,应该接靠近USB接口的那一堆排针,这个才是LINK的固件烧录接口,而上面的一排接口是APM32F407IG开发板的烧录接口。

3.2.2 接好线之后,打开烧写工具,我这里使用的是jflash,打开jflash工具,创建新工程 

固件

3.2.3 搜索芯片选项,选择APM32F103CB

固件

3.2.4 修改Speed,改为200KHz

固件

3.2.5 点击"Connect"

固件

3.2.6 把准备好的bl.bin文件拖入jflash

固件

3.2.7 确认地址是0x08000000,点击OK

固件

3.2.8 擦除原来的固件

固件

3.2.9 下载新的固件

固件

3.2.10 运行新的固件

固件

3.2.11 用一根USB把PC和开发板连接,电脑就会识别出一个磁盘

固件

3.2.12 把准备的固件更新的hex文件直接拖拽至磁盘

固件

磁盘更改为DAPLINK则说明固件更新成功。

固件

并且可以点击查看里面的信息。

固件

3.3 验证固件更新

我们可以从Geehy官网下载APM32F4系列官方SDK来验证固件是否更新成功。

3.3.1 打开ADC_AnalogWindowWatchdog,点击魔术棒,配置编译生成hex文件。

固件

3.3.2 把生成的hex文件拖拽到生成的PC识别的磁盘中,可查看磁盘里面的信息,若没有FAIL.txt,则程序成功烧录。

固件

3.3.3 把DAPLINK的RX、TX接口分别与PA9、PA10连接。打开串口调试助手,配置波特率为115200,复位开发板,串口若成功打印数据,则说明固件更新成功。

固件

以上就是本次APM32F407IG-Tiny的DAPLINK固件更新的方法。

注:文章作者在原帖中提供了例程文件,有需要请至原文21ic论坛下载

原文地址:https://bbs.21ic.com/icview-3369458-1-1.html

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分