amobbs.com 阿莫电子技术论坛

标题: 74HC595的抗干扰能力真的这么差吗?还是我的电路有问题啊... [打印本页]

作者: 小奕    时间: 2014-2-17 16:28
标题: 74HC595的抗干扰能力真的这么差吗?还是我的电路有问题啊...
本帖最后由 小奕 于 2014-2-17 17:13 编辑

做了一个控制器,分为主板和显示板两块板子。显示板子上有一个液晶屏,10个LED指示灯,及4个按键。主板和显示板子用20P的排线连接长度20CM。结果出现了问题,正常时候显示板子上的指示灯能正常显示,一遇到接触器或者电磁阀工作或电动球阀工作时,LED面板上的灯就乱[attach]170743[/attach]一次,动作结束后恢复正常。----------可恨的干扰来了。
PCB硬件大概如下:
1、主板上的单片机工作一切正常。
2、显示板子上的LCD工作正常。
3、显示板子上按键扫描正常。
4、显示板子74HC595信号线SCLK,RCK,DIN均加强上拉1K欧姆的电阻。
5、显示板每片74HC595都紧挨着104电容。
6、显示板电源处有两个1000PF电容,并有104电容。

当出现干扰后第一反应是连接排线太长了,造成干扰。为了决定具体是排线太长造成的干扰还是74HC595抗干扰能力差于是去掉排线,将显示板单独用电池供电,这时把板子放置在交流接触器附近,上电后所有LED灯均亮起来,然后频繁启动交流接触器发现LED开始乱跳。

请问各位是595的抗干扰能力差还是我的测试方法不对???? 另外像我这样的需求你会怎样设计呢??? 考虑过显示板子和主控板子用485进行通信,可是这样改动太大。(主板单片机两个串口均以被使用),求大侠支招!!!!

作者: cc1987    时间: 2014-2-17 17:04
帮顶
作者: 小奕    时间: 2014-2-17 17:08
cc1987 发表于 2014-2-17 17:04
帮顶

谢谢!不知道换CD4094能行不,只是看资料说4094的驱动电流太小啊。
作者: Jason022    时间: 2014-2-17 17:12
检查下你的单片机管脚是否设置成推挽输出模式
作者: 小奕    时间: 2014-2-17 17:14
Jason022 发表于 2014-2-17 17:12
检查下你的单片机管脚是否设置成推挽输出模式

单片机推挽输出! 现在的问题是将显示板和主控板断开,依然会出现干扰。(显示板上没有MCU只有两个74HC595)
作者: 小奕    时间: 2014-2-17 17:16
大家有什么好的方案替代595吗?
作者: 小奕    时间: 2014-2-17 17:16
Jason022 发表于 2014-2-17 17:12
检查下你的单片机管脚是否设置成推挽输出模式

谢谢帮忙!!
作者: EMC菜鸟    时间: 2014-2-17 17:24
楼主的测试手段是否符合现场的情况,即现场是否有很靠近面板的接触器? —— 如果有,并且楼主无法解决干扰的问题,是否可以考虑将设备离接触器远一点?

另外看楼主的说明,仅仅靠辐射干扰就能让HC595混乱,这种即强又近的干扰,倒没遇到过,一般情况下,面板也就是做做静电放电测试而已。
作者: 小奕    时间: 2014-2-17 17:28
EMC菜鸟 发表于 2014-2-17 17:24
楼主的测试手段是否符合现场的情况,即现场是否有很靠近面板的接触器? —— 如果有,并且楼主无法解决干扰 ...

实际现场的干扰源比现在手头测试的更多啊。 设备放在柜子里的,里边有两个交流接触器就在显示单元下方。我测试的时候也是把显示板子放在交流接触器上方大约几厘米。
测试时候发现将排线绕在交流接触器上,干扰更明显。

作者: ahong2hao    时间: 2014-2-17 17:32
用电池都不行啊,那应该是信号线受干扰了。将所有信号线下拉试试。看看还会不会受干扰。
作者: hall    时间: 2014-2-17 17:36
两个板子和电动元件不是共用电源吧
作者: 小奕    时间: 2014-2-17 17:38
ahong2hao 发表于 2014-2-17 17:32
用电池都不行啊,那应该是信号线受干扰了。将所有信号线下拉试试。看看还会不会受干扰。 ...

