如何驅動多色 LED

作者:Bill Giovino

資料提供者:DigiKey 北美編輯群

發光二極體 (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) 半導體材料。

LED 組件示意圖

圖 1:LED 組件中會放置半導體 p-n 接面晶粒,可讓電流從陽極流向陰極。裝有透鏡的透明外罩能夠讓使用者清楚看到發出的光。(圖片來源:Wikipedia)

藉由透明的 GaAsP 或 GaP,沿著 p-n 接面施加順向電壓後,便會從半導體釋放出光子。p-n 接面裝在反射腔上,將光子聚焦到 LED 的透鏡。LED 的透鏡和主體由透明的環氧樹脂構成,而樹脂可根據發射光的顏色選擇性地進行上色。

反射性腔室位於稱為陰極接柱的導線架上,而陰極會由焊線連接到稱為陽極接柱的導線架上。陰極接柱和陽極接柱在塑形後與 LED 環氧樹脂主體形成穩固的連結,能夠確保陽極或陰極引腳無法從 LED 環氧樹脂主體中拔出,從而避免 LED 受損。

單色 LED

LED 有多種顏色,包含紅色、綠色、黃色、琥珀色、靛色、橘色、粉紅色、紫色,以及最近研發的白色與藍色。單色 LED 具有由能產生所需光線波長的材料組成的半導體晶粒,而 LED 環氧樹脂外罩組件通常採用同一種顏色。雖然透鏡的顏色不一定要與發射光同色,但為了防止與其他 LED 混淆,還是很有必要讓使用者輕鬆辨別 LED 元件的顏色。

多色 LED

如果使用一個 LED 就能發出多種顏色,將給某些空間、成本和功率受限的系統帶來極大的優勢。這些多色 LED 通常會在一個透明的環氧樹脂外罩中裝有三個 LED,即紅光、綠光和藍光 (RGB)。Adafruit Industries2739 RGB LED 便是一個很好的例子 (圖 2)。這款元件專為多色指示燈而設計,具有方形的透鏡發光表面 (寬 2.5 mm、高 5 mm),並具有四個徑向引線,能在 PC 板上進行通孔安裝。

Adafruit 的 2739 RGB LED 圖片

圖 2:Adafruit 的 2739 RGB LED 具有透明的環氧樹脂方形透鏡 (寬 2.5 mm、高 5 mm),並且具有四條徑向引線,能在 PC 板上進行通孔安裝。(圖片來源:Adafruit Industries)

通常,這三個內部 LED 既能單獨使用,也能搭配使用,以產生不同的顏色。

多色 RGB LED 通常有三種引腳配置:

  1. 所有 LED 共用一個陽極,每個 LED 有一個陰極,共有四個引腳
  2. 所有 LED 共用一個陰極,每個 LED 有一個陽極,共有四個引腳
  3. 每個陽極和陰極都配置獨立的引腳,共有六個引腳

使用多色 LED 進行設計

Adafruit 的 2739 RGB LED 採用共用的陽極,紅光、綠光以及藍光 LED 的每個陰極都配置引腳,共有四個引腳 (圖 3)。共用的陽極連接到電源正極,紅光、綠光及藍光 LED 則透過接地的方式開啟。

Adafruit 的 2739 RGB LED 陽極與陰極示意圖

圖 3:Adafruit 的 2739 RGB LED 採用共用的陽極,紅光、綠光以及藍光 LED 分別配置一個單獨的陰極。(圖片來源:Adafruit Industries)

產生多種顏色

如果某個應用只需要顯示三種狀態的其中一種,那麼 2739 RGB LED 最簡單的使用方式就是一次點亮一個 LED,而使用者可以選擇紅光、綠光或藍光。

若想提供更多種顏色,設計人員可以簡單地將兩種顏色組合在一起,形成以下六種顏色選擇:

  • 紅光
  • 綠光
  • 藍光
  • 黃光 (紅光 + 綠光)
  • 靛光 (綠光 + 藍光)
  • 洋紅光 (紅光 + 藍光)

為達到清楚的專案紀錄,顯示的顏色應該獨一無二、容易辨識,而且方便以口語識別。例如,在 LED 規格書中,具有滿載電流的綠光 LED 應記錄為「萊姆色」。但是,當 LED 燈點亮時,若是問起大部分的消費者與開發人員,他們會將這個顏色稱為「綠色」。不管這個顏色的實際名稱為何,使用者都應能透過標籤和視覺輕鬆辨識出不同的顏色。很少人能夠馬上指出「綠色」和「萊姆色」的不同;如果把這兩種顏色擺在一起,則可能會將萊姆色當成「綠色」,把綠色當成「深綠色」。

