51单片机(STC89C52RC)小综合实验(续)
扫描二维码
随时随地手机看文章
上篇文章已经把碰到的问题说了一下,后来去测试的时候发现又碰到问题了,主要的现象就是中断次数不确定,有时候很多次,有时候一次也没有,俗话说就是"中断振荡",首先想到的就是可能类似按钮一样出现的抖动,尝试添加20ms的延时函数失败.进入的次数还不很不确定.google大神告诉我说,尝试在lm393电压比较器输出端加上一个74hc14,这是一个反相器,内置有施密特触发器.对整形很在行.
一想没有这个IC啊,可是我有555定时器,据说也是可以搭建一个电路实现施密特触发器的.但是我没有心急做,仔细分析原因可能有一下几个:
电源电压的波动,因为是从变压器整流出来的,波动在所难免.可能是滤波电容不够大.
电源共用问题.
换用一个很精准的稳压电源供电,问题依旧,排除电源共用问题.在考虑滤波电容的时候,发现自己没有示波器,观察不了波形唉,使用软件仿真,发现哪怕电容在大,出来的波纹依旧还还是有的,并不能够直接滤波成直线,注意我这里没有加稳压二极管,因为我需要的就是互感器感应出来的电压变化,加了稳压就没有意义了.以施密特触发器做为切入点,无意当中发现lm393的应用里面有描述到存在的问题,因为我的是基本单限比较器,输入信号Uin,即待比较电压,它加到同相输入端,在反相输入端接一个参考电压(门限电平)Ur。当输入电压Uin>Ur时,输出为高电平U,反之就是低电平,但是他的缺点就是如果输入信号Uin在门限值附近有微小的干扰,则输出电压就会产生相应的抖动(起伏)。于是就不断的触发我的中断,这个就是问题的症结所在了,介绍说在电路中引入正反馈可以克服这一缺点。于是就发现了解决办法--迟滞比较器或者是双电压比较器.
网上的电路,有些可能是错误的图~,搞了半天.最后还是发现了motorola的lm393N的Datasheet 有介绍到带迟滞的电压比较器-comparator with hysteresis.详情请看motorola datasheet,里面提供了计算公式,VO(low)指示的是输出的低电压,软件仿真后确认得到了效果,仔细一看逻辑却不对了,我设置的是下降沿触发,于是立刻想到反相器,不行啊,买东西不方便啊.仔细考虑接一级逻辑反了,那要是在接一级反反不就得正(负负得正的经验),尝试后得出可以,而且后一级可以不接入正反馈了,估计反相器也是同理吧.刚好我LM393我还有一个是空着的,利用上了.
测试发现,采用带迟滞比较器后, 效果明显,而且波动范围可以设定.大大提高了可用性.
ps:这里有一个在线的计算工具
http://www.ec66.com/tools/chizhibijiaoqi.asp
注意有误差.