单片机抗干扰技术

1、电源。采用开关电源,条件允许的话增加一个隔离电源模块。
2、看门狗,我采用的是外部看门狗。
3、铁电存储器。我一般在每个过程之前都去修改写一下程序的步骤,将步骤写入,如果单片机复位的话,先读取步骤,看看到了哪一步,就执行哪一步,如果超过步骤数,就重新复位。
4  在PCB上下功夫,多打些地孔

5、现在的开关电源体积小重量轻是他的优点,但是他本身就产生高频干扰,如果抑制不好他就成了单片机死机的一个凶手。我觉得在单片机的IO口上适当加点102、103小电容很有效。
单片机抗干扰的问题
一:硬件设计
1·硬件的精简性,我的一直反对复杂繁琐的硬件设计,一直采用最精简的系统来实现功能,只要能达到目标性能能少用器件绝对就要省掉。少一个部件就降低了很多出故障的几率,同时也少了layout的繁琐,也少了干扰源的产生与耦合。
2·比较重视系统电源的稳健性,但是不会过多的去设计使用一些隔离电源之类的器件。而是在开关电源的器材品性上着手,在滤波上着手,特别是针对dcdc电源的layout工作我会花比较多的时间去细究每一个回路的电流。当然在layout中需要注意一些方式让你的滤波器件发挥他最大的作用。有了一个稳健的电源系统,想必已经成功了一半。
3·地的处理,这是我一直很注意的一个问题,一个干净的地会给我一个更舒适的休息时间。
4·一些看门狗之类的使用。在这个问题上,说实话我还就没有用过看门狗。但我一般都会使用一个带电压检测的复位芯片,因为在一些应用中发现有些芯片内部的复位功能并不是很好用。至于有人会说怎么不用看门狗,我的一个概念:看门狗是对自己产品的不信任,看看门狗是对问题处理的一种妥协处理。
5·对外io的一些处理,在对外io上我喜欢放置一些尖峰脉冲的吸收电路已使脉冲干扰对cpu的扰动降到最低,比如一些tvs和压敏电阻,这些的反映速度都不够快,其实在这里安规的吸收速度是很合适的。对一些特殊的PCB甚至我直接在layout工作中用铜来做一些锯齿的放电吸收电路配合着电容的使用效果还是很明显的。对io的保护就的隔离了。这些做法都的看是那一类的产品,定位而具体采用了。
6·系统及的隔离与屏蔽,这主要针对一些复杂的模数混合电路,以及与射频的混合电路了。这个的靠一些实战的经验了吧。对于模数的混合电路我一般比较注意共地的处理,跨地线信号的处理。射频不管他的线屏蔽起来在说了。
7·layout的工作特别的重要,PCB是一座坚固的桥架,如果这里有问题了那就不用考虑桥上是否可以安全的通行了。
二:软件设计
1·软件的健壮性。这主要是指软件的运行健壮性,就是不要有一些逻辑漏洞或者逻辑bug。在软件的编写上养成一个自己的良好的风格,对这个问题是比较有帮助的。
2·软件对io的一些处理,特别是对输入,一般我喜欢用状态机来处理io的输入来判断是否属于真实的操作还是误动作。
3·我一般喜欢使用一些超时的错误判断=这些东西,并把错误标识放到一起让错误处理机制去处理他,而很多时候并不是由产生错误的程序去处理错误。除非是会是系统崩溃的错误。
4·MCU资源的利用。充分的利用MCu的资源,发挥他的性能。比如很多mcu复位后都可以检测他的复位标志,到底是什么东西让他复位的,在不增加成本的情况下存储它,或者让自己知道,这不就增加了自己对自己产品的了解了吗。比如一个产品具有通信功能,能和自己的一个中心通信,何尝不把这些状态在每次复位或者运行中发送给自己的服务器呢。
案例1.采用冗余的系统架构。
系统作得越简单越可靠,这种说法看似很有道理,但不总是正确,一个简单到没有任何保护的产品恐怕在市面上是找不到的。
某一个电子产品,可靠性要求很高指标是七个九(99.99999%),同时要求任何单点故障不能影响系统核心功能,两点故障不能造成大的破坏,开发团队在设计产品时,评估了许多方案可靠性都未能达到要求,
最终采用冗余设计达到了要求。
具体来说:采用两组独立的辅助电源为所有电路板供电,任何一组电源故障都不会影响系统功能;核心控制部件采用1+2冗余方式,三套FPGA控制器独立采样信号独立发出控制指令,执行单元则对来自控制器的三组信号采用投票方式进行仲裁,以少数服从多数的原则决定执行器的动作。
这套系统可谓相当复杂,在实现运行过程中可靠性相当高。测试工程师拿螺丝刀戳坏一个FPGA电路,系统还能执行规定动作。

