CatST Hardware:固定硬件、维护口与外设 Profile¶
CatST 依赖规范硬件。硬件不是通用开发板,而是公司内部固定控制器平台:出厂固化 Bootloader,保留串口维护口,固定 IO 和扩展外设,通过 Profile 向 CatST 工具链声明可用资源。
1. 硬件设计目标¶
硬件目标:
- 固定 MCU 系列和板级资源。
- 固定串口维护口,支持现场下载和监控。
- 出厂固化 Bootloader,现场不需要 J-Link。
- IO、通信、RTC、存储、急停、输出使能等资源受控暴露。
- 不同硬件差异通过 Profile 表达。
硬件不承担:
2. 推荐硬件包络¶
标准平台建议:
STM32F407 主控
16 路 24V 光耦输入
8 路 24V 晶体管输出
4 路继电器输出
RS485-1 上位机/维护口
RS485-2 扩展或现场总线
RS232 调试或兼容设备
TTL UART Bootloader 备用维护
RTC
FRAM/EEPROM 参数存储
看门狗
急停输入
输出总使能
PWR/RUN/ERR/COM 指示灯
SWD 仅用于研发和生产烧录
低成本平台可以剪裁:
3. 维护口要求¶
现场维护口必须满足:
- 可稳定连接上位机。
- 支持 GET_DEVICE_INFO、GET_STATUS、STOP、RUN、下载和在线变量。
- 下载中不依赖 App 正常运行。
- Bootloader 模式下仍可通信。
- 有固定兜底波特率。
- 建议有明确的进入 Bootloader 硬件方式,例如按键、拨码或上电窗口命令。
推荐优先级:
| 优先级 | 接口 | 用途 |
|---|---|---|
| 1 | RS485-1 | 主维护、下载、监控 |
| 2 | TTL UART | Bootloader 备用恢复 |
| 3 | RS232 | 调试或兼容 |
| 4 | SWD | 研发/生产,不作为现场维护方式 |
4. Bootloader 固化策略¶
空白芯片首次固化 Bootloader 可以使用:
现场维护阶段不再要求 J-Link。
Bootloader 必须固化:
- 分区表。
- 维护协议版本。
- 设备型号和硬件版本读取能力。
- App CRC 校验。
- 下载失败保护。
- 默认安全输出策略。
Bootloader 第一版默认不现场升级自身。若以后支持 Bootloader 升级,必须独立设计双重保护。
5. Profile 文件¶
每个硬件型号必须提供 Profile:
{
"name": "F407_STANDARD",
"mcu": "STM32F407",
"maintenancePort": "RS485-1",
"fallbackBootPort": "TTL-UART",
"xCount": 16,
"yCount": 8,
"rCount": 4,
"mCount": 128,
"dCount": 128,
"tCount": 32,
"cCount": 32,
"supportsABSlot": true,
"supportsCommImage": false,
"maxUserLogicBytes": 65536
}
Profile 是工具链、Runtime、协议和测试的共同依据。
6. 硬件安全要求¶
硬件必须支持:
- 上电输出默认关闭。
- MCU 复位期间输出关闭。
- STOP/ERROR/DOWNLOAD 时输出关闭。
- 急停输入可由 Runtime 读取并触发安全关闭。
- 输出总使能可硬件或驱动层控制。
- 通信故障不能导致输出误动作。
- 下载期间物理输出保持关闭。
CatST 写输出映像不能绕过硬件和 Runtime 安全链路。