恩这就改一下电路试试!
作者: 小奕    时间: 2014-2-17 17:43
改为下拉,将排线靠近接触器还是有干扰。
作者: 68336016    时间: 2014-2-17 17:44
上电时有没有对595的输出引脚进行“初始化”一下,因为这些逻辑芯片上电时候输出引脚状态不确定,容易在后面出现混乱。


作者: 小奕    时间: 2014-2-17 17:47
hall 发表于 2014-2-17 17:36
两个板子和电动元件不是共用电源吧

现在只用一个显示板子做测试,不输入信号,将电源接通(电池供电),将排线靠近交流接触器(交流接触器电源用线接在220V插排上,用手来回插拔电源接头)。板子上电后595默认输入高电平,所有LED点亮,595的信号线上拉或下拉(1K电阻)都测试过,只要将板子放在接触器正上方,LED灯就会闪烁,595寄存器保存干扰后的数据。   
应该是信号线受干扰,但是我都接1K上拉或者下拉了还不行呢。

作者: 小奕    时间: 2014-2-17 17:48
68336016 发表于 2014-2-17 17:44
上电时有没有对595的输出引脚进行“初始化”一下,因为这些逻辑芯片上电时候输出引脚状态不确定,容易在后 ...

没接MCU,只是让595上电输出默认值。
作者: witlong    时间: 2014-2-17 18:11
用595做过广告灯,单片机IO口直推,连线5M多,595级联100个后有20多米。没异常。
作者: 小奕    时间: 2014-2-17 18:16
witlong 发表于 2014-2-17 18:11
用595做过广告灯,单片机IO口直推,连线5M多,595级联100个后有20多米。没异常。 ...

哦 开来20CM的排线应该没问题喽。唉,难道是芯片不行?我在X宝买的芯片,2毛多一个。
看来得翻翻旧板子看有没有595了。
作者: JohnsonTan    时间: 2014-2-17 18:40
电磁阀供电电路与MUC供电电路分开。
作者: WOSDAIZ    时间: 2014-2-17 18:55
你把595的時鐘速度改慢一點試下.
作者: 小奕    时间: 2014-2-17 19:49
用示波器打信号线,信号线有少了干扰信号。请问这个干扰信号(应该是电磁辐射过去的)怎么能去除呢? (交流接触器的干扰还是挺大的,将示波器的表笔放在接触器附近,接触器动作,在示波器上能看到波形。) 磁珠?低通滤波?一会都试一下,把结果告诉大家。
作者: 小奕    时间: 2014-2-17 20:22
加上低通滤波干扰大幅度减小!
作者: EMC菜鸟    时间: 2014-2-17 20:26
小奕 发表于 2014-2-17 20:22
加上低通滤波干扰大幅度减小!

不太明白,你在哪里加低通?PCB上靠近芯片的地方?加RC?
作者: 小奕    时间: 2014-2-17 20:28
靠近HC595的三条数据线,靠近芯片位置加阻容滤波。具体频率还没计算,算好后再测试一下。
作者: Vmao    时间: 2014-2-17 20:42
不插排线有影响吗 如果没有考虑把595 时钟线 数据线串接电阻  
作者: cqfeiyu    时间: 2014-2-17 20:43
串电阻确实有效果,试过
作者: Vmao    时间: 2014-2-17 20:44
595 是高速 ic 对小信号 抖动都能相应的
作者: Xujuango    时间: 2014-2-17 21:00
肯定是你的 MCU部分有问题
作者: lans0625    时间: 2014-2-17 21:12
关注.等侍最后结果.
作者: tbbt    时间: 2014-2-17 21:12
595的clk和RCK上加102电容,接触器线圈上并浪涌吸收器

作者: zhiwei    时间: 2014-2-17 21:53
同意楼上。我们逆变器等设备干扰也是很厉害,加电容有用。你的PCB是双面板可以考虑底层铺铜,顶层走线!
作者: DiaoMao_Huang    时间: 2014-2-17 22:56
感觉是MCU程序问题
作者: kafeiwutang    时间: 2014-2-18 10:47
加铁壳,线换屏蔽线
作者: kebaojun305    时间: 2014-2-18 10:54
595的时钟和数据线上要加阻容滤波的  这类IC  速度太高   对毛刺干扰特别敏感。
作者: liujingbin    时间: 2014-2-18 11:50
DiaoMao_Huang 发表于 2014-2-17 22:56
感觉是MCU程序问题

