标题: 那位大侠可帮我做一个51单片机光电开关控制3组继电器的C程序呢? [打印本页]

作者: lwt7456    时间: 2015-12-3 23:41
标题: 那位大侠可帮我做一个51单片机光电开关控制3组继电器的C程序呢?
当光电开关感应到的时候,3组继电器同时闭合,且每一组的继电器闭合的延时时间不一样。

                                                                                                                                 谢谢!

作者: 腾飞的龙    时间: 2015-12-4 12:48
很简单的,扫描IO口,低电平就控制pnp三极管驱动继电器。
作者: 腾飞的龙    时间: 2015-12-4 12:49
我的QQ1074757990.
作者: lwt7456    时间: 2015-12-4 20:49
腾飞的龙 发表于 2015-12-4 12:48
很简单的,扫描IO口,低电平就控制pnp三极管驱动继电器。

谢谢 !3组继电器同时闭合,然后闭合的延时不一样。
作者: a15616    时间: 2015-12-19 13:23
标题: 试着完成你的任务
本帖最后由 a15616 于 2015-12-19 13:34 编辑

#include <reg51.h>sbit K1=P0^0;                //继电器1
sbit K2=P0^1;                //继电器2
sbit K3=P0^2;                //继电器3
sbit ON=P1^4;                //控制回路电源开关
sbit  gd1=P3^2;                //光电感应开关
unsigned int n;                //定义一个无符号变量
char bt;                //定义一个标志

void in()                //初始化函数
{
IE=0x82;                 //总中断开,定时0中断开
TMOD=0x02;                 //定时器0方式2
TH0=0x06;TL0=0x06;        //装定时初值
K1=1;
K2=1;
K3=1;
n=0;
ON=0;                    //打开断电器回路供电
bt=1;
}
void main()
{
in();
         while(1)
         {
                while(!gd1)
                 {
                 K1=0;
                 K2=0;
                 K3=0;
                 TR0=0;
                 n=0;
                 bt=1;
                }
         if(bt)
         {
         TR0=1;
                 if(n==20000)
                        K1=1;
                 if(n==40000)
                         K2=1;
                 if(n==60000)
                {
                K3=1;
                 TR0=0;
                bt=0;
                }
        }
        }
}
void inttime() interrupt 1
  {
n++;
}




作者: lwt7456    时间: 2015-12-23 21:51
a15616 发表于 2015-12-19 13:23
#include sbit K1=P0^0;                //继电器1
sbit K2=P0^1;                //继电器2
sbit K3=P ...

非常感谢!我下载试过了。可以的。还想请教 您一个问题,如果要增加加、减按键来调节每个继电器的延时时间间,不知道可以吗?
作者: wc86110    时间: 2015-12-23 23:13
会的不难,难的不会,好可惜没能帮到你,帮你顶一下,求大虾赐教。
作者: 海阔天空2015    时间: 2016-1-3 11:13
自己编写可能更有收获

作者: 172056566    时间: 2016-1-4 19:23
自己写啊
作者: 172056566    时间: 2016-1-4 19:46
加油!!!




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1