发帖
2 0 0

boot2_isp切换固件

hdydy
论坛元老

48

主题

94

回帖

6290

积分

论坛元老

积分
6290
Ai-M61系列 10 2 昨天 21:30

boot2_isp是一个二级引导程序,从flash中读取分区表,可以选择指定的固件启动

https://github.com/bouffalolab/bouffalo_sdk/tree/721f30b7f09cec5b391d6a71f77f139c6e727d8a/examples/boot2_isp

https://github.com/sipeed/M0S_BL616_example/tree/main/examples/boot2_isp

准备两个固件FW1,FW2,这里以 blink_io29.binblink_io27.bin作为例子

将两个固件分别烧录到0x10000,0x110000,地址可以根据固件大小进行调整

修改分区表

address0 = 0x10000
size0 = 0x100000
address1 = 0x110000
size1 = 0x100000

image.png

生成的分区文件 partition.bin
image.png

boot2_isp启动时检测GPIO_PIN_16电平,选择对应的固件启动
image.png

image.png

烧录设置
image.png

GPIO_PIN_16悬空时启动日志
image.png

GPIO_PIN_16接3V3时启动日志
image.png

──── 0人觉得很赞 ────

使用道具 举报

昨天 21:38
上传的附件: boot2_isp.zip (124.95 KB, 下载次数: 0)

昨天 22:39
FW1和FW2中不要使用GPIO_PIN_16作为输出
您需要登录后才可以回帖 立即登录
高级模式
返回
统计信息
  • 会员数: 28672 个
  • 话题数: 40876 篇