我也是这么觉得
作者: 饭桶    时间: 2014-2-18 12:19
很多PLC的面板都是595方案的,稳定很多
作者: 小奕    时间: 2014-2-18 14:20
kebaojun305 发表于 2014-2-18 10:54
595的时钟和数据线上要加阻容滤波的  这类IC  速度太高   对毛刺干扰特别敏感。 ...

恩 说到点子上了。就是数据线上有毛刺造成的!!
作者: 小奕    时间: 2014-2-18 14:21
liujingbin 发表于 2014-2-18 11:50
我也是这么觉得

呵呵 我说的是没有MCU控制的时候。  问题解决了,加低通滤波。
作者: kebaojun305    时间: 2014-2-18 14:55
小奕 发表于 2014-2-18 14:20
恩 说到点子上了。就是数据线上有毛刺造成的!!

我用164时碰到过。
作者: jz701209李    时间: 2014-2-18 15:31
路过,学习一下
作者: ghhuang    时间: 2014-2-18 16:48
楼主是做RFID产品的,跟我以前做一块子相式度达90%
作者: wazhiyi    时间: 2014-2-18 20:07
楼主公布一下解决办法吧
作者: wjy80    时间: 2014-2-19 23:12
菜鸟也想知道问题答案!
作者: lijg8421    时间: 2014-2-20 08:37
595确实信号线易受干扰,打群脉冲时非常明显,工业现场容易出现显示乱码,测试使用CH452效果更差!
作者: DiaoMao_Huang    时间: 2014-2-20 08:54
ghhuang 发表于 2014-2-18 16:48
楼主是做RFID产品的,跟我以前做一块子相式度达90%

你就是在说楼主山寨你的!!
作者: newywx    时间: 2014-2-20 09:03
饭桶 发表于 2014-2-18 12:19
很多PLC的面板都是595方案的,稳定很多

不知道它们怎么处理的
作者: yuyu87    时间: 2014-2-20 09:06
不要共用电源,
104电源也太大了吧?換小一点,101,上下拉
作者: ghhuang    时间: 2014-2-20 09:12
DiaoMao_Huang 发表于 2014-2-20 08:54
你就是在说楼主山寨你的!!

  纯属巧合而已。
作者: anxiangbo    时间: 2014-2-20 09:16
软件上把数据送慢些,数据的高低电平时间长些。硬件上加施密特电路驱动,问题差不多就解决了
作者: guozs1984    时间: 2014-6-6 12:46
最近用74HC595 ,发现干扰也是很大。
我电源5V,纹波500mV左右。
但控制信号的波形还是不错的,没有太大的波动,高电平5V,外加500mV左右的纹波,低电平0V,外加200mV左右的纹波。
电机一工作起来,595输出就不正常,接的led灯闪烁,电机停下来,就好了。

作者: kickdown    时间: 2014-6-6 14:49
我们设备面板上也是HC595,排线进面板后先是RC低通滤波,电阻100R,电容1nF,然后进74HC14施密特处理,14输出后再加100R和1nF到HC595,最大驱动400kW电机,啥事没有。
后来我做了一个检测TTL传输过来,最高频率500Hz左右信号的板子,线长2米左右,进来后直接HC14输入加1k下拉,当时想的是反正HC14已经施密特处理了,一般干扰也不会有问题,结果到了现场,变频一起动就误报,实在不想改板,就在1k上并联了0.1uF电容,对付过去了。
作者: jhjkdz    时间: 2014-6-8 13:31
学习了!低通滤波!
作者: phy_0302    时间: 2014-6-11 14:41
最近正好有在用这个芯片,学习了。
作者: 1066950103    时间: 2014-7-10 10:13
看了各位的解说又涨见识啦!
作者: changmingking    时间: 2014-8-11 09:34
我现在是平时可以正常工作,打EMC(群脉冲)的时候,不亮的灯会瞬间闪亮。   LZ 的RCK是怎么处理的呢?是下面这样处理的吗?

for(i = 0;i < 8;i ++)
{
    SI = dat & 0x80;
    SCK = 0;
    dat <<= 1;
    SCK = 1;
}
RCK = 0;
RCK = 1;
作者: myxiaonia    时间: 2014-8-14 21:16
悲剧了,我也想用595啊,没想到难度比我预想的还要大
作者: myxiaonia    时间: 2014-8-15 13:36
小奕 发表于 2014-2-18 14:21
呵呵 我说的是没有MCU控制的时候。  问题解决了,加低通滤波。

