做了一块工控板, 用的stc单片机, 接负载跑几个小时会死掉
本帖最后由 guoyvv 于 2023-11-12 19:25 编辑一块冷库的工控板, 用继电器控制压缩机, 用可控硅控制加热管, 有时候会出现stc单片机死机的情况.
用的stc8a8k64d4, 用双路变压器做电源隔离
外部晶振, RST脚用做普通IO
晶振用的11.0592MHz
可以确认是单片机死机, 因为控制功能和串口通讯功能都失效了
请帮忙看看有没是要修改的地方没有, 谢谢!
各路输出都做了隔离,电源也分了两路,死机问题大概率出在程序吧! 1. 51貌似没有HartFault,而且逻辑估计不太复杂,软件有可能有问题,但估计概率不大,另外没有开狗?
2. 地平面惨不忍睹,建议地平面尽量完整,成本允许的上4层板,留一内层是完整地。如果成本不允许,地的过孔尽量多,线尽量粗,地回路尽量又粗又短。
3. 二十几年前用51的时候,晶振是很敏感的,晶振尽可能靠近芯片,晶振负载电容的地尽量和芯片的地又短又粗的连接,晶振外壳接地。
4. 由于没有原理图,但PCB粗看一下,很多外部接口处于裸跑状态,不烧已经是踩狗屎运,外部干扰从接口跑入打死MCU一点不奇怪。
5. MCU去耦又少又远
6. 另外,您这强电部分,完全不符合爬电距离啊,来电灰尘和潮气,漏电炸板等可能性极大,总体真是惨不忍睹啊
amigenius 发表于 2023-11-12 19:04
1. 51貌似没有HartFault,而且逻辑估计不太复杂,软件有可能有问题,但估计概率不大,另外没有开狗?
2. 地 ...
(引用自3楼)
{:sweat:} 有原理图, pdf版本的,麻烦您看下
有看门狗 冷库房间使用场景,是不是低温方面影响。
输入端子控制io有哪些,看pcb没有隔离处理吗?
有狗死机情况不多见,定时器中断中喂狗不大可能吧。
都工控板了,有源晶振加一个外置max8xx系列电压监控芯片,多不了几块钱。换一个安心安稳。 lb0857 发表于 2023-11-12 20:08
冷库房间使用场景,是不是低温方面影响。
输入端子控制io有哪些,看pcb没有隔离处理吗?
有狗死机情况不多 ...
(引用自5楼)
输入确实没有隔离, 或者保护
之前一版mcu端没有加防反流二极管, 稳压二极管, 也死过, 现在加了已经
guoyvv 发表于 2023-11-12 20:15
输入确实没有隔离, 或者保护
之前一版mcu端没有加防反流二极管, 稳压二极管, 也死过, 现在加了已经
...
(引用自6楼)
很简单的问题。 在rst 叫 加一个max809或者类似的芯片。。然后拿到现场去烤鸡。 看看能不能解决这个问题 工控产品,输出控制io加反相器驱动,输入隔离之后加施密特缓冲器。
参考一下国外plc线路板,有收获 guoyvv 发表于 2023-11-12 20:15
输入确实没有隔离, 或者保护
之前一版mcu端没有加防反流二极管, 稳压二极管, 也死过, 现在加了已经
...
(引用自6楼)
打log,一个一个代码定位,看看死在哪。可能程序里面在while(1)一个实际状态不正确的信号。。
另外注意中断嵌套的话,栈是不是溢出了。可以关掉中断嵌套测试一下。 amigenius 发表于 2023-11-12 19:04
1. 51貌似没有HartFault,而且逻辑估计不太复杂,软件有可能有问题,但估计概率不大,另外没有开狗?
2. 地 ...
(引用自3楼)
说得很对。楼主未必能懂字面后的意思,和怎样尽可能优化,奈何。 万不得已,不要用复位囗做ⅠO 晶体外壳最好接地,晶体太远。 1、去掉晶振,使用内部晶振;
2、你的板子死机的原因,是从触点继电器进去的。
本帖最后由 pulan 于 2023-11-14 08:25 编辑
外部加一个DC24V电源,板子上电源都用DC/DC隔离模块。 用STC以来,做了好多机器。从没用过外部晶振 这个电路图感觉没有什么问题,我们做的产品也是这个,除了芯片不同其他都差不多,建议把晶振焊下来,使用内部RC. 多谢大家的回答.
问题还在测试.
目前感觉还是软件问题, 具体就是函数嵌套层数太大, 传参太多.
另外, 在keil里, 设置成large模式, 这样的话, data区域就会大大减少, 跑了3个小时没出问题.
我总结下来, stc单片机性能还是太弱了, 所以没法用stm32的方式去写程序, 只能说程序尽量简单吧
当然各位说的硬件上的问题, 后续打板也慢慢改掉, 毕竟保护越多, 越稳定
非常感谢!!!! 嵌套太多,死机
某一个死循环中还喂狗了吗?
NB,这个485电路可以这样用吗?稳定吗? 阿豪博士 发表于 2023-11-13 08:39
1、去掉晶振,使用内部晶振;
2、你的板子死机的原因,是从触点继电器进去的。
...
(引用自13楼)
你的第二点可以细说一下吗? songyongpan 发表于 2023-11-13 23:35
你的第二点可以细说一下吗?
(引用自20楼)
触点开关时打火产生干扰的可能性最大。 lb0857 发表于 2023-11-12 20:18
工控产品,输出控制io加反相器驱动,输入隔离之后加施密特缓冲器。
参考一下国外plc线路板,有收获 ...
(引用自8楼)
有电路图吗?
页:
[1]