硬件设计为在PD口既接按键又接LED,咋办?
是不是在用按键时就将PD口为输入口,在显示时又得将PD口设为输出口。只能是来回设置该口为输入、输出吗,有没有更好的办法?
首先,你说的PD是一个GPIO口,还是PD0~PD7呢?
一、
如果是一个,那么你的这个方法是可行的。但有一个问题,无论你的按键接的是上拉的还是下拉的,都会对LED有影响。尤其是长时间按下按键时,是没有办法正常显示的。你的切换可能会使用电路短路。
如:
你的按键是上拉,也就是按键按下会接到GND,但是这时,你的LED正好是拉电流的接法,那么你一输出高电平,VCC与GND就短路了。
所以你的电路要做这一方面的预防
二、
如果是PD0~PD7,那么,每个口都可以单独设置为输出或是输入。
这用法真屌
这个用法也太绝了,不过实际上不建议这样做
一般来说一个IO口将它设置为一个方向就好了,如果你真的那么缺IO的话建议用串转并,那个输入输出就可以自由设置了
用跳線接著其他PD口也是一個方法
多半時候除非不得以,例如One Wire通訊方式,
一般用途還是分開比較好,除非LED和按鈕完全無關聯
好像都是按一下點亮LED吧XD?
以上供參考