• 资料介绍
  • 相关推荐
申请入驻 产业图谱

如何在噪声环境中开发可靠的软件

2024/11/13
906
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

如何在噪声环境中开发可靠的软件

259.14 KB

本应用说明介绍了在噪声干扰较重的应用中使用 S08PT60、FL16 和 AC60 的 MCU 器件时如何实现强大的软件。在一般情况下,软件设计无法改变将噪声耦合到系统中的物理介质,也无法降低外部源产生的噪声的绝对幅度。但是,软件必须能够识别特定事件,如果它是由噪声源触发的误报,或者是正常的驱动事件,然后对相应的操作做出明智的决定。例如,如果请求的操作存在任何不确定性,则软件不得打开 power control stage。良好的防御性软件设计是提高整体性能、系统保护和噪声环境下运行稳定性的关键因素之一。

这里说明了大多数微波炉应用使用的典型软件设计,以展示如何在实际案例中应用以下软件技术。每个主题还包括设备 PT60、FL16 和 AC60 的示例代码,作为快速入门指南,以帮助用户更快地采用这些技术。

一个好的防御软件推荐使用以下软件技术。

• 启用 Watch-Dog 以避免代码失控

• 定期刷新数据方向寄存器

• 填充未使用的内存以避免代码失控

• 定义所有中断向量,甚至包括未使用的中断向量

• 选择锁频环 (FLL) 接合模式

• 始终重新确认边缘触发的事件

• 在输出端口上启用转换速率控制

• 启用输入毛刺滤波器(PT60 内置功能)

当应用软件无法按预期执行时,例如,当瞬态噪声注入 MCU 时,正在运行的软件跳转到意外的内存位置或进入无限循环,从而强制系统重置。为了防止在启用 WDOG 计时器时从 WDOG 计时器重置系统,应用程序软件必须定期重置 WDOG 计数器。如果应用程序丢失并且无法在 WDOG 计数器超时之前重置 WDOG 计数器,则会生成系统重置以强制系统返回到已知的起点。建议将 WDOG 刷新routine 而不是 sub-routines 和 interrupt routines。WDOG 函数在主循环开始时初始化,WDOG 计数器在 forever 循环内定期重置。WDOG 重置代码由宏 __RESET_WATCHDOG() 定义。

恩智浦

恩智浦

恩智浦半导体创立于2006年,其前身为荷兰飞利浦公司于1953年成立的半导体事业部,总部位于荷兰埃因霍温。恩智浦2010年在美国纳斯达克上市。恩智浦2010年在美国纳斯达克上市。恩智浦半导体致力于打造全球化解决方案,实现智慧生活,安全连结。

恩智浦半导体创立于2006年,其前身为荷兰飞利浦公司于1953年成立的半导体事业部,总部位于荷兰埃因霍温。恩智浦2010年在美国纳斯达克上市。恩智浦2010年在美国纳斯达克上市。恩智浦半导体致力于打造全球化解决方案,实现智慧生活,安全连结。收起

查看更多

相关推荐