Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
Bootloader
先楫HPM_RISCV
HPM6750 Bootloader
5.00
发布于 2022-06-26 19:41:25 浏览:1420
订阅该版
[tocm] # HPM6750 Boot [仓库地址](https://github.com/loogg/HPM6750_Boot "仓库地址") ## 说明 - 本仓库为基于 `RT-Thread v4.0.5` 版本实现的 HPM6750 Bootloader,识别 `download` 分区中的固件并搬运到 `APP` 分区中运行。 - 支持通过 `RS485` 强制进入 Bootloader 直接升级 app。 - 使用 RT-Thread 固件打包工具将 bin 文件打包成 rbl 文件。该 Bootloader 不支持压缩和加密形式的固件。 - RT-Thread 固件打包工具在 tools/packing 目录下。 - RS485 升级工具在 tools/rs485_update 目录下。 - 使用 `RT-Thread Studio` 导入工程 ## 资源占用 - RS485: MAX13487 自动收发使能 - UART4: - TX: PE20 - RX: PE19 - 电池备份域 - HPM_BGPR->BATT_GPR7 - 分区使用: | 分区 | 偏移地址 | 占用空间 | | ---- | ---- | ---- | | Bootloader | `0` | `1 * 1024 * 1024` | | app | `1 * 1024 * 1024` | `1 * 1024 * 1024` | | download | `2 * 1024 * 1024` | `1 * 1024 * 1024` | ## APP 链接文件修改 删除链接文件中 `BootROM` 的 `Section`, 只保留 `APP Section` ![2.png](https://oss-club.rt-thread.org/uploads/20220626/d11b807e69f482e263730107024fb444.png.webp "2.png") 修改完后的如下: ![3.png](https://oss-club.rt-thread.org/uploads/20220626/aff8c71c0246c9a742c73967410accc4.png "3.png") ## 固件升级 ### APP 中下载到 download 分区 ![app_update.gif](https://oss-club.rt-thread.org/uploads/20220626/55cbf3e179505ece302b1a471c453a5b.gif "app_update.gif") ### Bootloader 中通过 RS485 强制升级 APP - 配置好串口并打开串口 - 点击 `开始同步` 按钮后再 `上电` 或 `重启`,强制进入 Bootloader - 点击 `结束同步` 按钮 - 选择文件开始升级 - 地址一栏填 `0` 即为广播 ![rs485_update.gif](https://oss-club.rt-thread.org/uploads/20220626/9bf73913163300d23f31c6278718ae01.gif "rs485_update.gif") ### Bootloader 启动过程 ![1.png](https://oss-club.rt-thread.org/uploads/20220626/598e34eb010a21720855c909b4cc85f3.png "1.png") ### RS485 固件升级协议 ![ModbusProtocol.jpg](https://oss-club.rt-thread.org/uploads/20220626/76585061c76ae8140584acbd33b66f1b.jpg "ModbusProtocol.jpg") 使用 `0x50` 作为固件升级的特殊功能码。 分包传输固件数据,每包数据最大 1024 字节。 - `Data` 字段协议定义: | 命令 | 字节数 | 数据 | | ---- | ---- | ---- | | 2 Bytes | 2 Bytes | N Bytes | - 命令: | 命令 | 说明 | | ---- | ---- | | 0x0001 | 同步 | | 0x0002 | 停留 Bootloader 确认 | | 0x0003 | 启动升级 | | 0x0004 | 写 IAP 数据 | | 0x0005 | 进入 APP | - 0x0001 同步 上位机控制器上电前开始持续发送同步命令,控制器上电 2s 后停止,控制器停留 Bootloader 中等待上位机进一步操作。 发送: | 命令 | 字节数 | 数据 | | ---- | ---- | ---- | | 00 01 | 00 00 | / | 响应: 无 - 0x0002 停留 Bootloader 确认 发送: | 命令 | 字节数 | 数据 | | ---- | ---- | ---- | | 00 02 | 00 00 | / | 响应: | 命令 | 字节数 | 数据 | | ---- | ---- | ---- | | 00 02 | 00 00 | / | - 0x0003 启动升级 该操作处理时间较长,上位机等待响应的时间需要放大。 发送: | 命令 | 字节数 | 数据 | | ---- | ---- | ---- | | 00 03 | 00 04 | 固件总大小(4B) | 响应: | 命令 | 字节数 | 数据 | | ---- | ---- | ---- | | 00 03 | 00 01 | 0:失败 1:成功 | - 0x0004 写 IAP 数据 发送: | 命令 | 字节数 | 数据 | | ---- | ---- | ---- | | 00 04 | 4+N | 包序号(2B)数据长度(2B)数据(NB) | 响应: | 命令 | 字节数 | 数据 | | ---- | ---- | ---- | | 00 04 | 00 03 | 包序号(2B)状态(1B):失败(0)/成功(1) | - 0x0005 进入 APP 发送: | 命令 | 字节数 | 数据 | | ---- | ---- | ---- | | 00 05 | 00 00 | / | 响应: | 命令 | 字节数 | 数据 | | ---- | ---- | ---- | | 00 05 | 00 00 | / | ## 联系人信息 - 维护:马龙伟 - 邮箱:<2544047213@qq.com>
6
条评论
默认排序
按发布时间排序
登录
注册新账号
关于作者
Cfly
这家伙很懒,什么也没写!
文章
15
回答
24
被采纳
3
关注TA
发私信
相关文章
1
Linux下通过USBTinyISP为Arduino开发板烧?写Bootloader
2
请教修改NVIC后RTT调度函数失效的问题[已解决 bootloader中打开了不必要的中断]
3
进入bootloader的方式探讨
4
求助:IAP里的APP使用的RTT,跳转后出错。[已解决]
5
有没有人在STM32F103上用UART IAP跑过RT-Thread?
6
想做网口的IAP远程升级,不知可不可行
7
IAP问题
8
[已解决]请教基于RTT的IAP程序切换到应用程序不成功的问题(基于STM32F4)?
9
stm32f4xx-----IAP移植APP程序需要注意的地方
10
在调试IAP网络升级遇到跳转之后bootloader程序网络不通
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
DMA
USB
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
I2C_IIC
ESP8266
UART
WIZnet_W5500
ota在线升级
cubemx
PWM
flash
freemodbus
BSP
packages_软件包
潘多拉开发板_Pandora
定时器
ADC
flashDB
GD32
socket
编译报错
中断
Debug
rt_mq_消息队列_msg_queue
keil_MDK
SFUD
msh
ulog
C++_cpp
MicroPython
本月问答贡献
出出啊
1518
个答案
343
次被采纳
小小李sunny
1444
个答案
290
次被采纳
张世争
813
个答案
177
次被采纳
crystal266
549
个答案
161
次被采纳
whj467467222
1222
个答案
149
次被采纳
本月文章贡献
出出啊
1
篇文章
3
次点赞
小小李sunny
1
篇文章
1
次点赞
张世争
1
篇文章
3
次点赞
crystal266
2
篇文章
2
次点赞
whj467467222
2
篇文章
2
次点赞
回到
顶部
发布
问题
投诉
建议
回到
底部