硬汉嵌入式论坛

 找回密码
 立即注册
查看: 596|回复: 2
收起左侧

rp2040 bootloader

[复制链接]

23

主题

335

回帖

404

积分

高级会员

积分
404
发表于 2025-4-7 18:16:01 | 显示全部楼层 |阅读模式
本帖最后由 tovinz 于 2025-4-7 18:24 编辑

在 github 上找了一个 rp2040 的 bootloader,摘了其中的关键app跳转和cmake配置。
参考项目: IndoorCorgi/picoboot3: Custom bootloader that allows firmware updates to Raspberry Pi Pico via UART/I2C/SPI.


开发环境是官方给Windows用户做的 pico-setup-windows-x64-standalone。
需要额外的一个 rp2040 作为调试器(刷入 debugprobe_on_pico.uf2 固件)。

目前使用的是 openocd 烧录的 app 固件,起码基本的跳转原理跑通了,至于怎么传输app固件看自己需求了,至于通过程序把固件写入Flash在sdk中有例程。

app.zip (11.69 KB, 下载次数: 7)
bootloader.zip (6.27 KB, 下载次数: 7)
使用方法:使用 PICO - Visual Studio Code 分别打开两个工程,连接调试器。
    编译:vscode 顶部菜单 【终端】【运行任务】【Build】
    烧录:vscode 顶部菜单 【终端】【运行任务】【Flash】

bootloader 放在 0x1000_0000 的位置,app 放在 0x1001_0000 的位置,因为 openocd 烧录 rp2040 的时候是 64KB(0x0001_0000) 一个扇区。
单独烧录  bootloader 和 app,烧录其中一个的时候不会擦除另一个所在的扇区。

使用 PICO - Visual Studio Code 可以调试。

因为刚刚弄出来,估计还有很多没有发现的问题,但关键的跳转APP实现了,其他问题再慢慢处理。
东西是破破烂烂的,但勉强可以用。


评分

参与人数 1金币 +100 收起 理由
eric2013 + 100 很给力!

查看全部评分

回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
116223
QQ
发表于 2025-4-8 10:31:59 | 显示全部楼层
谢谢楼主分享。
回复

使用道具 举报

14

主题

108

回帖

150

积分

初级会员

积分
150
发表于 2025-4-8 14:03:16 | 显示全部楼层
非常不错,之前折腾这IAP时费了大功夫。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-6-10 13:39 , Processed in 0.243276 second(s), 29 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表