打印
[应用相关]

【STM32垂直应用挑战第四周+学习提高微控制器EMC性能】

[复制链接]
394|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
linyu0395|  楼主 | 2020-12-12 13:53 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
      本周的垂直应用主题为功能安全,学习链接为
      https://www.stmcu.com.cn/ecosystem/app/function-safety

      STM32有很多内置的安全属性硬件,比如看门狗、片上SRAM的校验等,一个合格产品的量产必须要考虑到功能的安全问题,但是又难免留下Bug等隐患,除了工程师自身的技术实力水平外,还需要硬件安全属性来保护,也可以通过安全设计包来加强代码的保护。基于内置的MCU安全属性的功能安全设计包,ST为厂商提供了全套的认证软件库和文档,较少了安全认证的开发成本,缩短了开发时间。

     这张示例图很好的表达了目前ST的各个系列MCU的内置安全属性,像带ECC的SRAM也终于出现在H7系列中。
     
     
    这次我侧重点学习了一下AN1015文档中所表述的关于如何提高为控制EMC性能的软件技术。因为目前我所设计的产品,有很多是用在工业环境中,遇到的强磁辐射等干扰还是很多。电磁兼容干扰所引起的问题需要在电磁兼容系统中尽早加以考虑。EMC干扰引发的问题有很多,比如单片机没有反应、程序计数器跑飞了、IO口不受控制等。看门狗是最有效的工具,可以确保MCU的恢复,但是在运用过程中也要加以小心,绝对不能把看门狗放在中断中,因为程序一旦跑飞,中断可能还在工作,看门狗就无法复位了。在电源上也有启动复位和低压复位,在硬件的稳定性上尽可能的保护代码稳定的运行。
    下面视图就不是一个很好的使用看门狗的例子
       


        


   正确的看门狗使用方法如下:
   

   保护未使用的程序内存区域,也是提高EMC的一种方法。

   在大多数应用程序中,程序内存空间不是完全由用户代码填充的,安全起见,最好用代码填充未使用的内存区域,如果程序计数器跑飞,跳转到这片未使用的区域,那后果将不堪设想。
   

    为了避免意外的中断事件引起的问题,建议通过一个有效的中断来管理所有可能的中断源。
    AN1015文档建议大家都下载下来细细品读一下,收获颇丰,在一个合格的产品中离不开这些声影。所以只做个合格的程序员是不够的,在软硬件的安全以及抗干扰上的处理上能面面俱到,才是一个合格的工程师。


     最后附上AN1015文档
    en.CD00004037.pdf (342.1 KB)



使用特权

评论回复
沙发
氧化二氢| | 2020-12-12 23:31 | 只看该作者
文件都是英文不太看得明白 楼主总结的还是不错的

使用特权

评论回复
板凳
尼罗河L| | 2020-12-12 23:35 | 只看该作者
看门狗学习是很有必要的 但是单学看门狗肯定是不够

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

22

主题

241

帖子

4

粉丝