打印
[51单片机]

请教:一个IO口如何控制切换两个LED灯?

[复制链接]
楼主: 一叶倾城wwq
手机看帖
扫描二维码
随时随地手机跟帖
21
一叶倾城wwq|  楼主 | 2018-9-6 10:15 | 只看该作者 回帖奖励 |倒序浏览
forrest11 发表于 2018-9-5 16:43
P1.2输出0时,LED2不可能亮。你的原理图和实际PCB有区别。

是的,确实是这样,可能是吧,不过好在实现了,我也没时间再去跟实物的电路

使用特权

评论回复
22
一叶倾城wwq|  楼主 | 2018-9-6 10:16 | 只看该作者
wwkkww1983 发表于 2018-9-5 17:18
从电路图上看可以实现两颗灯交替亮灭和扫描全亮的功能,可是全灭的话就不行了,你需要在两颗LED两端并一颗 ...

我明白,让二极管能实现旁路两颗LED的功能是吧

使用特权

评论回复
23
一叶倾城wwq|  楼主 | 2018-9-6 10:19 | 只看该作者
ayb_ice 发表于 2018-9-5 17:18
有可能可靠,
输出推挽低电平,上面亮
输出推挽高电平,下面亮

是的,您说的很有道理,我后来就是重新去看芯片手册的IO口说明,才换成推挽输出来驱动,这样拉灌电流就都有25mA左右了,主要是它这里没有上拉电阻,所以配置为普通IO口输出是不行的,情况就像我上面说的那样

使用特权

评论回复
24
一叶倾城wwq|  楼主 | 2018-9-6 10:20 | 只看该作者

已经实现,请看我上面我的补充说明

使用特权

评论回复
25
一叶倾城wwq|  楼主 | 2018-9-6 10:23 | 只看该作者
coody 发表于 2018-9-5 21:43
这样连接就可以实现,IO有高阻模式,分两个时隙处理,亮度不会有变化:
1、IO设置高阻。
2、如果上面的LED ...

您说的方法看着我倒是想尝试下,可电路已经确定是我上面画出的了,很好的构想,我给出的电路昨晚已实现,是拉电流不够,所以才为1时没有效果,配置为推挽输出就OK了,这个电路没有上拉电阻

使用特权

评论回复
26
一叶倾城wwq|  楼主 | 2018-9-6 10:25 | 只看该作者
dog_xin 发表于 2018-9-6 07:13
一个口控制两只灯,是可以的,为啥不换一种思路,只控制一个灯,用亮,灭,短闪,长闪等去指示? ...

我也想这样,只是电路不是我画的,PCB实物都做好了,我总不可能非要被人改了吧,好在目前已实现,配置IO口为推挽输出就OK了,主要是因为拉电流不够

使用特权

评论回复
27
一叶倾城wwq|  楼主 | 2018-9-6 10:27 | 只看该作者
lantian583 发表于 2018-9-6 08:43
可以利用io口的三态:强推,拉低,高阻来控制,再加上扫描的方式

是的,目前已实现,就是和您说的差不多的方法,我只用推挽输出,因为我这电路每个时刻都要有一个LED亮

使用特权

评论回复
28
ddllxxrr| | 2018-9-6 16:22 | 只看该作者
用一个三八译码器就可

使用特权

评论回复
29
一叶倾城wwq|  楼主 | 2018-9-6 20:33 | 只看该作者
ddllxxrr 发表于 2018-9-6 16:22
用一个三八译码器就可

产品就那么大点,没地儿加啊

使用特权

评论回复
30
jackyhuang1988| | 2018-9-10 14:25 | 只看该作者
没上拉,那你就给它上拉一个电阻就行了。此电阻的分压低于LED的导通电压1.6V就行了。

使用特权

评论回复
31
cyh924417122| | 2018-9-15 15:11 | 只看该作者
coody 发表于 2018-9-5 21:43
这样连接就可以实现,IO有高阻模式,分两个时隙处理,亮度不会有变化:
1、IO设置高阻。
2、如果上面的LED ...

优秀  画图一把好手  哈哈

使用特权

评论回复
32
meisk| | 2018-10-1 19:44 | 只看该作者
把上面LED的A极和x下面LED的K极短接起来看看,是不是神奇的事情发生了?那么大家思考下,什么时候两个灯都不亮了?

使用特权

评论回复
33
meisk| | 2018-10-1 19:46 | 只看该作者
不好意思没看清楚,17楼已经解答了

使用特权

评论回复
34
jazzyfox| | 2018-10-15 11:04 | 只看该作者
17楼高见,这种方法,我也是第一次听说

使用特权

评论回复
35
幽明叶| | 2018-11-24 12:36 | 只看该作者
LZ有没有试过,P1.2高阻态时,led2会闪烁??  st_LINK官方原理图中,双色LED也是这样电路,经测试发现,IO高阻态时,led2会闪烁。。。不明白是为什么

使用特权

评论回复
36
llllll008| | 2018-11-24 13:52 | 只看该作者
就输入一个高低电平就行了

使用特权

评论回复
37
llllll008| | 2018-11-24 13:53 | 只看该作者
llllll008 发表于 2018-11-24 13:52
就输入一个高低电平就行了

写错了,是输出

使用特权

评论回复
38
一叶倾城wwq|  楼主 | 2018-11-24 16:53 | 只看该作者
cyh924417122 发表于 2018-9-15 15:11
优秀  画图一把好手  哈哈

同解

使用特权

评论回复
39
一叶倾城wwq|  楼主 | 2018-11-24 16:59 | 只看该作者
meisk 发表于 2018-10-1 19:46
不好意思没看清楚,17楼已经解答了

正常,大家一起讨论,我上面给出的电路不需要同时出现两个灯熄灭的状态,设计时确定的两个状态切换就行了,而且还有一个同时点亮的状态空闲没用,确实17楼的设计挺好的

使用特权

评论回复
40
一叶倾城wwq|  楼主 | 2018-11-24 17:01 | 只看该作者
幽明叶 发表于 2018-11-24 12:36
LZ有没有试过,P1.2高阻态时,led2会闪烁??  st_LINK官方原理图中,双色LED也是这样电路,经测试发现,IO ...

确定是上面这个电路吗?我在测试程序的过程中并没有出现这种问题,高阻态是两个都亮

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则