新聞中心

EEPW首頁 > 光電顯示 > 設(shè)計應(yīng)用 > 基于單片機的RGB LED背光源的設(shè)計方案

基于單片機的RGB LED背光源的設(shè)計方案

作者: 時間:2012-04-11 來源:網(wǎng)絡(luò) 收藏

摘 要:為提出了一種解決。根據(jù)三原色原理,利用作為控制元件、結(jié)合NCP 5623三原色控制芯片,了一種 。對于NCP 5623的控制所用的I2 C總線的實現(xiàn)上,采取利用任意2個通用I/O管腳和NCP兩5623的I2 C引腳連接,作為I2 C總線,通信協(xié)議實現(xiàn)上采用軟件模擬的方式,且作為控制單元,只需實現(xiàn)最小系統(tǒng)的功能。這種方式簡化了,節(jié)約了I2 C總線主控制器器件,降低了成本。在軟件設(shè)計上,在此給出了軟件模擬I2 C協(xié)議方式下的NCP 5623每一個功能的實現(xiàn)程序模板,給出了NCP 5623應(yīng)用的一種通用方法,組合使用可實現(xiàn)三原色及亮度可調(diào)的基本功能。對教學(xué)和實踐都有深刻意義。

本文引用地址:http://butianyuan.cn/article/168185.htm

0 引 言

液晶顯示器(LCD)是光調(diào)制器件,自身并不發(fā)光,所以為了可以清楚地看到透射式液晶顯示器的顯示內(nèi)容,需要給液晶屏匹配一個背。目前的背光模組一般使用冷陰極管(CCFL)為光源,包含了紅、綠、藍等各色光的頻率。CCFL因輝度高、成本低廉、技術(shù)成熟等優(yōu)點被廣泛的運用在平板顯示器上。隨著發(fā)光二極管()亮度的改善,背光模組顯示出CCFL無法比擬的優(yōu)點,如色彩還原性好、壽命長、不含汞、有利于環(huán)境保護,這些使其成為LCD背光模組中的研究熱點。LED背光模組的設(shè)計主要包括光學(xué)結(jié)構(gòu)設(shè)計,驅(qū)動電路設(shè)計以及程序設(shè)計,顯示性能主要表現(xiàn)在亮度、色度、均勻性等方面。本文將從驅(qū)動電路和軟件設(shè)計的角度進行闡述,講述了設(shè)計所采用的元器件、硬件原理及其軟件編程,詳細地探討了 LED背光源的設(shè)計。

1 硬件設(shè)計

本設(shè)計采用單片機作為LED的控制核心器件,選用NCP 5623實現(xiàn)LED背光源的靜態(tài)顯示。單片機主要實現(xiàn)的功能是通過I2C協(xié)議控制NCP 5623芯片,NCP 5623根據(jù)單片機發(fā)送的命令調(diào)節(jié)3種顏色的LED的亮度從而達到背光的效果。NCP 5623是安森美半導(dǎo)體日前推出的高能效3路輸出LED驅(qū)動器,帶有I2C接口,并且內(nèi)置漸進調(diào)光功能,3路LED可獨立控制,總LED電流9可達0mA,并且是一種無鉛器件。

該器件特別適用于驅(qū)動手機和MP3播放器等便攜產(chǎn)品中的3色(紅、綠、藍)LED裝飾光和增強型LCD背光。硬件結(jié)構(gòu)圖如圖1所示。

圖1 三原色LED驅(qū)動硬件結(jié)構(gòu)圖

圖1 三原色LED驅(qū)動硬件結(jié)構(gòu)圖

2 軟件設(shè)計

NCP 5623是接受單片機的命令而產(chǎn)生動作,單片機給NCP 5623芯片發(fā)送指令是通過I2C總線,兩者之間通過I2C協(xié)議進行通信。I2C總線的實現(xiàn)可以有多種方法,而對于本文的情況,速率不是問題的重點,所以采取一般的單片機用某兩個普通I/O 口模擬I2C 總線。對于單片機模擬I2C總線已經(jīng)非常成熟,只要根據(jù)以往的程序根據(jù)自己的需要略加修改即可。對于背光光源來說,主要調(diào)整三原色之間的亮度比例和根據(jù)自己的需要進行總體亮度調(diào)節(jié),這些都可以通過NCP 5623所提供的命令實現(xiàn),所以只要掌握了這些指令傳輸?shù)某绦驅(qū)崿F(xiàn),可以自己根據(jù)需要組合實現(xiàn)自己想要的功能,下面就給出NCP 5623各個命令的子程序?qū)崿F(xiàn)。

NCP 5623能實現(xiàn)的功能如表1。

表1 NCP 5623編程序列圖

表1 NCP 5623編程序列圖

該表的$70代表NCP 5623的I2C器件寫地址。

對于NCP 5623來講沒有讀操作。該器件的命令為1個字節(jié),它可以被認為是I2C傳輸?shù)膬?nèi)容部分。該字節(jié)最高3位用來表征命令,后面5位用來表征命令的參數(shù),比如001表示對3個LED亮度同時進行控制,而后面5位則表示亮度。下面是每個命令的子程序?qū)崿F(xiàn),I2C_Start()是啟動I2C總線讀寫函數(shù),I2C_Stop()是停止I2C傳輸函數(shù),writeByte()是傳輸數(shù)據(jù)函數(shù)。每個命令的實現(xiàn)開頭都應(yīng)該有I2C_Start()啟動傳輸,最后應(yīng)該有I2C_Stop()停止I2C總線活動。

燈滅命令實現(xiàn):

bit tempbit;

tempbit=0;

I2 C_Start();

writeByte(0x70);

tempbit=checkAck();

writeByte(0x00);

tempbit=checkAck();

I2 C_Stop();

為了節(jié)約篇幅,下面的程序省略I2C_Start();I2C_Stop()和每個writeByte()函數(shù)后面的tempbit =checkAck()。

同時控制3個燈的亮度命令模板:

writeByte(0x70);

writeByte(value); //value可取0x20-0x3f

控制紅燈的亮度命令模板:

writeByte(0x70);

writeByte(value); //value可取0x40-0x5f

I2 C_Stop();

控制綠燈的亮度命令模板:

writeByte(0x70);

writeByte(value); //value可取0x60-0x7f

控制黃燈的亮度命令模板:

bit tempbit;

writeByte(0x70);

writeByte(value); //value可取0x80-0x9f


上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