使用MAX6954驅(qū)動(dòng)16段LED顯示器
MAX6954的一個(gè)常見應(yīng)用是驅(qū)動(dòng)多達(dá)8位的16段單色LED。本篇應(yīng)用筆記指導(dǎo)用戶如何連接MAX6954與16段顯示器,以及如何配置其內(nèi)部寄存器控制顯示內(nèi)置字模中的104個(gè)字符。
MAX6954使用一種交替改變驅(qū)動(dòng)器端口極性的復(fù)用技術(shù)來減少引腳數(shù)目。這與驅(qū)動(dòng)器陰極和陽極引腳單獨(dú)使用的標(biāo)準(zhǔn)LED復(fù)用連接方式不同。應(yīng)用筆記"Charlieplexing - Reduced Pin-Count LED Display Multiplexing"對(duì)這一技術(shù)進(jìn)行了討論。表1為MAX6954與16段顯示器的連線表,此表兼容于MAX6954的復(fù)用配置及其104個(gè)字符的內(nèi)置字模。表1中的字母對(duì)應(yīng)于圖2中的段標(biāo)識(shí)。圖1為MAX6954驅(qū)動(dòng)八位16段顯示器的電路示意圖。
?圖1. MAX6954 16段顯示應(yīng)用電路
圖2. 16段顯示器的段標(biāo)識(shí)
表1.與八位16段顯示器連線表
完成MAX6954與16段顯示器連線后,可利用顯示測(cè)試模式檢查連線正確性。顯示測(cè)試模式不受控制和數(shù)據(jù)寄存器影響,點(diǎn)亮顯示器所有的段,但不改變?nèi)魏?a class="contentlabel" href="http://butianyuan.cn/news/listbylabel/label/寄存器">寄存器內(nèi)容。向寄存器0x07寫入0x01啟動(dòng)顯示測(cè)試模式。測(cè)試模式下顯示器如果有不亮的段則說明連線有誤。向寄存器0x07寫入0x00退出顯示測(cè)試模式。
完成連線檢查后,需要按驅(qū)動(dòng)16段顯示器的要求設(shè)置MAX6954寄存器值。表2包括MAX6954一些重要寄存器的上電初始值。 MAX6954初次上電時(shí)處于關(guān)斷模式,各位顯示消隱,選擇16段字模并將掃描位數(shù)設(shè)為最大,即八位。譯碼模式寄存器(0x01)和數(shù)字類型(0x0C)的默認(rèn)值適用于16段顯示器。
圖3. 16段顯示字模
表2. MAX6954上電后寄存器初始狀態(tài)
配置寄存器(0x04)用來設(shè)置進(jìn)入和退出關(guān)斷模式,控制閃爍功能,全局清除各位數(shù)據(jù),以及選擇對(duì)各位亮度進(jìn)行全局還是單獨(dú)控制。配置寄存器包含7位(見表3)。
S 位用來選擇關(guān)斷模式還是正常工作模式(讀/寫)。
B 位用來選擇閃爍速率(讀/寫)。
E 位用來全局啟動(dòng)或禁止閃爍功能(讀/寫)。
T 位用來復(fù)位閃爍時(shí)序(此數(shù)據(jù)不被存儲(chǔ)—瞬態(tài)位)。
R 位用來全局清除所有顯示位對(duì)應(yīng)的P0和P1兩級(jí)寄存器(此數(shù)據(jù)不被存儲(chǔ)—瞬態(tài)位)。
I 位用來選擇對(duì)各位亮度進(jìn)行全局還是單獨(dú)控制(讀/寫)。
P 位用來返回當(dāng)前閃爍時(shí)序相位(只讀—向此位寫入值將被忽略)。
表 3. 配置寄存器格式
通過向寄存器0x04寫入0x01啟動(dòng)顯示器驅(qū)動(dòng)器,同時(shí)將工作方式設(shè)置為全局亮度控制、禁止閃爍。內(nèi)部振蕩器在MAX6954退出關(guān)斷模式時(shí)啟動(dòng),振蕩器輸出引腳為OSC_OUT。注意,數(shù)據(jù)控制寄存器0x60至0x67上電狀態(tài)為0x20或沒有段被點(diǎn)亮?xí)r,16段顯示器保持顯示消隱(見表2和圖3)。
MAX6954內(nèi)置了用于16段顯示器的104個(gè)字符的ASCII字模圖。字符為標(biāo)準(zhǔn)ASCII字模加, , , °, ?, ±, , 和這些常用符號(hào)。用7位表示這104個(gè)字符,第8位用于選擇是否點(diǎn)亮小數(shù)點(diǎn)(DP)(見表4)。數(shù)據(jù)寄存器有兩級(jí),P0和P1。每個(gè)顯示位用存儲(chǔ)器中的2字節(jié)表示,一個(gè)字節(jié)位于P0,另一個(gè)位于P1(見表7)。數(shù)據(jù)寄存器為映射地址方式,所以每位數(shù)據(jù)可在P0(寄存器0x20至0x27)中更新,也可在P1 (寄存器0x40至0x47)中更新,還可以兩級(jí)同時(shí)更新(寄存器0x60至0x67)。數(shù)據(jù)寄存器中的數(shù)據(jù)并不直接控制16段顯示器中各段的顯示。而是被用來尋址一個(gè)存儲(chǔ)著16段字模數(shù)據(jù)的字符發(fā)生器(見圖3)。寄存器數(shù)據(jù)低7位(D6至D0)用來從字模中選擇字符。最高位(D7)控制小數(shù)點(diǎn)(DP)顯示;置為1則顯示DP,置為0則不顯示DP。
表 4. 數(shù)字類型數(shù)據(jù)寄存器格式
如果閃爍功能被配置寄存器閃爍使能位E(見表3)禁止,則P0中數(shù)據(jù)寄存器的數(shù)據(jù)被用作顯示器復(fù)用。而P1中數(shù)據(jù)寄存器的數(shù)據(jù)不被使用。如果閃爍功能被啟用,則交替使用P0和P1中的數(shù)據(jù)復(fù)用顯示器。P0和P1中的數(shù)據(jù)分別應(yīng)用于閃爍時(shí)鐘交替變化的不同相位,從而復(fù)用LED顯示器實(shí)現(xiàn)閃爍功能。
下面是一個(gè)利用MAX6954驅(qū)動(dòng)顯示八個(gè)字符,“MAXIM-IC”,的實(shí)例。設(shè)置配置寄存器禁止閃爍功能,這樣就可以通過向寄存器0x20至0x27寫入數(shù)據(jù)來分別控制數(shù)據(jù)位0至7。使用圖3中的字模圖得到每個(gè)字符對(duì)應(yīng)的代碼。
表 5. MAXIM-IC顯示范例
通過向寄存器0x02(全局亮度控制寄存器)寫入數(shù)據(jù)來調(diào)節(jié)顯示亮度,亮度可在0x00(最小亮度,1/16的電流)和0xFF(最大亮度,15/16的電流)之間調(diào)節(jié)。也可以對(duì)每一位的亮度進(jìn)行單獨(dú)控制。關(guān)于顯示亮度調(diào)節(jié)和其它先進(jìn)特性(如GPIO和按鍵掃描)的詳細(xì)信息請(qǐng)參考MAX6954的數(shù)據(jù)資料。
表6. 快速入門例程指令集
表7. MAX6954/MAX6955的部分寄存器地址圖
評(píng)論