OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 6627|回复: 17

IO 口通过三极管驱动继电器

[复制链接]

17

主题

466

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2164
金钱
2164
注册时间
2013-1-11
在线时间
510 小时
发表于 2014-11-23 16:41:33 | 显示全部楼层 |阅读模式
5金钱

 
有热心的朋友,帮忙看看,Io口要如何设置才能控制继电器啊?
我设置PD2为推挽输出,不能够控制啊!
 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;     //-->D.2 端口配置
 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //推挽输出
 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; 
 GPIO_Init(GPIOD, &GPIO_InitStructure);
 GPIO_SetBits(GPIOD,GPIO_Pin_2|); //PD.2 输出高

无论怎么改,都是直接 继电器 为 ON,无法关掉了。
拆掉电阻R1 ,测试IO口的电平是 可以 从 3.3V 变为0V的
所以理论上 0V时导通,3.3V时 继电器断开,可以不行啊!!
RELAY.JPG

最佳答案

查看完整内容[请看2#楼]

电路设计有问题吧,stm32的IO最大输出3.3V,三极管集电极要是5V的话,那不是一直导通了吗,加一个光耦隔离一下
知识是你最好的财富
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

21

主题

123

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
355
金钱
355
注册时间
2012-3-11
在线时间
49 小时
发表于 2014-11-23 16:41:34 | 显示全部楼层
电路设计有问题吧,stm32的IO最大输出3.3V,三极管集电极要是5V的话,那不是一直导通了吗,加一个光耦隔离一下
这辈子只会两件事:这也不会,那也不会!
回复

使用道具 举报

17

主题

293

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
388
金钱
388
注册时间
2012-12-26
在线时间
1 小时
发表于 2014-11-23 16:57:05 | 显示全部楼层
先把发光二极管去了,试试,怎么不用NPN的管?
回复

使用道具 举报

17

主题

466

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2164
金钱
2164
注册时间
2013-1-11
在线时间
510 小时
 楼主| 发表于 2014-11-23 17:06:16 | 显示全部楼层
还是不行!STM32的IO  怎么控制呢!有没有人有这方面的经验!
知识是你最好的财富
回复

使用道具 举报

17

主题

466

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2164
金钱
2164
注册时间
2013-1-11
在线时间
510 小时
 楼主| 发表于 2014-11-23 17:07:18 | 显示全部楼层
回复【2楼】kassandra:
---------------------------------
还是不行!你以前试过这种驱动方法吗?
知识是你最好的财富
回复

使用道具 举报

17

主题

293

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
388
金钱
388
注册时间
2012-12-26
在线时间
1 小时
发表于 2014-11-23 17:09:10 | 显示全部楼层
回复【4楼】默默莱:
--------------------------------
你先要看你的继电器的推动功率需要多大电流的,根据继电器来选驱动电路,我以前都是用的专门的驱动芯片,或者搭达林顿结构的驱动,提高驱动力
回复

使用道具 举报

17

主题

466

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2164
金钱
2164
注册时间
2013-1-11
在线时间
510 小时
 楼主| 发表于 2014-11-23 17:12:15 | 显示全部楼层
回复【5楼】kassandra:
---------------------------------
达林顿结构的驱动是没有问题的,第一次用三极管来驱动!也许我用8050 ,共VCC 就可以了,可是这次没有那样做, 居然不行啊!有得救吗?
知识是你最好的财富
回复

使用道具 举报

17

主题

293

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
388
金钱
388
注册时间
2012-12-26
在线时间
1 小时
发表于 2014-11-23 17:16:31 | 显示全部楼层
回复【6楼】默默莱:
---------------------------------
你先研究下是什么原因,驱动不了
回复

使用道具 举报

17

主题

293

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
388
金钱
388
注册时间
2012-12-26
在线时间
1 小时
发表于 2014-11-23 17:21:11 | 显示全部楼层
回复【8楼】hkys_lxh:
---------------------------------
有道理
回复

使用道具 举报

17

主题

466

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2164
金钱
2164
注册时间
2013-1-11
在线时间
510 小时
 楼主| 发表于 2014-11-23 17:34:16 | 显示全部楼层

这种方法是可以的!我画的那种方法从程序上还有得救吗?
知识是你最好的财富
回复

使用道具 举报

17

主题

293

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
388
金钱
388
注册时间
2012-12-26
在线时间
1 小时
发表于 2014-11-23 17:35:36 | 显示全部楼层
回复【10楼】默默莱:
---------------------------------
板子都制好了?
回复

使用道具 举报

17

主题

466

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2164
金钱
2164
注册时间
2013-1-11
在线时间
510 小时
 楼主| 发表于 2014-11-23 17:51:01 | 显示全部楼层
回复【11楼】kassandra:
---------------------------------
是的啊!头疼,我知道改硬件是可以的! 因为这个电路对51来说是很简单!完全没有问题!理论上3.2V已经是高电平了,完全能够控制继电器的亮灭了,可是却不可以! 

 我往前再加个 2K 电阻,一个8050 控制,就可以控制了!郁闷!板子上多焊接电阻多难看!还要飞线!
知识是你最好的财富
回复

使用道具 举报

17

主题

466

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2164
金钱
2164
注册时间
2013-1-11
在线时间
510 小时
 楼主| 发表于 2014-11-23 17:51:34 | 显示全部楼层
原子哥!你好,请帮帮忙,分析下!软件能够弥补吗?
知识是你最好的财富
回复

使用道具 举报

8

主题

193

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
303
金钱
303
注册时间
2012-12-19
在线时间
16 小时
发表于 2014-11-23 19:06:55 | 显示全部楼层
R1上串联两个二极管应该就可以了,或者来个稳压管。
回复

使用道具 举报

0

主题

43

帖子

0

精华

初级会员

Rank: 2

积分
163
金钱
163
注册时间
2014-11-13
在线时间
28 小时
发表于 2014-11-23 19:49:57 | 显示全部楼层
设为开漏输出吧,可靠一点应再加一电阻上拉至+5V,当然该IO要能承受+5V输入的。
回复

使用道具 举报

21

主题

123

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
355
金钱
355
注册时间
2012-3-11
在线时间
49 小时
发表于 2014-11-23 22:19:19 | 显示全部楼层
回复【13楼】默默莱:
---------------------------------
14楼 说的没错,选一个5V兼容的IO口,设置为开楼输出,通过一个上拉电阻输出5V使得不通
这辈子只会两件事:这也不会,那也不会!
回复

使用道具 举报

17

主题

466

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2164
金钱
2164
注册时间
2013-1-11
在线时间
510 小时
 楼主| 发表于 2014-11-23 22:39:30 | 显示全部楼层
回复【16楼】hkys_lxh:
--------------------------
谢谢!我试试吧!以前我都是用IC驱动继电器,这次为了图个方便!成这样了!
知识是你最好的财富
回复

使用道具 举报

21

主题

123

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
355
金钱
355
注册时间
2012-3-11
在线时间
49 小时
发表于 2014-11-24 08:25:23 | 显示全部楼层
注意电平转换,不能生搬硬套。全是5V电平没问题,3V3驱动的话,IO口至少高电平输出4.3V以上(硅型三极管,按照你设计的电路),stm32最高输出3.3V,通过开漏可以输出5V
这辈子只会两件事:这也不会,那也不会!
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-29 00:23

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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