打印
[PIC®/AVR®/dsPIC®产品]

两种熄灭LED的方法, 各有哪些优缺点?

[复制链接]
1433|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 奔波儿熊 于 2019-9-23 11:47 编辑

下图是ATmega4809 curiosity nano上LED的连接电路(连接到了PF5引脚).
点亮这个LED只有一种方法,那就是方向设为输出, 输出电平设为低.
但是熄灭这个LED却有两种方法,一种是方向设为输入,此时输出电平应该无所谓高低; 第二种是方向设为输出,输出电平设为高.
请问这两种熄灭LED的方法哪个好? 讨论可以不局限于AVR 单片机,主要是从电路方面讨论.

使用特权

评论回复
沙发
wenyong200| | 2019-9-20 17:29 | 只看该作者
我觉得2个方法都没毛病~

使用特权

评论回复
板凳
NickyGrout| | 2019-9-20 20:13 | 只看该作者
这个端口只是控制LED吧。既然点亮时是需要设置成输出的,那熄灭时直接控制就行。 没必要专用设置端口为输入来熄灭LED吧。难道是为了多几句代码?程序更复杂一些?这个很可能把自己也埋坑里的……

使用特权

评论回复
地板
淘猫汤姆| | 2019-9-20 20:26 | 只看该作者
输入状态有可能暗亮,不靠谱

使用特权

评论回复
5
meeagle| | 2019-9-20 23:59 | 只看该作者
既然接了1K的电阻,还不如直接端口驱动,接内部上拉

使用特权

评论回复
6
wooda| | 2019-9-22 20:15 | 只看该作者
要看芯片io口驱动电路的设计了,
感觉应该是设为输出高比较好.最好的是OD输出.
输入输出切换感觉更容易不稳定....虽然其实也挺稳定的

使用特权

评论回复
7
huahuagg| | 2019-9-22 23:45 | 只看该作者
最好输出0

使用特权

评论回复
8
huahuagg| | 2019-9-22 23:45 | 只看该作者
保持统一是关键。不然你要来回修改一个端口的功能。

使用特权

评论回复
9
CoolSilicon| | 2019-9-23 09:18 | 只看该作者
输出高低来控制的比较多...

使用特权

评论回复
10
奔波儿熊|  楼主 | 2019-9-23 11:48 | 只看该作者
meeagle 发表于 2019-9-20 23:59
既然接了1K的电阻,还不如直接端口驱动,接内部上拉

外面的1k电阻接电压了啊, 内部再上拉是什么意思?

使用特权

评论回复
11
奔波儿熊|  楼主 | 2019-9-23 11:48 | 只看该作者
wooda 发表于 2019-9-22 20:15
要看芯片io口驱动电路的设计了,
感觉应该是设为输出高比较好.最好的是OD输出.
输入输出切换感觉更容易不稳 ...

为什么最好OD输出?

使用特权

评论回复
12
externally| | 2019-9-23 14:49 | 只看该作者
最好不要切换到输入  个人经验

使用特权

评论回复
13
simonliu009| | 2019-9-23 15:14 | 只看该作者
切换状态当然比切换功能更合理,状态机也好处理。不要给自己挖坑。

使用特权

评论回复
14
meeagle| | 2019-9-28 13:39 | 只看该作者
奔波儿熊 发表于 2019-9-23 11:48
外面的1k电阻接电压了啊, 内部再上拉是什么意思?

可以降低电压波动

使用特权

评论回复
15
wooda| | 2019-11-12 17:48 | 只看该作者
电流不会凭空出现,也不会凭空消失,
除了需要功能的实现外,要考虑这些电流从哪里来,到哪里去
来和去的过程是不是会产生额外的问题...
就好比舞台表演,要考虑这么多演员怎么上去,然后怎么下来, 闹哄哄地从观众席上爬上去,再闹哄哄地从舞台前沿跳下来,观众体验肯定不好...
对于芯片来说,所有流出的电流都是芯片电源脚进去的...所有流入的电流都是从芯片地脚出来的,
所以为了保证芯片内部电源和地网络的稳定,尽量减少不必要的电流流入和流出....
就是这样.

使用特权

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

本版积分规则

22

主题

503

帖子

2

粉丝