8位液晶譯碼驅(qū)動(dòng)MAX7232BF的原理及應(yīng)用
MAX7232BF為串行輸入4位數(shù)據(jù)、2位小數(shù)點(diǎn)和4位地址;輸出為10位數(shù)據(jù)加20個(gè)獨(dú)立小數(shù)點(diǎn),數(shù)據(jù)輸出代碼為BCD碼,每一位的2個(gè)小數(shù)點(diǎn)都在COM3上??梢灾苯优c微處理器連接。
1 管腳結(jié)構(gòu)及說明
MAX7232BF具有雙列直插式40管腳封裝和四邊形式44腳封裝?,F(xiàn)以40腳封裝的通用形式介紹其管腳結(jié)構(gòu)及功能;44腳封裝的形式類似,只是有部分管腳為空(NC),以及其他管腳號與其功能相對40腳有些差異。如表1所示。
2 動(dòng)態(tài)顯示驅(qū)動(dòng)時(shí)序
由于LCD顯示驅(qū)動(dòng)信號與LED顯示驅(qū)動(dòng)信號不大相同,因而不能簡單地在動(dòng)態(tài)顯示驅(qū)動(dòng)方式的LCD電極上加高電平或低電平,否則顯示會(huì)出現(xiàn)混亂。另一方面,LCD兩電極間不能有直流電壓,即兩電極驅(qū)動(dòng)信號的平均值應(yīng)該為0。因此,LCD顯示驅(qū)動(dòng)信號需要采用偏壓法,常用的偏壓法有1/2偏壓、1/3偏壓、1/4偏壓和1/7偏壓等。MAX7232BF驅(qū)動(dòng)信號采用1/3偏壓來進(jìn)行動(dòng)態(tài)掃描驅(qū)動(dòng),掃描信號從背電極輸
出,顯示信息從筆段電極輸出。
3 譯碼選擇格式
MAX7232BF輸入4位數(shù)據(jù)、2位小數(shù)點(diǎn)和4位地址的二進(jìn)制數(shù)據(jù),他們的組合不同,產(chǎn)生的輸出形式也各不相同。下面將分別討論各種組合的譯碼格式,根據(jù)不同的顯示需要,選擇其中不同的編碼組合來產(chǎn)生需要的顯示格式。
3.1 小數(shù)點(diǎn)譯碼輸出格式
小數(shù)點(diǎn)控制輸入2位,由此產(chǎn)生4種不同的組合,根據(jù)顯示的需要可選擇其中任一種格式,譯碼格式如表2所示。
3.2 數(shù)據(jù)譯碼輸出格式
數(shù)據(jù)控制輸入4位二進(jìn)制數(shù)據(jù),共形成16種輸出格式,由于MAX7232BF輸出為BCD碼,只需要1~9共9位數(shù)字,另外還有1個(gè)不輸出控制,其他6位不用。
3.3 地址譯碼輸出格式
MAX7232BF最多可輸出10位數(shù)據(jù),由4位輸入二進(jìn)制地址數(shù)據(jù)來控制。將這4位數(shù)據(jù)譯碼為16位,其中前10位選擇輸出位的地址,后6位無效。
4 MAX7232BF的工作時(shí)序
MAX7232BF有3種輸入時(shí)序:
第1種是用來輸出10位數(shù)據(jù)(最大值,可以小于10位)和20個(gè)獨(dú)立的小數(shù)點(diǎn);
第2種是用來輸出10位數(shù)據(jù)(最大值,可以小于10位)但不輸出任何小數(shù)點(diǎn);
第3種是用來輸出10位數(shù)據(jù)(最大值,可以小于10位)但只輸出右邊10個(gè)獨(dú)立的小數(shù)點(diǎn)(AN2)。[!--empirenews.page--]
為了使設(shè)計(jì)的液晶顯示器的顯示功能盡量強(qiáng)大,不僅要在硬件上保證功能強(qiáng)大,在軟件上也要使硬件的最大功能盡量發(fā)揮出來,所以在時(shí)序上要選擇第1種時(shí)序,使2個(gè)小數(shù)點(diǎn)都可以顯示,在此,只讀第1種時(shí)序。圖1為這種輸入方式的輸入時(shí)序。
如圖1所示,其數(shù)據(jù)輸入時(shí)序依次為:AN1→AN2→BD0→BD1→BD2→BD3→A0→A1→A2→A3,要求在時(shí)鐘脈沖的上升沿時(shí),按順序輸入這10位數(shù)據(jù),他與時(shí)鐘脈沖配合進(jìn)行數(shù)據(jù)輸入。在每個(gè)時(shí)鐘脈沖的上升沿,MAX7232BF自動(dòng)將數(shù)據(jù)輸入線上的數(shù)據(jù)讀入,因此,每個(gè)時(shí)鐘脈沖都要輸入一位數(shù)據(jù),不允許在寫期間停止若干周期,直到寫控制線變?yōu)榈碗娖綖橹埂?/p>
另外還有寫輸入線與數(shù)據(jù)允許輸出線的相互關(guān)系,以及通過他們來控制數(shù)據(jù)輸入的原理及過程。當(dāng)數(shù)據(jù)允許輸出為高電平時(shí),寫輸入線寫脈沖的上升沿將會(huì)觸發(fā)復(fù)位移位寄存器和控制邏輯,從緊接著的時(shí)鐘脈沖上升沿開始讀入數(shù)據(jù);在數(shù)據(jù)允許輸出保持高電平時(shí),MAX7232BF正在讀入數(shù)據(jù)時(shí),若再有一個(gè)寫輸入脈沖,那么再次復(fù)位移位寄存器和控制邏輯,MAX7232BF重新開始讀入數(shù)據(jù);當(dāng)數(shù)據(jù)允許輸出為低電平時(shí),寫輸入線的寫脈沖上升沿將使數(shù)據(jù)允許輸出變?yōu)楦唠娖剑吖餐饔檬馆斎氲臄?shù)據(jù)譯碼、鎖存入輸出緩沖器中,并復(fù)位移位寄存器和控制邏輯,準(zhǔn)備讀入下一個(gè)數(shù)據(jù)。
5 MAX7232BF與單片機(jī)之間的硬件連接
采用89C51單片機(jī)的P1口作為控制顯示器輸入部分,利用其P1.2, P1.1和P1.0共3根控制線分別控制MAX7232BF的時(shí)鐘輸入、寫控制輸入以及數(shù)據(jù)輸入;考慮到不同編程方式的需要,有些要利用 MAX7232BF的數(shù)據(jù)允許輸出線的輸出信號作為選擇條件的要求,可以利用P1.3作為MAX7232BF的輸出允許線的接收端。
6 軟件編程
本文給出顯示的子程序,子程序如下:
7 結(jié) 語
采用MAX7232BF作為液晶驅(qū)動(dòng),并以1/3時(shí)間分割法的方式驅(qū)動(dòng)液晶顯示器,用來代替并行顯示器,以減少傳輸線的數(shù)目、提高顯示器的壽命,以前極少見過用MAX7232BF作為液晶驅(qū)動(dòng)的論述。本文對MAX7232CF和MAX7234系列也有參考意義。MAX7232CF與MAX7232BF 的區(qū)別在于MAX7232CF一個(gè)小數(shù)點(diǎn)在COM1上,而另一個(gè)在COM3上。MAX7234為串行輸入6位數(shù)據(jù)(ASCII碼),3位地址,輸出為5個(gè)字符,但沒有獨(dú)立的小數(shù)點(diǎn)。