案例2.必要的电源完整性设计。
一块DSP信号处理电路板,AD采样精度一直有200LSB左右的偏差,解决这个问题之初,把精力集中在改善信号调整电路和传感器驱动电路,收效不大。后来发现摸拟电源上有毛刺,于是重新考虑DSP电源的完整性问题,改造了数字和模拟电源分割方式,并补充了若干去藕电容,改造之后AD采样误差小于35LSB。

案例3.必要的信号完整性设计。
某电子产品为了减小故障在各电路板之间扩散的概率,电路板之间的数据交换全部LVDS差分信号传输,测试时发现传输数据误码偏高。很快原因找到了,在PCB上的LVDS差分线走线特征阻抗和电缆不匹配,重新调整走线,误码率高的问题得到解决。

案例4.必要的防护设计。
九月份的成都有几天是雷雨天,有一天我到电脑城买台新机器,(由于前一天晚上一夜的雷雨,雷击容易损坏家用电脑),组装电脑的工程师抱怨事情太多忙不过来,一天要修14台损坏的机器。我研究了这些雷击损坏的主板,有一些共同点:1)基本上是网卡埙坏,2)网卡接口设计基本上没有达到基本绝缘的要求,3)网卡基本上没有TVS之类保护器件。如此马虎和抠成本的设计,难怪一打雷就要损坏电脑。我当天就给自己买了个路由器,放在户外网线和电脑之间,雷劈下来先把路由器劈坏,电脑也许还能保得住。

案例5.影响可靠性的设计细节。
楼上有兄弟在用铁电存储器,使用铁电存储器如果不留意一些细节,同样会有可靠性隐患。我在一个产品里用铁电存储器来保存故障数据,开始一切正常,产品批量出货之后,市场反馈偶尔有故障数据丢失的现象。经过分析这些失效的电路板发现一个问题,电路板突然掉电过程中,MCU的读/写控制和片选信号会处于一种不确定状态,这种电源不稳定导致控制信号不确定的状态对于铁电存储器来说却是有效的操作信号,结果就可想而知了,铁电存储器里面的数据莫名奇妙被改写了。
这个问题解决起来还有些麻烦,先采用电容提供能量,在CPU电力不足时,由辅助电路断开铁电存储器的片选信号并把片选拉到无效状态,此外还要在每次开机对关键数据作校验,虽然有复位电路,实测上电过程中还是出现铁电存储器内容被改写的情况。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要提高单片机实现LORA模块的抗干扰能力,可以考虑以下几个方面: 1. 选择合适的LORA模块:选择具有良好抗干扰能力的LORA模块是关键。查看模块的技术规格,了解其性能参数和抗干扰设计。选择经过认证的模块,确保其符合相关的电磁兼容性(EMC)标准。 2. 优化天线设计:天线是LORA模块与外界通信的重要部分,其设计也会影响抗干扰能力。合理选择天线类型和设计,确保其工作频段与LORA模块一致,并考虑使用天线滤波器来减少外部干扰。 3. 地线设计:良好的地线设计可以有效减少系统中的地线噪声和回流问题。确保地线的连续性和低阻抗,采用合适的地线布局,减少共模和差模干扰。 4. 电源滤波:使用适当的电源滤波器和稳压器来减少电源线上的噪声和干扰。这将有助于提高系统的稳定性和抗干扰能力。 5. 信号调制:采用合适的调制方式和编码方式,如使用前向纠错编码(FEC),可以提高系统对干扰的容忍能力,并增加数据传输的可靠性。 6. 抗干扰算法:在软件层面上,可以通过实现抗干扰算法来提高系统的抗干扰能力。例如,采用频谱扫描技术,自适应调整通信频率以避开干扰源。 7. 外部干扰屏蔽:采取合适的屏蔽措施,如使用金属屏蔽箱或金属屏蔽罩,来阻隔外部电磁干扰对LORA模块的影响。 需要注意的是,具体的抗干扰措施会因具体的硬件和软件设计而有所差异。在实际应用中,可以结合模块的技术规格和实际需求,选择适合的措施来提高LORA模块的抗干扰能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值