我有个疑问,加低通滤波后信号边沿就不陡峭了,你的移位时钟频率是多少啊
作者: YaoHui    时间: 2014-8-15 14:13
越简单的东西越不好搞啊。
多少人靠595发财的....
作者: yigang    时间: 2014-8-15 14:59
D:\MAG_2014\PCB_DESIGN\PP.JPG

长线不可怕!!!
作者: yigang    时间: 2014-8-15 15:01
长线传输不可怕
作者: glacier1    时间: 2014-8-15 15:06
595没这么差吧
作者: steaven2000    时间: 2014-8-15 17:26
从现象分析,应该是你的锁存信号和时钟信号同时受干扰了:时钟信号受干扰,导致数据发生移位;锁存信号受干扰,干扰数据生效,74HC595输出异常。

测试LED显示错乱时锁存信号和时钟信号波形,增加滤波。
作者: matao5566    时间: 2014-8-15 17:49
现在的LED屏大多是用595驱动的,可以级联很多,所以说还是很稳定的
作者: qijun    时间: 2014-8-15 19:41
注意13脚的干扰问题,直接在13脚上加电容到地或者电源。
作者: 1ongquan    时间: 2014-8-15 22:42
实心铺铜感觉会好点,有一定屏蔽作用
作者: 2fen    时间: 2014-8-16 00:19
小奕 发表于 2014-2-17 18:16
哦 开来20CM的排线应该没问题喽。唉,难道是芯片不行?我在X宝买的芯片,2毛多一个。
看来得翻翻旧板子看 ...

JLC商城卖0.3元,品质应该有保障
作者: smartmeter    时间: 2014-8-16 09:07
595差不多这个德性
作者: chunri    时间: 2014-8-16 09:15
单片机IO是多少伏的,之前用3.3V的单片机驱动5V 595经常出错,推挽 、开漏+强上拉 都试过,线长了很容易出错,后来加了一级 电平转换,没问题了!
作者: tonyone    时间: 2014-8-16 23:05
学习了               
作者: mcuyongchao    时间: 2014-8-25 00:22
mcu不是3。3v的吧?没电平转换?
作者: yigang    时间: 2014-9-4 09:25
本帖最后由 yigang 于 2014-9-4 09:45 编辑

这个问题也可以说是长线问题---你的PCB板子上,可能有一个或几个构成闭合回路的长线---包括电源线、地线。
当电磁阀动作时回路中的磁力线变化----于是法拉第就找你来了。。。
解决办法,(在已有的PCB板上,或当重新布板时)人工用短粗导线(飞线)破坏“长线回路”。。。

还有,首先排线的地要多一些---比如一个信号对一个地线。。。
作者: chwnin    时间: 2014-9-11 15:15
chunri 发表于 2014-8-16 09:15
单片机IO是多少伏的,之前用3.3V的单片机驱动5V 595经常出错,推挽 、开漏+强上拉 都试过,线长了很容易出 ...

线路短的话(5cm),3.3v直接驱动误码率高吗?我想做个板级的显示,不知道不转电平问题大不大。
作者: jiangshaoyatui    时间: 2014-9-11 18:18
可以肯定的是  不是595的问题
作者: myliuyu    时间: 2014-9-12 00:37
滤波,或者光耦隔离,或者差分传输
作者: hamxiyue    时间: 2014-9-12 08:58
用过没出现这问题
作者: kevinchen026    时间: 2014-9-12 09:02
mark~            
作者: netting    时间: 2014-10-1 21:03
某位兄弟讲得好,加阻容或光偶或加逻辑整形
作者: xiangqian1114    时间: 2014-10-28 14:03
mark,低通滤波
作者: NEXEN1106    时间: 2014-10-29 14:14
我用164碰到过,数据和时钟线加上1k电阻/101电容就好了
作者: eit    时间: 2014-10-29 14:27
学习了,595抗干扰问题
作者: LeoJun0614    时间: 2014-10-29 14:31
yigang 发表于 2014-8-15 15:01
长线传输不可怕

学习了~~~帮顶
作者: benhaha    时间: 2014-11-7 10:43
硬件上加低通滤波;软件上加实时刷新
作者: retome    时间: 2016-5-2 14:55
NEXEN1106 发表于 2014-10-29 14:14
我用164碰到过,数据和时钟线加上1k电阻/101电容就好了

