搜索
bottom↓
回复: 23

atmega16+hc573+uln2003+继电器上电抖动。

[复制链接]

出0入0汤圆

发表于 2009-11-5 14:21:21 | 显示全部楼层 |阅读模式
原理如图,
用atmega16+hc573锁存,驱动uln2003+12V继电器。以前用avr直接驱动uln2003,没有问题。如今io口不够了,用hc573扩展一下,发现问题(上电瞬间继电器会动作一下。)请大家讲讲其中奥妙,呵呵。
原理图 (原文件名:未命名.jpg)
1---hc573的LE高电平输入出导通,低电平锁存,在avr程序中上电立即初始化hc573,但是也解决不了继电器抖动。
2---可能是573上电后输出即为高电平吗?此时间要比atmega16上电后执行几句程序快(目测可能200ms左右),所以才有这种现象,不知理解对不对。
3---atmega16从5v上电到执行第一句指令大约多少时间呢?难道是由于C编译器在初始化的时候增加了许多代码?
4---我试过更改熔丝位的BODEN,SUT1,0这些影响复位时间的设置,均没有作用。
5---以上理解都不对,难道我的电源回路(LM2575)建立时间过长啊?

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入0汤圆

 楼主| 发表于 2009-11-5 14:22:11 | 显示全部楼层
在二楼谢谢大家了。

出0入0汤圆

 楼主| 发表于 2009-11-5 14:25:55 | 显示全部楼层
明天改用hc574试试。

出0入0汤圆

发表于 2009-11-5 14:53:33 | 显示全部楼层
OE接上拉后由单片机控制

出0入0汤圆

 楼主| 发表于 2009-11-5 15:14:15 | 显示全部楼层
楼上的,这招我也用了,OE上电由单片机置高(片选无效),也没有用。谢谢

出0入0汤圆

发表于 2009-11-5 15:24:09 | 显示全部楼层
OE=1是输出无效,及三态的高阻态,OE接上拉电阻,不是由单片机置高,单片机上电时IO口也是高阻的,要输出时由单片机置低

出0入0汤圆

发表于 2009-11-5 15:33:57 | 显示全部楼层
5楼的方法还不行的话,在2003的输入端接排阻到地试试看排阻阻值小点的1K

出0入54汤圆

发表于 2009-11-5 16:47:33 | 显示全部楼层
选带复位引脚的锁存器,我原来用过的是74HC273。/MR脚用阻容复位,让它的复位时间大于单片机控制时间。
顺便传上PDF
点击此处下载 ourdev_500121.pdf(文件大小:153K) (原文件名:74HC273.pdf)

出0入0汤圆

 楼主| 发表于 2009-11-5 16:57:35 | 显示全部楼层
1---多谢楼上。有同感啊,前面说改用574试试,就是和273原理是一样的,只不过用574管脚可替代目前的573,273好像和373封装是一样的。
2---5楼的cqfeiyu ,OE接单片机,OE接上拉电阻接单片机,OE直接接5V,都试过了,刚刚试过。我就是故意让573不工作,然而也不如 意啊。
3---你的另外一个方法我明天试一下,然后贴出来。多谢。
3---其实这个电路在工作的时候是好的,数据输出,锁存。只是在刚上电一瞬间会出高电平。一闪。很奇怪。

出0入54汤圆

发表于 2009-11-5 17:22:37 | 显示全部楼层
因为刚上电573输出的状态不确定,而有复位引脚的锁存器在复位时输出是固定状态。
没看到574有复位功能。

刚想了下,其实你也可以在/OE上做文章,刚上电时让/OE为高。。。

出0入0汤圆

 楼主| 发表于 2009-11-6 08:19:14 | 显示全部楼层
我感觉也是573上电输出不稳定。OE我都接过VCC,不行。
我再好好看看pdf

出0入54汤圆

发表于 2009-11-6 08:39:38 | 显示全部楼层
用/OE就是你在它恢复低电平有效的时间内得对它进行初使化。。所以最好的方法还是用带复位功能的。

出0入0汤圆

 楼主| 发表于 2009-11-6 12:29:38 | 显示全部楼层
574也不行啊。
咳!小结一下,如果大家用avr+573锁存输出的话(特别是带继电器),要注意573输出一定是低电平有效驱动继电器。否则驱动2003这种管子只能导致上电误动。除非将573的输出用光耦转换成低有效电平,或者驱动PNP的三极管灌电流驱动。上面这个原理图不可取啊。
单片机初始化的速度根本赶不上573上电工作速度。

出0入22汤圆

发表于 2009-11-6 13:01:52 | 显示全部楼层
难得的教训,谢谢楼主分享。

出0入18汤圆

发表于 2009-11-8 10:22:24 | 显示全部楼层
呵呵 我的系统和楼主的几乎一样,只不过我控制的是16个5V继电器,呵呵,我也遇到过类似的问题,解决方法就是20脚和一脚之间加一个10K电阻,就是一个上啦!问题就解决了!

出0入0汤圆

发表于 2009-11-12 16:32:53 | 显示全部楼层
顶!

出0入0汤圆

发表于 2009-12-7 09:44:34 | 显示全部楼层
ding

出0入0汤圆

 楼主| 发表于 2009-12-16 10:56:43 | 显示全部楼层
哈哈,我是楼主。前几天出差,回来后在573输出加了个非门,结果上电是随机的。有时闪,有时不闪。
回论坛看到14楼的帖子,试了试,我靠!神了。OE受单片机控制置高--不好使,但是接个10K电阻,问题解决了!!!
(上哪儿说理去?)

出0入0汤圆

发表于 2010-1-28 16:33:42 | 显示全部楼层
在1脚与20脚之间接一个10K的上拉电阻就可以,

“OE接单片机,OE接上拉电阻接单片机,OE直接接5V,都不成”
有这样的事?!

楼主可以试试五楼的方法再报告一下嘛。

OE=1是输出无效,及三态的高阻态,OE接上拉电阻,不是由单片机置高,单片机上电时IO口也是高阻的,要输出时由单片机置低

出0入0汤圆

发表于 2010-1-28 16:49:51 | 显示全部楼层
我觉得OE在单片机运行之前已经被选中了,所以才会出现误动作的现象,可以接一个10UF解电容到vcc,再接个10k下拉电阻,之后送到OE试试看,这样上电由于电容效应不片选,充满后,片选~ 赶在充满前,io口线输出需要的电平

出0入0汤圆

发表于 2010-4-28 15:08:38 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-7-3 22:26:07 | 显示全部楼层
这个问题我也遇到了,你反一下就可以了,单片机上电后输出脚会有一次高电平的时候,是在开始执行程序前的。
所以在I/O口默认拉高电平,锁存器用低电平开启继电器,控制脚按照常规逻辑控制就可以了。
这样上电的时候输出怎么都是高电平的,就不会有闪烁的问题了,然后低电平输出后开启继电器。

出0入0汤圆

发表于 2013-11-21 11:02:38 | 显示全部楼层
顶一个!

出0入0汤圆

发表于 2014-3-27 14:33:58 | 显示全部楼层
实用资料
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-26 22:31

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表