|
發布時間: 2022-9-13 09:32
正文摘要:我的原理圖是這樣的,想用兩個io控制三個LED顯示,但是LED口輸入狀態時,并沒有辦法讓兩個LED同時熄滅,反而同時點亮,實際加大了LED后面電阻也很難熄滅LED |
|
軟件上實現就行了,不需要浪費那么多的元器件! |
| 可以參考一下這個 |
51hei圖片20220914195602.png (8.95 KB, 下載次數: 98)
mirenhuan 發表于 2022-9-13 21:52 高阻狀態下是兩個都亮的 |
禿頭小隊長 發表于 2022-9-14 09:16 關鍵是兩個LED壓降相加要大于5V,只要有一個截止兩個都不亮,可以采用壓降大的LED,白、藍、翠綠都大約是3V左右,如果壓降不夠可以串聯二極管。另外可以充分利用其他IO口復用方案,比如KEY口。 |
| 樓主想省IO但是方向錯了,應該3個IO控制3個LED,按鍵KEY與一個控制LED的IO共用。按鍵與LED共用IO有現成方案,很簡單不需要增加元件。 |
hhdsdy 發表于 2022-9-13 23:27 是的,請問有什么辦法可以讓高阻狀態下,兩個都不亮呢? |
hhdsdy 發表于 2022-9-13 23:27 是的,請問有什么辦法可以讓高阻狀態下,兩個都不亮呢? |
| 你這應該就是D2的點亮電壓加D3的點亮電壓低于VDD的電壓,所以無論I/O口是什么狀態,至少會有一個LED點亮的,如果是高阻輸出,則兩個LED都亮。 |
大概這個樣子:
IOA = 0; IOB = 1; LED1 亮 IOA = 1; IOB = 0; LED2 亮 IOA = 1; IOB = 1; LED3 亮 IOA = 0; IOB = 0; 全滅 IOA,IOB 需要限流電阻,我這里就不畫了 |
| 看圖可以理解為1個IO口控制兩顆LED燈,聽說IO口配置為高阻狀態兩顆燈都不亮,不過我也還沒試過。 |