目标
将官方提供的Demo烧录进MCU中
设备
- AG32VF407VGT6 EVK板
- AGM CMSIS_DAP烧录器
均为淘宝自购


过程
软件环境
- 参考视频1
注意先安装Python 后安装PIO
工程
进入到之前安装的PIO文件夹中 还是能看到例程是足够多的,有DFU,USB lwip和数个非裸机调度框架,赞
d----- 2025/2/18 23:09 ahb_slave
d----- 2026/3/13 11:08 analog
d----- 2025/4/21 11:09 bl_master
d----- 2025/2/18 23:09 custom_ip
d----- 2025/4/21 11:09 dfu
d----- 2025/2/23 8:58 dsp
d----- 2025/2/18 23:09 embOS
d----- 2026/4/14 23:23 example
d----- 2025/2/18 23:09 freeRTOS
d----- 2025/2/18 23:09 HyperRAM
d----- 2025/3/10 11:47 lwip
d----- 2025/2/18 23:09 multi_uart
d----- 2025/2/18 23:09 rtthread
d----- 2025/2/21 16:41 spi
d----- 2025/2/18 23:09 uart_master
d----- 2025/2/18 23:09 uCOS
d----- 2025/2/18 23:09 usb
-ar--- 2026/3/13 11:08 9739 platformio.ini
打开example工程:\AgRV_pio\platforms\AgRV\examples\example\src
example.c便是主文件。

点击编译按钮,编译成功。点击烧录按钮烧录失败
烧录失败问题解决:
- 报错1:查找日志发现报错点:Error: No J-Link device found。
遂全局搜索jlink字样,于platformio.ini发现配置项:
protocol = jlink-openocd
修改为 protocol = cmsis-dap-openocd
下载仍失败 - 报错2: 排查日志发现报错点 Error: Device ID does not match, expected 0X40200001:256KB but got 0X40200001:1024KB.
猜测可能是没有正确配置好目标芯片型号。找到配置项logic_device。
AGRV2KL100
AGRV2KL100H
AGRV2KL64
AGRV2KL64H
AGRV2KL48
AGRV2KQ32
logic_device = AGRV2KL100
呵呵 瞎猜一下 L100就是LQFP100 应该是对得上,改成第二个带H的.编译成功!
3. 报错3
这个报错就稍微复杂点
Info: MAC0_RX_CLK is connected using PIN_59, the same as MAC0_TX_CLK
Traceback (most recent call last):File "C:\Users\Lee\.platformio\platforms\AgRV\etc\gen_vlog", line 2081, in <module>sys.exit(main(sys.argv))^^^^^^^^^^^^^^File "C:\Users\Lee\.platformio\platforms\AgRV\etc\gen_vlog", line 2067, in mainwrite_vlog(TOP, vlog_name, args)File "C:\Users\Lee\.platformio\platforms\AgRV\etc\gen_vlog", line 1351, in write_vlogpin_in_clk = io_clks[DeviceInfo.CLOCKED_IN[func]]~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
KeyError: 'MAC0_MDC'
上面也有提示,这个配置项目来自于example_board.ve,经过N多次检查,发现是上一条问题解决的不对。应该保持logic_device = AGRV2KL100 ,设置如下配置项:board = agrv2k_407
总结下,需要修改的配置项只有
board = agrv2k_407
protocol = cmsis-dap-openocd
烧录成功~

