找回密码
 立即注册

QQ登录

只需一步,快速开始

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

51单片机驱动继电器的几个试验

[复制链接]
跳转到指定楼层
楼主
ID:7992 发表于 2015-11-1 12:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近想用51单片机和继电器来控制交流电,分别用PNP三极管,NPN三极管和ULN2003,由于单片机自身输入输出口的电流问题,如果继电器少,觉得还是PNP驱动较好,如果继电器多,就用ULN2003是最好。


11.jpg (2.94 MB, 下载次数: 131)

11.jpg

3.jpg (2.59 MB, 下载次数: 110)

3.jpg

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的积分奖励!

查看全部评分

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

使用道具 举报

沙发
ID:1 发表于 2015-11-1 12:49 | 只看该作者
做得很漂亮 楼主能分享一下 源代码和电路图吗
回复

使用道具 举报

板凳
ID:7992 发表于 2015-11-1 12:55 | 只看该作者
可以,我找找看,找到就传上去,不过我编程是初级水平,参考的别人的程序
回复

使用道具 举报

地板
ID:7992 发表于 2015-11-1 14:04 | 只看该作者
压缩包里有程序和PROTEUS的原理图,还在完善中
#include <REG2051.H>
#include <intrins.H>
#define uchar unsigned char
#define uint unsigned int
sbit j1=P1^7 ;//3个继电器
sbit j2=P1^6 ;
sbit j3=P1^5 ;

void delay( uint ms) // 延时子程序
{   
   uint a,b;
  for(a=ms;a>0;a--)
  for(b=123;b>0;b--);
}

  void main(void)
  {         
     P1=0x0f;
         delay(1000);
    while(1)
   { j1=1;j2=0;j3=0;//3个继电器轮流吸合
         delay(60000);         //延时一分钟
    j1=0;j2=1;j3=0;
         delay(60000);
   j1=0;j2=0;j3=1;
         delay(60000);
             }  }

jdq.rar

45.07 KB, 下载次数: 39, 下载积分: 黑币 -5

回复

使用道具 举报

5#
ID:94340 发表于 2015-11-1 19:20 | 只看该作者
很神奇的样子
回复

使用道具 举报

6#
ID:94340 发表于 2015-11-1 19:32 | 只看该作者
很不错啊
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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