TI中文支持网
TI专业的中文技术问题搜集分享网站

微控制器运行异常处理

您好!

    我们在用TMS320F28335,外置独立看门狗芯片。由于产品为安全应用,所以在代码中需要添加一些异常检测程序来防止异常。比如MCU片内部集成RAM存储区损坏。如果自检程序运行时检查到异常,应当让MCU的输出导向安全侧。

  经查阅资料,有一种做法是采取断言调用assert()函数,那调用该函数之后MCU进入了什么状态呢?是进入了调试模式了吗?假设进入了调试模式的话,MCU就不会再去喂看门狗,那么看门狗会定时复位MCU,从而让系统进入周期复位的模式,这种做法是否可取?有没有更好异常处理方法?

谢谢

Young Hu:assert适用于调试阶段做代码验证的。
如果批量的产品的话,可以采用带ECC RAM的c2000芯片,单bit错误会被纠正,2个及以上的会触发NMI中断,进行后续处理。

您好!

    我们在用TMS320F28335,外置独立看门狗芯片。由于产品为安全应用,所以在代码中需要添加一些异常检测程序来防止异常。比如MCU片内部集成RAM存储区损坏。如果自检程序运行时检查到异常,应当让MCU的输出导向安全侧。

  经查阅资料,有一种做法是采取断言调用assert()函数,那调用该函数之后MCU进入了什么状态呢?是进入了调试模式了吗?假设进入了调试模式的话,MCU就不会再去喂看门狗,那么看门狗会定时复位MCU,从而让系统进入周期复位的模式,这种做法是否可取?有没有更好异常处理方法?

谢谢

Frank Lee96:

回复 Young Hu:

那要是自检程序监测到异常应该让CPU执行什么指令或操作来避免危险侧输出呢?

赞(0)
未经允许不得转载:TI中文支持网 » 微控制器运行异常处理
分享到: 更多 (0)