怎么加?
作者: 寻思    时间: 2016-5-2 15:23
继电器输出端控制电磁阀的问题,百度电磁阀吸收电路。在继电器输出加上该电路
作者: gylg3344love    时间: 2016-5-2 20:27
yigang 发表于 2014-8-15 15:01
长线传输不可怕

可以讲解一下原理吗?
作者: LQS1200    时间: 2016-5-2 21:36
唉,一吸继电器,573数据改了
作者: qdyuyan    时间: 2016-5-2 21:51
以前用573驱动一些灯,也出现过乱闪的现象,
作者: xmcsl    时间: 2016-8-12 10:30
刚使用595 + ULN2003,带继电器控制电机,电机一起动595就乱输出,拆掉电机工作就正常,初步判断为595受干扰,正在解决中...
作者: RAMILE    时间: 2016-8-12 10:38
xmcsl 发表于 2016-8-12 10:30
刚使用595 + ULN2003,带继电器控制电机,电机一起动595就乱输出,拆掉电机工作就正常,初步判断为595受干 ...

在595的ST管脚对地接102电容就OK了
作者: xmcsl    时间: 2016-8-12 11:18
RAMILE 发表于 2016-8-12 10:38
在595的ST管脚对地接102电容就OK了

谢谢,我晚上试试。
作者: xmcsl    时间: 2016-8-12 23:33
RAMILE 发表于 2016-8-12 10:38
在595的ST管脚对地接102电容就OK了

刚试了,在595的第11,12,14脚各接了102电容到地,测试OK!
作者: ycping    时间: 2016-8-13 09:22
应该不会。
作者: 贪吃的蚂蚁    时间: 2016-10-19 23:09
MARK,正打算用595呢!向各位学习
作者: 片羽之神    时间: 2016-10-20 11:14
我用hct244遇到不稳定问题~不过加上延时就好多了~
作者: merphy    时间: 2016-10-20 12:49
小奕 发表于 2014-2-17 18:16
哦 开来20CM的排线应该没问题喽。唉,难道是芯片不行?我在X宝买的芯片,2毛多一个。
看来得翻翻旧板子看 ...

去原厂 st 或者ti 什么的要几片原装的595,这个问题我碰见过,淘宝货是不行的,
作者: dxdqdxdq    时间: 2016-10-20 13:11
试试立创商城的AiP1628吧,4毛多,够便宜。抗干扰估计都一样,不停迅速刷新就看不出来了。
作者: xingjianpeng    时间: 2016-12-30 10:50
RAMILE 发表于 2016-8-12 10:38
在595的ST管脚对地接102电容就OK了

果然好了。在其它管脚上加102没啥用。只在这一个管脚上加,就好了。
厉害厉害。
苦恼了好久的问题终于解决了。
被交流接触器带来的595乱码问题烦了好久。
作者: myxiaonia    时间: 2016-12-30 11:12
本帖最后由 myxiaonia 于 2016-12-30 12:30 编辑
qdyuyan 发表于 2016-5-2 21:51
以前用573驱动一些灯,也出现过乱闪的现象,


用时钟锁存的方法都有这个问题,但是573因为是并行,和595这种串行的相比,出错概率是1/8左右,相对而言情况就好很多了

不过,因为用8位扩展的话,一般8位口会连好几个扩展芯片,如果锁存线上来个毛刺的话,问题反而更糟糕
作者: myxiaonia    时间: 2016-12-30 12:22
xingjianpeng 发表于 2016-12-30 10:50
果然好了。在其它管脚上加102没啥用。只在这一个管脚上加,就好了。
厉害厉害。
苦恼了好久的问题终于解 ...

我挺奇怪的  虽然st信号是很重要,但是clk信号一样重要啊 甚至这俩信号被干扰出错的时间点都是一样的

而且按照时序,只要移位寄存器内容是对的,最终锁存内容总是正确的,而移位出错了,那只要没有重新刷新的话,锁存内容都不可能是对的
clk至少不会比st重要性低
作者: 吉安的心该有    时间: 2017-5-4 11:03
xmcsl 发表于 2016-8-12 23:33
刚试了,在595的第11,12,14脚各接了102电容到地,测试OK!

学习了 我也是遇到同样问题




欢迎光临 amobbs.com 阿莫电子技术论坛 (https://www.amobbs.com/) Powered by Discuz! X3.4