From 3372a9b71a0a169382946c59dc1ab21d2b804b0f Mon Sep 17 00:00:00 2001 From: YuanHongbin <975559679@qq.com> Date: Wed, 2 Sep 2026 10:08:15 +0800 Subject: [PATCH] =?UTF-8?q?ARCHITECTURE.md:=20=E9=A1=B6=E9=83=A8=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E6=AF=8F=E6=AC=A1=E4=B8=8B=E8=BD=BDBoot=E5=89=8D?= =?UTF-8?q?=E5=BF=85=E6=9F=A5=E9=85=8D=E7=BD=AE=E9=A1=B9(=E7=89=88?= =?UTF-8?q?=E6=9C=AC/=E9=A1=B9=E7=9B=AE=E3=80=81CAT1=E6=9C=8D=E5=8A=A1?= =?UTF-8?q?=E5=99=A8/Lora=E3=80=81=E9=BB=98=E8=AE=A4=E9=80=9A=E9=81=93)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ARCHITECTURE.md | 52 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/ARCHITECTURE.md b/ARCHITECTURE.md index 4b4f0a4..52ddef2 100644 --- a/ARCHITECTURE.md +++ b/ARCHITECTURE.md @@ -1,5 +1,57 @@ # HC32F460 BootLoader 项目架构与工作流程分析 +> ## ⚠️ 每次下载 Boot 前必查配置项 +> +> 以下配置集中在 **`source/User/Inc/bsp.h`**,每次重新下载 Boot 程序前必须核对, +> 修改后 **需重新编译并烧录**,配置会由 Boot 首次运行时自动写入 Flash 参数区。 +> +> ### ① 当前设备版本 / 项目选择(决定本机 MAC 编码,bsp.h:62-64) +> +> ```c +> #define GATEWAY_VER_INFO GATEWAY_VER1_0 // 版本信息 → Mac[0](Bit7固定1) +> #define GATEWAY_PRJ_NUM GATEWAY_PRJ_YAXIA // 项目编号 → Mac[1:3](枚举见 bsp.h:17-26) +> #define GATEWAY_GW_NUM 0x0000 // 网关编号 → Mac[4:5](1~65535,按设备唯一分配) +> ``` +> +> | 项 | 当前值 | 影响 | +> | --- | --- | --- | +> | GATEWAY_VER_INFO | GATEWAY_VER1_0 | 写入 MAC[0],标识网关软件版本 | +> | GATEWAY_PRJ_NUM | GATEWAY_PRJ_YAXIA | 写入 MAC[1:3],标识所属项目(换项目必改) | +> | GATEWAY_GW_NUM | 0x0000 | 写入 MAC[4:5],每台设备必须唯一(按网关编号分配) | +> +> ### ② CAT1 服务器 / Lora 配置(bsp.h:67-73) +> +> ```c +> #define GATEWAY_SVR_ADDR0 39 // 服务器 IP[0] +> #define GATEWAY_SVR_ADDR1 106 // 服务器 IP[1] +> #define GATEWAY_SVR_ADDR2 103 // 服务器 IP[2] +> #define GATEWAY_SVR_ADDR3 147 // 服务器 IP[3] +> #define GATEWAY_SVR_PORT 8080 // 服务器端口 +> #define GATEWAY_LORA_FREQ CH3 // Lora 中心频率(CH0~CH45,470.1MHz~492.6MHz) +> ``` +> +> | 项 | 当前值 | 说明 | +> | --- | --- | --- | +> | 服务器 IP | 39.106.103.147 | CAT1 上传的默认服务器地址 | +> | 服务器端口 | 8080 | CAT1 上传的默认端口 | +> | GATEWAY_LORA_FREQ | CH3 | Lora 中心频率,按现场干扰/组网需要从 CH0~CH45 中选择 | +> +> ### ③ 默认通道配置(bsp.h:76-79) +> +> ```c +> #define GATEWAY_MUCH CH_ETH // 主上传通道 +> #define GATEWAY_AUCH CH_NULL // 辅助上传通道(-1 = 无) +> #define GATEWAY_DUCH CH_CAT1 // 调试/升级通道 +> #define GATEWAY_CUCH_MASK CUCH_LORA // 通讯单元通道掩码 +> ``` +> +> | 项 | 当前值 | 说明 | +> | --- | --- | --- | +> | GATEWAY_MUCH | CH_ETH | 主上传通道:CH_DBG/CH_RS485_1/CH_RS485_2/CH_ETH/CH_LORA/CH_CAT1 | +> | GATEWAY_AUCH | CH_NULL | 辅助上传通道,-1 表示不使用 | +> | GATEWAY_DUCH | CH_CAT1 | 调试/升级通道 | +> | GATEWAY_CUCH_MASK | CUCH_LORA | 通讯单元通道掩码,可多通道按位或(CUCH_CH1/CUCH_CH2/CUCH_ETH/CUCH_LORA/CUCH_CAT1) | + ## 1. 项目概述 基于华大半导体 HC32F460KETA (Cortex-M4F) 的 BootLoader 程序,实现通过 RS485 串口对 APP 应用程序进行在线升级。升级协议遵循《传感器通用串口升级协议 V1.1》。