YuanHongbin
|
48b789c0c4
|
feat(ota): Boot支持外部Flash暂存搬运(BL_STASH_TO_B状态)
- bsp.c/h: 外部SPI Flash只读驱动(SPI1, 与App同总线Mode3)
- main.c/h: BL_STASH_TO_B状态: AppSize门禁 -> 外部Flash逐8KB搬运B区 -> CRC校验 -> 进BL_COPY_TO_A复用现有搬运链
- 搬运幂等: 搬运中断电重启后B区仍有效自动重搬
|
2026-09-24 17:14:09 +08:00 |
|
YuanHongbin
|
48ed25015d
|
feat(boot): 升级改造为A/B分区(新固件先下B区整包校验后搬运A区)
分区: Boot 32KB | A区0x8000(29扇区232KB,运行) | B区0x42000(29扇区232KB,暂存) | 参数区0x7C000不变
流程: 仅擦B区下载→CRC32(B)通过→逐扇区搬运B→A→CRC32(A)通过→擦B区→置APP_BOOT_UPGRADE_FLAG复位
防变砖: 下载超时/CRC失败/AppSize非法均恢复APP_START_FLAG复位回老App; 断电续传靠重启后B区CRC判定
其他: GetCrc32/AppWriteFlash/EraseFlash基址参数化, FlashWrite尾字节0xFF补齐, 0x82增加状态守卫
协议与boot_para_t结构不变, 主机升级工具无需修改
|
2026-09-23 11:16:47 +08:00 |
|
YuanHongbin
|
ffaf7a55a6
|
fix: 修复注释乱码并更新默认配置
- main.c/main.h: 丢弃工作区GBK乱码副本, 恢复为最新提交版本(UTF-8干净注释, 保留APP_BOOT_UPGRADE_FLAG升级标记特性)
- bsp.h: 网关编号0x0006->0x0008, 服务器端口8086->8088, Lora默认频率CH6->CH8
|
2026-09-11 09:53:30 +08:00 |
|
YuanHongbin
|
2761c37103
|
feat(lora): 宽频信道枚举扩展为120信道(433.1MHz~492.6MHz)+配置更新
- bsp.h: LORA_FREQ_M枚举CH0~CH119, 基准433100000ul+500kHz步进(CH0=433.1MHz, CH119=492.6MHz), 与APP侧sx127x.h宏同构
- bsp.h: GATEWAY_LORA_FREQ可配范围更新为CH0~CH119, 当前配置CH6(宽频下436.1MHz)
- bsp.h: 配置更新: 网关编号0x0006, 服务器端口8086
- ARCHITECTURE.md: 信道范围与默认值描述同步
- 注意: 信道号与窄频版(develop)语义不同, Boot默认CH6(436.1MHz)与APP默认CH8(437.1MHz)不一致, 部署时需对齐
|
2026-09-07 18:55:10 +08:00 |
|
YuanHongbin
|
df27be161b
|
feat(upgrade): 升级完成置APP_BOOT_UPGRADE_FLAG标记,参数分区擦除改由App侧执行
- 升级成功(CRC32校验通过)后AppFlag置APP_BOOT_UPGRADE_FLAG(0x5A5A55A5),每次升级均置位
- 启动判断放行该标记: 升级完成后直接启动App,不再停留在BL_IDLE
- 擦除动作由App初始化完成: 检测标记后擦除外部SPI Flash参数分区(扇区0~1,非全片擦除,历史日志保留),随后恢复APP_START_FLAG并加载默认参数
- 目的: 防止固件升级后参数结构体布局变化导致字段错位(曾引发注册表乱码/传感器无法注册)
- main.h统一UTF-8编码,新增APP_BOOT_UPGRADE_FLAG定义(与App侧bsp.h保持一致)
- bsp.h配置更新: 网关编号0x0003,服务器端口8083
|
2026-09-03 19:00:41 +08:00 |
|
YuanHongbin
|
77be326a42
|
整理bsp.h配置项并清理冗余文件
修改事项:
1. bsp.h: 通讯单元通道掩码(CUCH_*)定义移至LORA_FREQ_M枚举之后, 集中管理
2. bsp.h: 设备版本/项目、CAT1服务器/Lora、默认通道等配置项增加醒目标注横幅(下载前必须检查)
3. bsp.h: GATEWAY_LORA_FREQ默认频率由CH3改为CH0
4. 删除Update.exe及旧版串口升级协议.xlsx(已被传感器通用串口升级协议V1.1.xlsx替代)
|
2026-09-02 10:25:20 +08:00 |
|
YuanHongbin
|
46e5d0a4bd
|
Lora中心频率改为470.1MHz~492.6MHz, 500kHz步进共46个信道(CH0~CH45)
|
2026-09-02 10:02:50 +08:00 |
|
YuanHongbin
|
0d87d716ee
|
feat(lora): Lora中心频率改用CH0~CH10枚举配置, GATEWAY_LORA_FREQ默认CH0
|
2026-09-01 11:14:37 +08:00 |
|
YuanHongbin
|
8e79dd6695
|
BootLoader重构: 适配HC32F460KETA并按传感器通用串口升级协议V1.1改造
主要修改事项:
1. 器件更换: HC32F460PETB改为HC32F460KETA, 更新MDK工程(uvprojx/uvoptx/RTE), 调试器切换为Segger J-Link
2. 新增自定义分散加载文件MDK/BootLoader_custom.sct
3. 新增传感器通用串口升级协议V1.1.xlsx(协议文档)
4. 时钟系统: 取消外部晶振, 改用内部HRC 16MHz -> MPLL 200MHz
5. 删除未使用模块: FatFS/SDCard/SHT20/SX127x(Lora)/AD7924/spiflash/ADS1231/Encryption及LoraTask/CatOneTask/RS485Task/DebugCmd/AppTask, 清理工程IncludePath
6. bsp: BootPara_t参数结构体与GateWay APP对齐(新增GwMac/SvrAddr/SvrPort/LoraFreq/通道配置), 新增RS485 Ch1(USART2)升级通道及RS485 Ch2(USART3)配置, GPIO仅保留RS485方向控制(PC7/PB13)
7. main: 设备MAC固定地址由0x2800改为0x4000并按宏构造(VerInfo/PrjNum/GwNum), 帧头由0x7a改为0x7D并带DevMac字段, 增加MAC匹配(支持0xFF广播), 升级命令更新(0x01 ACK/0x02请求数据/0x81请求/0x82下发), CRC32校验后写参数并复位
8. 跳转APP前关闭全局中断/停SysTick/禁用NVIC中断, 避免残留中断干扰APP
9. Flash擦除仅擦APP区(不擦参数区), 首次运行检测及旧参数区默认值补齐
10. 修复驱动头文件乱码注释(hc32f460_dcu.h/hc32f460_icg.h)
|
2026-09-01 10:50:53 +08:00 |
|
YuanHongbin
|
0723faf209
|
初始版本
|
2026-06-22 09:19:00 +08:00 |
|