用一個I/O口控制1個三色指示燈, 2個單色指示燈


http://www.baiheee.com/Documents/081207/081207184434.htm

http://www.baiheee.com/Documents/081207/081207184704.htm

當要顯示綠燈(LED1)亮時,I/O口可置為低電平。此時紅燈(LED2)反向偏置,無電流流過,不會亮。

當要顯示紅燈(LED2)亮時,I/O口可置為高電平。此時綠燈(LED1)反向偏置,無電流流過,不會亮。

若要指示燈不亮,可將I/O口置為高阻態,此時兩個發光管均無電流流過,也不會亮。

若要顯示橙燈亮時,此時LED1、LED2要一起亮,則可以讓I/O口在某一固定頻率下以50%的占空比進行高低電平不停轉換,

利用視覺暫留,使人眼感覺到顯示的是橙燈。

 

由於單片機中的I/O口通常可設置為三種狀態,即輸出高電平、輸出低電平和輸入狀態(高阻態)。

利用這一點,可以很方便地用一個I/O口實現對2個指示燈的控制。其電路如右圖所示。

 

 

當要使LED1亮時,I/O口可置為低電平。此時LED2無電流流過,不會亮。

當要使LED2亮時,I/O口可置為高電平。此時LED1無電流流過,不會亮。

若要LED1、LED2均不亮,可將I/O口置為高阻態,此時發光管被VD1旁路,也不會亮。

若要LED1、LED2一起亮,則可以讓I/O口在某一固定頻率下以50%的占空比進行高低電平不停轉換,

利用視覺暫留,使人眼感覺兩個燈都為亮的狀態。

 

http://www.amobbs.com/thread-5561641-1-1.html

1個IO控制3個LED
 

因為現在的led都是高亮的,1mA左右就很亮了,所以MCU的IO壓降可以忽略不計。
IO高阻時,LED3亮,LED1 LED2因為LED3電壓鉗位不亮。
IO輸出高電平,LED2亮,LED1相當於短路,不亮,LED3因為LED2鉗位也不會亮。
IO輸出低電平,LED1亮,LED2相當於短路,不亮,LED3因為LED1鉗位也不會亮。
需要額外考慮的只有LED3支路的壓降,要大於LED1、LED2的大的,小於LED1+LED2,如果都是同樣的LED,在LED3支路上加一個二極管。
流過LED3的電流比LED1、LED2要小約一半,但高亮LED,1mA以上電流減半亮度減弱不是很明顯。也可以LED1、LED2用普亮的,LED3用高亮的。
 
唯一就是LED亮度不均勻.加兩二極管可完善.
 
 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM