- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
AT89C2051做的保护电路
现在的AT89C2051单片机极其便宜,淘宝上不到2元钱,里面带一个比较器,因此利用它来做保护电路性价比不错 保护电路实现如下功能 1.直流检测 ??保护电路要检测正负窗口电压,但现在是在单电源下,如果要另外加DC检测,就失去了电路的简洁性,所以设计了如下单电源下的DC检测电路,只需一只单电源的比较器即可
单电源?正负窗口电压比较器?(原文件名:1.png)?
AT89C2051里面的比较器也是单电源的比较器,其输入电压可以等于地电平,因此用在这里很合适。 ??当输入电压为0时,两个二极管都不通,比较器负输入端电压为820K/39K分压,大概为0.22V,正输入端为0,因此比较器出0 ??正电平检测闸值为二极管导通电压+0.22V,仿真大约是0.75V ??而负电平检测时,此时D1不通,比较器+输入端电压约为0,但-输入端为+0.22V,此时只要输入端电压小于一定程度,D2会导通,会将-输入端的电压拉低,直到为负的电压,此时比较器反转。仿真大约是-0.55V触发。 2.交流断电检测 这里交流检测是检测交流过零脉冲,检测电路由光耦组成,交流电是50Hz,因此光耦每20mS会导通,产生一个中断脉冲,MCU用这个脉冲复位定时器。 一旦在50mS内检测不到交流的脉冲,程序就认为是掉电了,就将继电器断开。 3.延时 任何故障排除后,都延时9秒左右时间才将继电器吸合。 4.外接扩充信号控制 用于扩展其功能,例如过流保护等等。。。 5.报警显示 在故障状态(交流断电、DC保护、外接信号有效)时,故障灯闪烁 在排除了故障后,正常灯会闪烁一段时间,然后才将继电器吸合,并正常灯常亮。 电路图如下:
原理图?(原文件名:2.gif)?
源码如下, #include?AT89X51.h #define?FLASHTIME????????????????6000????????????????//闪烁计时 #define?DELAYTIME????????????????100000L??????????//延时时间 #define?H_50mS????????????????22??????????????????//看门狗定时时间,时钟14.318M,大约延时50mS,即超过2个50HZ交流周期。 #define?L_50mS????????????????0???????????????????????????????? //(65535-22*256)*12/14.318MHz=50.2ms???? #define?OK_STATE????????????????0?????????????????????//正常状态 #define?DELAY_STATE????????????????1???????????????????//正常,但在延时状态 #define?FAULT_STATE????????????????2?????????????//故障状态 #define?RELAY????????????????P1_5???????????????//驱动继电器,0--》继电器吸合??????????? #define?RLED????????????????P1_6???????????????//故障灯???0-》亮 #define?GLED????????????????P1_7????????????????//正常灯??0--》亮 #define?ProtectLine????????????????P3_5??????//外接其他信号 #define?AC_LINE????????????????P3_2????????//交流信号检测,接在int0端子 #define?DCProtect????????????????P3_6?????//AT2051内部比较器接在P3.6口的。 unsigned?char?state;???????????? long?DelayCount;???????????????????????????//延时计数器 unsigned?int?FlashCount;???????????//闪烁计数器 bit?AC_OK;????????????????????????????????//交流电正常标志 //市电交流过零时触发int0,中断程序重新初始化定时器0, //因为定时器0是50ms才中断,但50Hz交流电周期是20mS,如果市电正常的话,那么定时器0永远不会产生计数溢出。 void?Int0_int(void)?interrupt?0 { ??EA=0; ??AC
原创力文档


文档评论(0)