ECU编程与安全监控:MaxBootRunTimer与WatchdogProtectTimer

需积分: 9 2 下载量 193 浏览量 更新于2024-07-05 收藏 106KB DOCX 举报
"GWMLAN General Specification3" 文件主要涵盖了汽车电子控制单元(ECU)的固件更新过程,特别是编程会话管理和监控机制。文件描述了一种安全可靠的编程流程,涉及多个定时器的使用以及系统初始化的检查列表。 在ECU的编程过程中,有以下几个关键知识点: 1. **编程会话**:在子步骤2.4,ECU自动进入编程会话,为应用软件编程或应用数据编程做准备。这是一个重要的阶段,因为它确保ECU准备好接受新的软件或数据。 2. **MaxBootRunTimer**:在子步骤2.5中,ECU启动了一个名为“MaxBootRunTimer”的监控定时器,用于控制整个编程过程的时间。其超时值是正常编程时间的三倍,通过C代码头文件的宏常量静态配置,以应对可能的延迟或异常情况。 3. **微监控方法**:在子步骤2.6,ECU使用“微监控方法”,启动WatchdogProtectTimer。这个定时器的超时值只有100ms,用于防止FBL(Flash Boot Loader)软件死锁。它同样通过C代码头文件的宏常量静态配置,并在快速循环任务中进行检查和服务,例如每30ms。 4. **错误检测与处理**:在子步骤2.7和2.8,ECU会检查MaxBootRunTimer和WatchdogProtectTimer是否超时。如果MaxBootRunTimer超时,说明编程过程存在严重问题,ECU会触发内部硬复位。而WatchdogProtectTimer超时则无条件触发硬复位,避免FBL软件死锁。 5. **系统初始化检查**:文件提到了几个关键的系统初始化检查列表,如RS-FBL-4030、RS-FBL-4040、RS-FBL-4050、RS-FBL-4060,分别对应系统初始化、PendingReProgramRequestFlag、看门狗保护定时器和应用软件有效标志的要求,确保了系统在编程前处于正确状态。 6. **S3Server定时器**:在步骤3的子步骤3.1,涉及到S3Server定时器,确保编程会话不会因ECU侧的计时器超时而意外退出。超时检测会在快速UDS(统一诊断服务)循环任务中进行,以保证通信的稳定性和安全性。 这些规范和流程设计确保了ECU编程过程的可靠性和安全性,防止软件更新期间出现的潜在问题,同时考虑了硬件老化和潜在的通信延迟。通过细致的监控和及时的错误处理机制,提高了整个系统的健壮性。