找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 7072|回复: 9
打印 上一主题 下一主题
收起左侧

求助51单片机两个按键分别控制两个继电器

[复制链接]
跳转到指定楼层
楼主
ID:141313 发表于 2017-1-5 09:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
求助高手51单片机两个按键分别控制两个继电器的源码程序(C语言)

Drawing1 - 副本.pdf

36.16 KB, 下载次数: 63

控制图纸

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏2 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:7485 发表于 2017-1-5 15:45 | 只看该作者
这个也问?和点亮一个(2个)发光二极管差不多。
回复

使用道具 举报

板凳
ID:141313 发表于 2017-1-5 15:53 | 只看该作者
ahshmj 发表于 2017-1-5 15:45
这个也问?和点亮一个(2个)发光二极管差不多。

刚开始学,请多指教,源码
回复

使用道具 举报

地板
ID:149988 发表于 2017-1-5 17:50 | 只看该作者

RE: 求助51单片机两个按键分别控制两个继电器

3个按键控制2个继电器程序,如果每个继电器都单独控制停止,可再增加一个按键。
#include <reg52.h>
sbit K1=P1^0;  //按键1,控制第1个继电器启动
sbit K2=P1^1;  //按键2,控制第2个继电器启动
sbit K3=P1^2;  //按键3,控制2个继电器停止
sbit J1=P1^6;  //第1个继电器
sbit J2=P1^7;  //第2个继电器
void Delay_1ms(unsigned int t)
{
  unsigned char x, y;
  for(x=0; x<t; x++)
    for(y=0; y<122; y++);
}
void main()  //主程序
{
  while(1)   //大循环
  {
    if(K1==0)  //检测第1个按键是否按下
    {
      Delay_1ms(50);  //延时
      if(K1==0)
      while(!K1)  //检测第1个按键是否松开
      J1=0;  //第1个继电器启动
    }
    if(K2==0)  //检测第2个按键是否按下
    {
      Delay_1ms(50);  //延时
      if(K2==0)
      while(!K2)  //检测第2个按键是否松开
      J2=0;  //第2个继电器启动
    }
    if(K3==0)  //检测第3个按键是否按下
    {
      Delay_1ms(50);  //延时
      if(K3==0)
      while(!K3)  //检测第3个按键是否松开
      J1=1;  //第1个继电器停止
      J2=1;  //第2个继电器停止
    }
  }
}

评分

参与人数 1黑币 +80 收起 理由
admin + 80 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

5#
ID:141313 发表于 2017-1-5 19:35 | 只看该作者
不倒翁.WZT 发表于 2017-1-5 17:50
3个按键控制2个继电器程序,如果每个继电器都单独控制停止,可再增加一个按键。
#include
sbit K1=P1^0; ...

只能2个按键,而且是按键控制继电器,通过2个继电器驱动同一个电机,电机只能顺时针转(按一个按键 电机转180度开关合闸,再按另一个按键 电机再转180度,开关分闸。
回复

使用道具 举报

6#
ID:160266 发表于 2017-1-5 19:45 | 只看该作者
我也在找
回复

使用道具 举报

7#
ID:58628 发表于 2017-1-5 21:44 来自手机 | 只看该作者
这个应该是按a键A继电器动作并保持,按b键B继电器动作并保持吧,至于电机转动是由继电器控制后部电路完成的?

评分

参与人数 1黑币 +30 收起 理由
admin + 30 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

8#
ID:149988 发表于 2017-1-6 08:21 | 只看该作者

RE: 求助51单片机两个按键分别控制两个继电器

liujiageda 发表于 2017-1-5 19:35
只能2个按键,而且是按键控制继电器,通过2个继电器驱动同一个电机,电机只能顺时针转(按一个按键 电机转 ...

要解决这个问题首先要解决电机问题,什么样的电机能通过一只继电器控制达到精确转动180度,停止,再通过另一只继电器控制转动180度,达到360度,再停止呢?你只要告诉我这种电机的工作原理,我才能写出程序来。
回复

使用道具 举报

9#
ID:149988 发表于 2017-1-6 08:22 | 只看该作者

RE: 求助51单片机两个按键分别控制两个继电器

liujiageda 发表于 2017-1-5 19:35
只能2个按键,而且是按键控制继电器,通过2个继电器驱动同一个电机,电机只能顺时针转(按一个按键 电机转 ...

要解决这个问题首先要解决电机问题,什么样的电机能通过一只继电器控制达到精确转动180度,停止,再通过另一只继电器控制转动180度,达到360度,再停止呢?你只要告诉我这种电机的工作原理,我才能写出程序来。
回复

使用道具 举报

10#
ID:149988 发表于 2017-1-6 08:33 | 只看该作者

RE: 求助51单片机两个按键分别控制两个继电器

liujiageda 发表于 2017-1-5 19:35
只能2个按键,而且是按键控制继电器,通过2个继电器驱动同一个电机,电机只能顺时针转(按一个按键 电机转 ...

要解决这个问题首先要解决电机问题,什么样的电机能用一只继电器控制旋转180度停止,再用另一只继电器控制旋转到360度呢?所以,知道这种电机的工作原理是写程序的前提。否则继电器执行什么样的逻辑呢?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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