發光二極管 (LED) 是一種簡單經濟的狀態信息顯示方法。但是,對于某些項目而言,一個單色 LED 可能不夠。而由于空間、成本或功耗限制,多個 LED 又可能不太現實。針對這些情況,多色 LED 提供了一種有效的解決方案,前提是這種 LED 能與微控制器正確連接。
本文將首先闡述 LED 的基礎知識,然后討論多色 LED 的優勢,之后介紹哪些是合適的多色 LED 解決方案,最后說明如何將 LED 連接到微控制器,以產生多達 1600 萬種不同的顏色。
將 LED 視為二極管
在設計帶 LED 的電路時,務必記住這些器件不是白熾燈泡,而是恰好能發光的半導體器件(二極管)。作為二極管,它們通常只允許電流主要流向一個方向(二極管并不理想,因此在反向偏置時會產生少量電流)。
普通 LED 的發光部分是位于組件中心的簡單半導體二極管,由單個 p-n 結構成(圖 1)。電流從連接到 P 型硅的 LED 陽極流向連接到 N 型硅的 LED 陰極。在普通二極管中,p-n 結通常是鍺 (Ge) 或硅 (Si)。然而,對于 LED 而言,這個結通常是透明的磷砷化鎵 (GaAsP) 或磷化鎵 (GaP) 半導體材料。
利用透明的 GaAsP 或 GaP,施加在 p-n 結上的正向電壓會從半導體釋放出光子。p-n 結安裝在反射鏡腔上,而該鏡腔可將光子聚集到 LED 透鏡。LED 的透鏡和本體由透明環氧樹脂組成,而樹脂可選擇性地進行著色,以匹配發射光的顏色。
反射鏡腔位于稱為鐵砧的引線框上,陰極通過接合線連接到稱為極柱的引線框上。鐵砧和極柱的形狀可使它們與 LED 環氧樹脂本體形成牢固連接,從而無法將陽極或陰極引腳從 LED 環氧樹脂本體上拉出,造成 LED 損壞。
單色 LED
LED 有多種顏色可供選擇,包括紅色、綠色、黃色、琥珀色、青色、橙色、粉色、紫色以及最近出現的白色和藍色。單色 LED 配備的半導體芯片由可產生所需光線波長的材料組成,并且 LED 環氧樹脂殼體組件通常具有相同的顏色。雖然不需要使透鏡具有與發射光相同的顏色,但重要的是,要容易識別 LED 元件的顏色,防止與其他 LED 混淆。
多色 LED
對于某些空間、成本和功耗受限的系統而言,最好使用一個能發出多種顏色的 LED。通常情況下,這種多色 LED 在一個透明環氧樹脂外殼內部配備三個 LED,分別是紅色、綠色和藍色 (RGB)。Adafruit Industries 的 2739 RGB LED 就是一個很好的例子(圖 2)。該 LED 專為多色指示燈而設計,配有一個寬 2.5 mm、高 5 mm 的矩形透鏡發光表面,以及四根可在 PC 板上進行通孔安裝的徑向引線。
通常情況下,三個內部 LED 中的任何一個均可以單獨使用,也可與其他 LED 結合使用,以產生不同的顏色。
多色 RGB LED 通常有三種引腳布局:
所有 LED 共用一個陽極,每個 LED 有一個陰極,總共四個引腳
所有 LED 共用一個陰極,每個 LED 有一個陽極,總共四個引腳
每個陽極和陰極都分配引腳,總共六個引腳
使用多色 LED 進行設計
Adafruit 的 2739 RGB LED 具有一個共陽極,紅色、綠色和藍色 LED 的每個陰極都分配引腳,總共四個引腳(圖 3)。共陽極連接到正極電源,而每個紅色、綠色和藍色 LED 通過接地來接通。
生成多種顏色
如果某種應用只需要顯示三種狀態中的一種,那么使用 2739 RGB LED 的最簡單方法是一次打開一個 LED,用戶可以選擇紅色、綠色或藍色中的一種。
對于多種顏色,設計人員可以簡單地將兩種顏色組合在一起,提供以下六種顏色選項:
紅色
綠色
藍色
黃色(紅色 + 綠色)
青色(綠色 + 藍色)
洋紅色(紅色 + 藍色)
為了編制清晰的項目文檔,顯示的顏色應該清晰易辨,并且易于口頭確認。例如,具有全電流的綠色 LED 可以在 LED 規格書中記錄為“綠黃色”。然而,當 LED 亮起時,大多數消費者和開發人員在被問及時,都會將顏色識別為“綠色”。無論顏色的實際名稱如何,用戶都應該能夠通過視覺和標簽輕松區分出不同的顏色。很少有人能夠輕易地識別出“綠色”和“綠黃色”之間的區別,如果這兩種顏色并排呈現,則可能將綠黃色識別為“綠色”,將綠色識別為“深綠色”。
對于更復雜的應用,可以按不同的強度組合 RGB,從而產生多達 1600 萬種顏色。實現這一目的的可靠方法是:將脈沖寬度調制 (PWM) 信號應用于每個 LED,其中占空比與強度相對應。人眼可以識別出 200 赫茲 (Hz) 或更慢的閃爍頻率,因此,為了避免閃爍,應使用 1000 Hz 或更快的 PWM 頻率。
顏色可通過 RGB 色碼輕松選擇。這基于 RGB 加色模型,其中紅光、綠光和藍光在強度上各不相同,組合在一起幾乎可以重新生成任何顏色。該模型適用于光線,是電視和顯示屏中色彩再現的依據,還可用于呈現網頁上的顏色。
RGB 色碼的簡寫用 (R,G,B) 表示,其中 R、G 和 B 是紅色、綠色和藍色強度的十進制值,范圍介于 0 到 255 之間。例如,藍色的十進制 RGB 色碼為 (0,0,255),紫色為 (128,0,128),銀色為 (192,192,192)。在確定每種顏色的 PWM 占空比時,需將這些值除以 255,因此藍色的占空比為 (0,0,100%),紫色的占空比為 (50%,0,50%),銀色的占空比為 (75%,75%,75%)。
從理論上講,白光由 (255,255,255) 表示,并且可通過同時打開全強度的紅色、綠色和藍色 LED 來生成。然而,在實踐中,通過該方法產生的顏色通常是帶有偏藍色調的白色。出現這種色調是因為,生成的 LED 顏色與理想的紅色、綠色和藍色的精確波長不完全匹配。
微控制器很容易生成所需的 PWM 信號。Microchip Technology 的 ATSAMC21J18A 就是一個合適的例子(圖 4)。該微控制器是一款用于物聯網端點的低功耗器件,是該公司 SAM C21 微控制器系列產品之一。它配有 48 MHz Arm® Cortex®-M0+ 內核,支持 5 伏 I/O 電壓。
為了驅動 LED,ATSAMC21J18A 配有定時器/計數器單元,能夠自動生成三個同步 PWM 信號。SAM C21 系列產品配有高電流阱選件,可使連接各電流阱的四個 I/O 引腳的最大電流為 20 毫安 (mA)。
使用 LED 時,選擇正確的串聯電阻器來限制電流非常重要。電阻值太小的電阻器會破壞 LED,而電阻值過高的電阻器會導致光線昏暗或無光。串聯電阻器的值由每個 LED 的正向電壓和所需的電流決定。
LED 是電流控制的半導體。此外,值得注意的是,由于材料的物理特性,LED 的工作電壓會隨著發射光波長的減小而增加,這是使用多個 LED 時要考慮的重要因素。
當 Adafruit 的 2739 RGB LED 正向電流為 20 mA 時,Adafruit 圖表中規定的 LED 典型正向電壓為 2 伏(紅色)和 3.2 伏(綠色和藍色)。
如果共陽極連接到 5 伏電壓,那么 LED 和 I/O 引腳之間的電阻值由以下等式確定:
其中:
VDD = 5 伏
VOL = ATSAMC21J18A 的輸出低壓 = 0.1 x VDD = 0.5 伏
VF = 正向電壓(典型值)
I = 正向電流,單位:安培
R = 電阻值,單位:歐姆 (Ω)
在 I = 20 mA 的情況下使用該公式,結果是:RRED (VF = 2 V) = 125 Ω,RGREEN = RBLUE (VF = 3.2 V) = 65 Ω。
如果計算出的電阻不能作為標準電阻值,開發人員可以選擇下一個較低值,或者下一個較高值(首選)。如果選擇較低值,則必須注意,不得超過該 LED 的最大正向電壓或 ATSAMC21J18A I/O 端口的最大電流灌入能力。雖然在超過這些最大值時 LED 仍然可以工作,但可能會降低 LED 的使用壽命,也可能隨著時間的推移,降低 I/O 端口的性能或損壞該端口。或者,如果應用仍能接受較暗光線,則可以降低正向電流。例如,當正向電流為 15 mA 時,Adafruit 的 2739 RGB LED 指定正向電壓會降至 1.9 伏(紅色)和 3.1 伏(綠色和藍色),這樣會導致電阻值 RRED = 173.3 Ω,RGREEN = RBLUE = 93.3 Ω。
由于 ATSAMC21J18A 可通過控制接地連接來控制 LED,當 I/O 端口為邏輯低電平時,單個 LED 亮起;當 I/O 端口為邏輯高電平時,單個 LED 熄滅。因此,必須倒置計算出的 RGB 色碼占空比。例如,如果顏色需要 25% 的占空比,則 PWM 必須能產生 75% 的占空比,才能使 LED 在 25% 的周期時間內工作。此外,如果 LED 必須在上電時熄滅,則微控制器啟動代碼必須能使三個引腳處于邏輯高電平。
ATSAMC21J18A 配備 256 Kb 閃存、32 Kb RAM 和各種模擬外設。該微控制器還配有六個串行通信模塊 (SERCOM),每個模塊都可以作為 USART、SPI、LIN 從器件或 I2C 接口。
智能 RGB LED
使用 RGB LED 生成多種顏色的另一種方法是對其進行編程。智能 LED 是一個術語,用來描述這種帶有可編程串行接口的多色 LED。American Bright Optoelectronics 的 BL-HBGR32L-3-TRB-8 就是一個很好的例子。它是一款 5 mm 方形 RGB LED,可以使用 800 千赫 (kHz) I2C 接口進行編程,從而產生任何顏色(圖 5)。
I2C 接口不僅可以節省板空間,而且可以簡化微控制器代碼,這種便利性極大簡化了設計。ATSAMC21J18A 上的一個 SERCOM 端口可配置為 I2C 串行接口,以便輕松連接到 BL-HBGR32L-3-TRB-8。參考圖 5 中的引腳布局,來自 ATSAMC21J18A 微控制器的 I2C 數據信號連接到引腳 1 數據輸入信號,I2C 時鐘連接到引腳 2 時鐘輸入。
在對 BL-HBGR32L-3-TRB-8 LED 的顏色進行編程時,需要發送四個代表全局亮度設置和 RGB 色碼的字節,作為一個 32 位字。這款智能 LED 在引腳 6 上配有數據輸出直通,在引腳 5 上配有 I2C 時鐘直通,這樣可使多個 LED 能夠以菊花鏈方式連接在一起,以便每個 LED 可以顯示不同的顏色。
總結
了解多色 RGB LED 的驅動方式之后,不僅可以節省空間、成本和功耗,還可以增強終端系統、設備、狀態指示燈或照明系統的美觀性及用戶界面。開發人員既可以選擇能對每個 LED 進行完全控制的標準 RGB LED,也可以選擇能對顏色進行編程控制的智能 LED。此外,當涉及到通常用于產生 PWM 控制信號的微控制器時,目前有許多低功耗、低成本選項可供選擇。
烜芯微專業制造二極管,三極管,MOS管,橋堆等20年,工廠直銷省20%,4000家電路電器生產企業選用,專業的工程師幫您穩定好每一批產品,如果您有遇到什么需要幫助解決的,可以點擊右邊的工程師,或者點擊銷售經理給您精準的報價以及產品介紹
烜芯微專業制造二極管,三極管,MOS管,橋堆等20年,工廠直銷省20%,4000家電路電器生產企業選用,專業的工程師幫您穩定好每一批產品,如果您有遇到什么需要幫助解決的,可以點擊右邊的工程師,或者點擊銷售經理給您精準的報價以及產品介紹