矿石收音机论坛

 找回密码
 加入会员

QQ登录

只需一步,快速开始

搜索
查看: 6118|回复: 15

2051修复时序电源,满血复活

[复制链接]
     
发表于 2014-4-18 11:15:38 | 显示全部楼层 |阅读模式
老早的买了个坏的时序电源
一直在吃灰,没时间修。
这天心血来潮,打开看看,全部是门电路搭的一个顺序控制电源
板子已经被修过,很多地方补过
现在的情况是直通开关打开能全部输出,不能时序控制
因此说明后面的继电器及其驱动回路是好的
只是时序控制这块有问题,犯懒了,不想查电路
简单查了下电源,两个变压器,一个是直通时的电源,一个是时序时的电源
于是想用单片机做个时序控制应该不错,而且电路简单
直通就不用了,于是拆掉直通的变压器,正好放单片机的板子
解除+5V给门电路IC的供电,保持12V给继电器和驱动的电源,+5V正好给单片机用
详细查了下驱动,如下:

IMG_20140418_093502_调整大小.jpg


控制部分采用2051,输出本来想直接驱动继电器,但是由于2051P1口输出上拉不给力
见帖子:http://bbs.mydigit.cn/read.php?tid=834875

改用光耦输出,正好隔离继电器,省的干扰单片机
基本想法:

IMG_20140418_093518_调整大小.jpg


用proteus搭了个电路试了下,keil写了个简单的控制程序,效果还行
单片机真的很多年不动了,发现很多知识都忘了,翻了好几天的书呀!

无标题_调整大小.jpg


代码:

#include <reg52.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
uchar code out[]={0xFF,0xFE,0xFC,0xF8,0xF0,0xE0,0xC0,0x80,0x00};
uchar i;

void DelayMS(uint x)
{
     uchar i=0;
    while(x--)
    {
         for(i=100;i>0;i--);
    }
}

void main()
{
     P1 = 0xFF;
    P3 = 0x00;
    i=0;
    while(1)
    {
      if(P3^7==1)
            {                  
               i++;
               P1 =out;            
              if (i>8) i=8;              
              DelayMS(1000);         

              }

     else    if(P1!=0xFF)
            {            
                 P1 =out;
                i--;
                if (i<0) i=0;                                   
                  DelayMS(1000);   

             }   
     }
}

实验中的图片:

IMG_20140411_143025_调整大小.jpg
IMG_20140411_144633_调整大小.jpg
IMG_20140411_144639_调整大小.jpg
IMG_20140411_144648_调整大小.jpg


完成后:

IMG_20140414_104110_调整大小.jpg


视频:


评分

2

查看全部评分

发表于 2014-4-18 22:27:45 | 显示全部楼层
好手段,楼主也是游戏中人!
回复 支持 反对

使用道具 举报

     
发表于 2014-4-18 22:44:25 | 显示全部楼层
啥叫时序电源电源呀
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2014-4-18 22:48:04 | 显示全部楼层
吃烟~没火 发表于 2014-4-18 22:44
啥叫时序电源电源呀

电源时序器能够按照由前级设备到后级设备逐个顺序启动电源,关闭供电电源时则由后级到前级的顺序关闭各类用电设备,这样就能有效的统一管理和控制各类用电设备,避免了人为的失误操作,同时又可减低用电设备在开关瞬间对供电电网的冲击,也避免了感生电流对设备的冲击,确保了整个用电系统的稳定。
回复 支持 反对

使用道具 举报

     
发表于 2014-4-18 22:58:49 | 显示全部楼层
落花萧然 发表于 2014-4-18 22:48
电源时序器能够按照由前级设备到后级设备逐个顺序启动电源,关闭供电电源时则由后级到前级的顺序关闭各类 ...

长见识了,多谢解说
回复 支持 反对

使用道具 举报

     
发表于 2014-4-18 23:18:50 | 显示全部楼层
从小爱听收音机 发表于 2014-4-18 22:27
好手段,楼主也是游戏中人!

为撒这样讲?
回复 支持 反对

使用道具 举报

     
发表于 2014-4-18 23:19:44 | 显示全部楼层
希望电路图画的更漂亮些就完美啦!
回复 支持 反对

使用道具 举报

     
发表于 2014-4-19 13:55:09 | 显示全部楼层
这才是单片机的正职
回复 支持 反对

使用道具 举报

     
发表于 2014-4-19 15:42:35 | 显示全部楼层
这玩意 我们反正用不上
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2014-4-20 14:30:22 | 显示全部楼层
xiaomu 发表于 2014-4-18 23:19
希望电路图画的更漂亮些就完美啦!

就一个简单的图,随手画的,懒了,没整理
回复 支持 反对

使用道具 举报

     
发表于 2014-5-18 11:27:20 | 显示全部楼层
楼主水平不低啊 祝贺
回复 支持 反对

使用道具 举报

     
发表于 2014-5-18 11:27:36 | 显示全部楼层
楼主水平不低啊 祝贺
回复 支持 反对

使用道具 举报

发表于 2014-5-18 18:49:23 来自手机 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

     
发表于 2014-5-18 19:14:19 | 显示全部楼层
本帖最后由 ntwhq 于 2014-5-18 19:19 编辑

很灵活的运用,程序中的“P1 =out;” 应该为"P1 =out  [ i ] ; " .
回复 支持 反对

使用道具 举报

     
发表于 2014-5-18 19:16:32 | 显示全部楼层
好样的,绝对的活学活用单片机!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入会员

本版积分规则

小黑屋|手机版|矿石收音机 ( 蒙ICP备05000029号-1 )

蒙公网安备 15040402000005号

GMT+8, 2025-4-30 12:02

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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