基於Nuvoton NUC126電競產品ARGB LED控制解決方案

近年來電競市場的發展非常的蓬勃,各種炫彩的LED吸引了不少玩家,舉凡鍵盤滑鼠、主機板、顯示卡、螢幕、機殼等等,你想的到或想不到的都配上LED就對了,滿滿的RGB信仰再配上高規的配備能在這宅經濟市場吸住所有玩家的眼球。

NuMicro® NUC126系列為 32 位 元微控制器,內建ARM® Cortex®-M0 內核,速度高達72 MHz。主要產品特色包含內置48 MHz 高精度高速 RC 振盪器並支持 USB 傳輸不須外掛晶體 ( Crystal-less ) ;可調式VDDIO管腳,其接受寬電壓範圍為 2.5V 到 5.5V ,便於連接與VDD電壓不同之外部元件,達成更彈性的設計。內建硬體除法器,提升軟體執行速度;此外,NUC126內建SPROM ( Security Protection ROM ) ,提供一個獨立的安全加密執行區域,以保護開發者的智慧財產權。

此方案運用了SPI搭配PDMA,可輕鬆的同時推動5組ARGB燈條,比起傳統RGB使用PWM的控制方式,不僅節省了MCU的腳位,也大大降低了PCB的複雜程度。

應用線路

  1. LDO_CAP需接1uF對地,給內部電源使用
  2. Reset接10k歐姆及10uF
  3. ICE_DAT及ICE_CLK為除錯及韌體更新的SWD接口,建議預留線路
  4. ARGB只需使用SPI的MOSI來控制即可



控制邏輯及程式架構 :

此方案配合的ARGB LED為目前市場運用很廣的WS2812B,SPI 頻率設定在3.2MHz左右,達到SPI data 1 bit約310us的時間,並且使用4bits來表示一個LED bit的資訊,也就是T0H及T1L約莫於310us,T0L及T1H約莫於930ns,皆可滿足WS2812B的規格.



此程式架構可支持5組ARGB LED燈條,下圖為每個燈條可設定的基本參數


Timer0設定每1ms中斷一次,並將每個燈條的計數累加,做為之後演算法使用


主程式內則判斷每組LED_Stripe的PDMA是否傳送完成,若傳送完成則進行下一次的特效演算,然後在觸發一次PDMA


透過Set_LED_RGB()或Set_LED_Array()函式將演算好的LED特效轉換成SPI輸出buffer的資料


下面為恆亮的演算法,將燈條設定的RGB值成上亮度(0~10)再除以10以達到亮度的調整,最後只要將設定好的RGB值填入Set_LED_RGB函式,即可幫我們轉換成SPI所要輸出的訊號



►場景應用圖

►展示板照片

►方案方塊圖

►核心技術優勢

 品佳提供多達10種特效演算法,讓使用者能更快上手  品佳提供ARGB底層控制函式,彈性化的設定讓使用者方便移植及客製化  高達72 MHz Cortex-M0內核及硬體除法器,可迅速的處理複雜的演算法  內建48MHz HIRC給USB使用,可省去外部Crystal成本  對於二次開發的合作方式,SPROM可保護辛苦研發的演算法不被竊取  可調式VDDIO,便於連接與VDD電壓不同之外部元件,可節省Level shift成本  支持目前最多人使用的ARGB LED – WS2812B  多介面的interface USCI,可任意配置成SPI、I2C及UART,讓MCU使用更加靈活  可透過多種介面來控制燈效,如USB、UART、I2C及SPI等等  使用SPI + PDMA來控制多達五路的ARGB燈條

►方案規格

 NuMicro NUC126 (32-bit Arm® Cortex®-M0)內建硬體除法器  高達72MHz工作主頻  內建256 KB Flash/20 KB SRAM  高達96 MHz SPI 通訊介面  5通道周邊PDMA控制器  USB 2.0全速裝置控制器及內置PHY  內部USB專用HIRC-48MHz  多達4組32-bit Timer  3個USCI介面,可設為UART/SPI/I²C  3個UART介面  2個I²C介面  2個SPI [I²S] 介面  電壓範圍:2.5V至5.5V  溫度範圍:-40°C至 +105°C

技術文檔

類型標題檔案
硬件Datasheet
硬件Schematics
軟件SampleCode

相關影片

基於Nuvoton NUC126電競產品ARGB LED控制解決方案

基於Nuvoton NUC126電競產品ARGB LED控制解決方案