OpenEdv-开源电子网

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

扫描3个IO口实现6个LED控制

[复制链接]

6

主题

188

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
432
金钱
432
注册时间
2016-1-19
在线时间
38 小时
发表于 2016-1-30 09:49:47 | 显示全部楼层 |阅读模式
主要利用IO口的高、低、高阻转换实现。
如:点亮LED1,P10、P11设为推挽输出,P10=1; P11=0;,P12设为高阻输入
LED.png
原来你也在这里
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

6

主题

188

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
432
金钱
432
注册时间
2016-1-19
在线时间
38 小时
 楼主| 发表于 2016-1-31 09:56:58 | 显示全部楼层
自顶,IO口复用方面有建议的一起交流下
回复 支持 反对

使用道具 举报

36

主题

249

帖子

0

精华

高级会员

Rank: 4

积分
680
金钱
680
注册时间
2015-12-13
在线时间
243 小时
发表于 2016-1-31 12:55:28 | 显示全部楼层
之前我在其他论坛看到一个更NB,一组IO口驱动数码管的同时,还做按键扫描!具体怎么连线的,一下子想不起来了。好像是电源网里面的帖子。
回复 支持 反对

使用道具 举报

6

主题

188

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
432
金钱
432
注册时间
2016-1-19
在线时间
38 小时
 楼主| 发表于 2016-1-31 13:25:23 | 显示全部楼层
HER107 发表于 2016-1-31 12:55
之前我在其他论坛看到一个更NB,一组IO口驱动数码管的同时,还做按键扫描!具体怎么连线的,一下子想不起来 ...

LED、按键复用的已经很经典了,利用的是IO口的输入输出切换。一般能点几个灯,就能扫描几个按键。我这里重点是单输出态,如何实现少IO口控制多输出。
原来你也在这里
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165378
金钱
165378
注册时间
2010-12-1
在线时间
2111 小时
发表于 2016-1-31 14:51:09 | 显示全部楼层
感觉你这个实现不了。
回复 支持 反对

使用道具 举报

6

主题

188

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
432
金钱
432
注册时间
2016-1-19
在线时间
38 小时
 楼主| 发表于 2016-1-31 15:03:04 | 显示全部楼层
正点原子 发表于 2016-1-31 14:51
感觉你这个实现不了。

原子哥现身了,谈谈你的见解吧?
原来你也在这里
回复 支持 反对

使用道具 举报

4

主题

49

帖子

0

精华

初级会员

Rank: 2

积分
193
金钱
193
注册时间
2016-1-14
在线时间
42 小时
发表于 2016-2-2 11:00:42 | 显示全部楼层
你这个用输出的高低电平,加上上拉输入,可以实现简单的为数不多的led控制,这个方法早就被那些老外给推翻了,那么老外评价这种控制是最不好的方法,等我找一下,跟你把那个网址发给你,你也可以研究研究
回复 支持 反对

使用道具 举报

0

主题

73

帖子

0

精华

初级会员

Rank: 2

积分
91
金钱
91
注册时间
2016-2-5
在线时间
13 小时
发表于 2016-2-7 15:51:18 | 显示全部楼层
很好啊.谢谢楼主啊
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165378
金钱
165378
注册时间
2010-12-1
在线时间
2111 小时
发表于 2016-2-7 18:00:14 | 显示全部楼层
P1.0输出1=3.3V,P1.2输出GND=0V,那么LED1和LED4,LED3都会亮,无法实现单个控制
回复 支持 反对

使用道具 举报

2

主题

35

帖子

0

精华

初级会员

Rank: 2

积分
110
金钱
110
注册时间
2015-10-24
在线时间
15 小时
发表于 2016-2-13 22:10:06 | 显示全部楼层
正点原子 发表于 2016-2-7 18:00
P1.0输出1=3.3V,P1.2输出GND=0V,那么LED1和LED4,LED3都会亮,无法实现单个控制

它的意思估计两个IO口驱动不了串联的两个LED,否则这个电路肯定不成立的嘛。。
你艹我,我艹你,都一样。
回复 支持 反对

使用道具 举报

6

主题

188

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
432
金钱
432
注册时间
2016-1-19
在线时间
38 小时
 楼主| 发表于 2016-2-15 08:28:12 | 显示全部楼层
ywlzh 发表于 2016-2-2 11:00
你这个用输出的高低电平,加上上拉输入,可以实现简单的为数不多的led控制,这个方法早就被那些老外给推翻 ...

嗯,看看外牛的见解,多谢分享!
原来你也在这里
回复 支持 反对

使用道具 举报

6

主题

188

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
432
金钱
432
注册时间
2016-1-19
在线时间
38 小时
 楼主| 发表于 2016-2-15 08:42:06 | 显示全部楼层
正点原子 发表于 2016-2-7 18:00
P1.0输出1=3.3V,P1.2输出GND=0V,那么LED1和LED4,LED3都会亮,无法实现单个控制

这里原子哥提出了一个bug,我补充下。
我们一般常用的led正向压降在1.8V以上,如果2个led串联则需至少3.6V。我们3.3V的系统可能针对某些底压降的LED是会点亮的。所以这里的bug是限流电阻。这也是我一个习惯动作之一,这里多谢原子哥提点。
现在我们在加了限流电阻的前提下讨论。我们按LED电流5ma记,电阻上分压1.8V,这样我们串一个360R的电阻,这样就可以防止串联的LED点亮了。
原来你也在这里
回复 支持 反对

使用道具 举报

6

主题

188

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
432
金钱
432
注册时间
2016-1-19
在线时间
38 小时
 楼主| 发表于 2016-2-15 08:43:26 | 显示全部楼层
zhoucl123 发表于 2016-2-13 22:10
它的意思估计两个IO口驱动不了串联的两个LED,否则这个电路肯定不成立的嘛。。

嗯,led点亮有2个条件:满足正向电压,工作电流。
原来你也在这里
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
7
金钱
7
注册时间
2016-11-15
在线时间
0 小时
发表于 2016-11-15 16:16:50 | 显示全部楼层
回复 支持 反对

使用道具 举报

28

主题

218

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
498
金钱
498
注册时间
2013-11-19
在线时间
92 小时
发表于 2016-11-15 22:31:35 | 显示全部楼层
估计无法点亮LED,IO口的驱动能力是多少?LED需要的电流是多少?有考虑这些吗?
回复 支持 反对

使用道具 举报

0

主题

17

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
247
金钱
247
注册时间
2016-10-17
在线时间
24 小时
发表于 2016-11-24 11:56:54 | 显示全部楼层
事实胜于雄辩,仿真和测试下,希望真理能够出现
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-3-14 01:49

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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