對於更為複雜的應用,RGB 組合可透過改變強度產生多達 1600 萬種顏色。較可靠的做法是對每個 LED 施加脈寬調變 (PWM) 訊號,其中工作週期與強度對應。由於人眼能夠辨識 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 TechnologyATSAMC21J18A 便是一個很好的例子 (圖 4)。這是一款適用於 IoT 端點的低功率元件,是該公司 SAM C21 微控制器系列產品之一。該元件具有 48 MHz Arm® Cortex®-M0+ 核心,支援 5 V I/O 電壓。

Microchip 的 ATSAMC21J18A 微控制器示意圖

圖 4:ATSAMC21J18A 微控制器設有計時器/計數器裝置,能夠自動產生三個同步的 PWM 訊號。(圖片來源:Microchip Technology)

為了驅動 LED,ATSAMC21J18A 設有計時器/計數器裝置,能夠自動產生三個同步的 PWM 訊號。SAM C21 系列具有高灌電流選項,允許四個 I/O 引腳分別灌入最大 20 mA 的電流。

使用 LED 時,選擇正確的串聯電阻來限制電流相當重要。電阻值過低可能會損壞 LED,電阻值過高則可能導致光線昏暗或無光。串聯電阻的值由每個 LED 的順向電壓以及所需的電流決定。

LED 是由電流控制的半導體。同時,請務必注意,由於材料的物理特性,LED 的工作電壓會隨著發射光波長的減少而增加。這是在使用多個 LED 時需要考慮的重要因素。

Adafruit 的 2739 RGB LED 順向電流若為 20 mA,那麼在 Adafruit 的圖表中,紅光的指定典型 LED 順向電壓為 2 V,綠光與藍光為 3.2 V。

若共用陽極連接到 5 V,則 LED 與 I/O 引腳間的電阻值由以下方程式決定:

方程式 1 方程式 1

其中:

VDD = 5 V

VOL = ATSAMC21J18A 的低輸出電壓 = 0.1 x VDD = 0.5 V

VF = 順向電壓 (典型)

I = 順向電流,單位為 A

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 V (紅光) 和 3.1 V (綠光與藍光)。這會導致電阻值為 RRED = 173.3 Ω,RGREEN = RBLUE = 93.3 Ω。

由於 ATSAMC21J18A 透過控制接地連接來控制 LED,單個的 LED 會在 I/O 埠位於邏輯低位準時點亮,在處於邏輯高位準時熄滅。因此必須反轉所計算的 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 OptoelectronicsBL-HBGR32L-3-TRB-8 便是一個很好的例子;這款 5 mm 的方形 RGB LED 能夠進行編程來產生任何顏色,並且使用 800 kHz 的 I2C 介面 (圖 5)。

American Bright 的 BL-HBGR32L-3-TRB-8 示意圖

圖 5:American Bright 的 BL-HBGR32L-3-TRB-8 是一款 5 mm 的方形六引腳數位 RGB LED,採用 I2C 過孔引腳配置,允許多個元件在同一個 I2C 介面上進行菊鏈連接。(圖片來源:American Bright Optoelectronics Corp.)

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,不僅能節省空間、成本及功率,還能增強終端系統、裝置、狀態指示器或照明系統的美感與使用者介面。開發人員可以選擇標準的 RGB LED,也可以選擇智慧型 LED;前者能夠完整控制每個 LED,後者能讓您對色彩控制進行編程。此外,對於常用來產生 PWM 控制訊號的微控制器,目前也有很多低成本且低功率的選擇。

DigiKey logo

聲明:各作者及/或論壇參與者於本網站所發表之意見、理念和觀點,概不反映 DigiKey 的意見、理念和觀點,亦非 DigiKey 的正式原則。

關於作者

Image of Bill Giovino

Bill Giovino

Bill Giovino 是電子工程師,擁有美國雪城大學的電機工程學士學位,也是少數從設計工程師跨足現場應用工程師,再到技術行銷領域的成功典範之一。

Bill 過去 25 年來熱衷於向科技和非科技業的對象推廣新技術,包括 STMicroelectronics、Intel 和 Maxim Integrated 等多家企業。Bill 在 STMicroelectronics 任職期間,曾協助領導該公司順利進軍微控制器領域。在 Infineon 任職時,則策劃出該公司首款在美國汽車業大受歡迎的微控制器設計。Bill 目前是他個人公司 CPU Technologies 的行銷顧問,曾協助諸多企業讓表現不佳的產品重獲市場青睞。

Bill 更是採用物聯網的先驅,包括在微控制器中首次納入完整的 TCP/IP 堆疊。Bill 致力於推廣「用教育促成銷售」的理念,也認可在線上推銷產品時有清楚完整文字說明的重要性。他在 LikedIn 熱門的半導體銷售和行銷群組中擔任管理員,也擁有深厚的 B2E 知識。

關於出版者

DigiKey 北美編輯群