芭乐推广APP网站入口官网_芭乐视频在线下载_芭乐APP色版_芭乐视频在线播放

歡迎訪問杭州精顯科技有限公司液晶顯示屏網(wǎng)站! 設(shè)為首頁 | 收藏本站| 網(wǎng)站地圖
全國統(tǒng)一服務(wù)熱線
15382323032
?

技術(shù)知識

您只需一個電話我們將推薦性價比高的液晶屏產(chǎn)品選型,讓您花合理的價格,達(dá)到預(yù)期的效果

全國統(tǒng)一服務(wù)熱線
15382323032

產(chǎn)品動態(tài)

聯(lián)系我們

全國統(tǒng)一服務(wù)熱線:

15382323032

客服QQ:3234659108

手機(jī):15382323032

地址:浙江省杭州市余杭區(qū)五常街道西溪軟件園金牛座B2座4層4118-4119

當(dāng)前位置: 主頁 > 資訊中心 > 技術(shù)知識 > >

12864液晶模塊的介紹

文章出處:原創(chuàng) 人氣:發(fā)表時間:2018-07-02

本小節(jié)的目錄:
            8.1,12864液晶模塊的簡介
            8.2,12864液晶模塊連接到單片機(jī)的原理圖         
            8.3,12864液晶模塊時序圖的分析以及程序編寫

      液晶屏是一種非常能給人帶來視覺享受的東西!例如上的液晶屏,液晶電視,………,浪漫一點(diǎn)的還有液晶燈,以及迷人的液晶鞋,炫酷的液晶手表等等!但是不管怎么說,還是要先學(xué)會使用最簡單的液晶吧!

8.1.1)12864液晶模塊的簡介
 比較常用的12864液晶模塊有黃綠背光的、藍(lán)色背光的,有帶/不帶字庫的,其控制芯片主要是KS0108、T6863、ST7920等等,這里本人所使用的為ST7920為控制芯片的JX12864K1液晶屏。但是不管用什么類型的12864,其使用操作都大同小異!當(dāng)然,如果你會使用1602了,那么12864的使用也會變得事半功倍!
    
1)關(guān)于12864液晶模塊的說明:
     1,可顯示出漢字以及圖形,內(nèi)置有8192個中文漢字(16X16點(diǎn)陣)、128個字符(8X16點(diǎn)陣)以及64X256點(diǎn)陣顯示RAM(GDRAM),顯然是要比1602高級!
     2,可以選擇8位并行或者是4位串行的操作
     3,可以顯示出128列× 64行的內(nèi)容,可以實(shí)現(xiàn)文字與圖形混合顯示功能、可以自由的去設(shè)置光標(biāo)、顯示移位功能、垂直畫面旋轉(zhuǎn)功能、反白顯示功能、休眠模式等等
    12864液晶模塊實(shí)物圖                     
                                          圖1  12864液晶模塊實(shí)物圖
 
 
2)12864液晶接口的說明:
12864液晶屏接口圖
                                                        圖2 12864的液晶接口圖
簡介上圖:
    1,引腳3(VL):一般接一個103的電位器,用于調(diào)節(jié)液晶屏的顯示亮度。
    2,引腳15(PSB):高電平時選擇并口,低電平時選擇串口
   3,引腳16(NC):空腳即不需要接任何的管腳即可。
 
3)12864狀態(tài)字說明
表8-1 狀態(tài)字的分布表

STA7 
D7
STA6
D6
STA5
D5
STA4
D4
STA3
D3
STA2
D2
STA1
D1
STA0
D0
STA0~STA6 當(dāng)前地址指針的數(shù)值 -
STA7 讀/寫操作使能 1:禁止 0:使能
                   
 
    嚴(yán)格來說,對于控制器在每次進(jìn)行讀寫操作之前,都必須要進(jìn)行一個讀寫檢測,確保STA7是0。也即一般程序之中所謂的判斷忙操作。
 
8.1.2)12864液晶模塊的指令說明
  表8-2基本的指令表
指令名稱 指令碼 指令說明
D7 D6 D5 D4 D3 D2 D1 D0
清屏 L L L L L L L H 清屏:1、數(shù)據(jù)指針清零
2、所有顯示清零
歸位 L L L L L L H * AC = 0,光標(biāo)、畫面回HOME位
輸入方式
設(shè)置
L L L L L H ID S ID=1→AC自動增一;
ID=0→AC減一
S=1→畫面平移;
S=0→畫面不動
顯示開
關(guān)控制
L L L L H D C B D=1→顯示開;D=0→顯示關(guān)
C=1→游標(biāo)顯示;C=0→游標(biāo)不顯示
B=1→游標(biāo)反白;B=0→光標(biāo)不反白
移位控制 L L L H SC RL * * SC=1→畫面平移一個字符;
SC=0→光標(biāo)
R/L=1→右移;R/L=0→左移
功能設(shè)定 L L H DL * RE * * DL=0→8位數(shù)據(jù)接口;
DL=1→4位數(shù)據(jù)接口
RE=1→擴(kuò)充指令;
RE=0→基本指令
設(shè)定
CGRAM
地址
L H A5 A4 A3 A2 A1 A0 設(shè)定CGRAM地址到地址計(jì)數(shù)器(AC),AC范圍為00H~3FH需確認(rèn)擴(kuò)充指令中SR=0
設(shè)定
DDRAM
地址
H L A5 A4 A3 A2 A1 A0 設(shè)定DDRAM地址計(jì)數(shù)器(AC)
第一行AC范圍:80H~8FH
第二行AC范圍:90H~9FH
 
 
表8-3擴(kuò)充指令表
指令名稱 指令碼 指令說明
D7 D6 D5 D4 D3 D2 D1 D0
待命模式 L L L L L L L H 進(jìn)入待命模式后,其他指令都可以結(jié)束待命模式
卷動
RAM
地址選擇
L L L L L L H SR SR=1→允許輸入垂直卷動地址
SR=0→允許輸入IRAM地址(擴(kuò)充指令)及設(shè)定CGRAM地址
反白顯示 L L L L L H L R0 R0=1→第二行反白;R0=0→第一行反白(與執(zhí)行次數(shù)有關(guān))
睡眠模式 L L L L H SL L L D=1→脫離睡眠模式;
D=0→進(jìn)入睡眠模式
擴(kuò)充功能 L L H DL * RE G * DL=1→8位數(shù)據(jù)接口;
DL=0→4位數(shù)據(jù)接口
RE=1→擴(kuò)充指令集;
RE=0→基本指令集
G=1→繪圖顯示開;
G=0→繪圖顯示關(guān);
設(shè)定
IRAM地址
卷動地址
L H A5 A4 A3 A2 A1 A0 SR=1→A5~A0為垂直卷動地址
SR=0→A3~A0為IRAM地址
設(shè)定
繪圖RAM
地址
H L L L A3 A2 A1 A0 垂直地址范圍:AC6~AC0
水平地址范圍:AC3~AC0
A6 A5 A4 A3 A2 A1 A0
 
 
8.1.3)  12864顯示坐標(biāo)關(guān)系
1)漢字顯示坐標(biāo)
表8-4漢字顯示坐標(biāo)地址表
行名稱 列地址
第一行 80H 81H 82H 83H 84H 85H 86H 87H
第二行 90H 91H 92H 93H 94H 95H 96H 97H
第三行 88H 89H 8AH 8BH 8CH 8DH 8EH 8FH
第四行 98H 99H 9AH 9BH 9CH 9DH 9EH 9FH
 
2)繪圖坐標(biāo)分布圖
     12864繪圖坐標(biāo)
                       圖3 12864液晶繪圖顯示坐標(biāo)
水平方向有128個點(diǎn),垂直方向有64個點(diǎn),在更改繪圖RAM時,由擴(kuò)充指令設(shè)置GDRAM地址,設(shè)置順序?yàn)橄却怪焙笏降刂罚ㄟB續(xù)2個字節(jié)的數(shù)據(jù)來定義垂直和水平地址),最后是2個字節(jié)的數(shù)據(jù)給繪圖RAM(先高8位,后低8位)。
最后總結(jié)一下12864液晶模塊繪圖的步驟,步驟如下:
1) 關(guān)閉圖形顯示,設(shè)置為擴(kuò)充指令模式。
2) 寫垂直地址,分上下半屏,地址范圍為:0~31。
3) 寫水平地址,兩起始地址范圍分別為:0x80~0x87(上半屏)、0x88~0x8F(下半屏)。
4) 寫數(shù)據(jù),一幀數(shù)據(jù)分兩次寫,先寫高8位,后寫低8位。
5) 開圖形顯示,并設(shè)置為基本指令模式。
 
在此說明一點(diǎn),也是好多新人模糊的地方。ST7920可控制256*32點(diǎn)陣(32行256列),而12864液晶模塊實(shí)際的行地址只有0-31行,12864液晶的32-63行是從0-31行的第128列劃分出來的。也就是說12864的實(shí)質(zhì)是“256×32”,只是這樣的屏“又長又窄”,不適用,所以將后半部分截下來,拼裝到下面,因而有了上下兩半屏之說。再通俗點(diǎn)說第0行和第32行同屬一行,行地址相同;第1行和第33行同屬一行,以此類推。
    如果還不明白,暫時不需要深究,當(dāng)會用的時候,自然而然就會明白了!
 
8.2)12864液晶模塊連接單片機(jī)原理圖
液晶連接單片機(jī)圖
                   圖4  麥光單片機(jī)開發(fā)板中液晶連接單片機(jī)圖
 
有些初學(xué)者可能會問? 為什么電路圖是這樣連接的,讀者可以對照上圖2即知
接口說明:
1)液晶1、2為電源接口; 19、20為背光電源。
2)  液晶3端為液晶對比度調(diào)節(jié)端,其中連接一個10KΩ電位器來調(diào)節(jié)液晶對比度第一次使用時,在液晶上電狀態(tài)下,調(diào)節(jié)至液晶上面一行顯示出黑色小格為止。
3)  液晶4端為向液晶控制器寫數(shù)據(jù)、命令選擇端,接單片機(jī)的P3.5口。
4)液晶5端為讀、寫選擇端,接單片機(jī)的P3.4口。
5)液晶6端為使能信號端,接單片機(jī)的P3.3口。
6)液晶15端為串(L)、并(H)口選擇端,接單片機(jī)的P3.2口。
7)液晶16、18為空管腳口,在硬件上不做連接。
8)液晶7~14為8位數(shù)據(jù)端口,依次接單片機(jī)的P0口。
 
8.3,12864液晶模塊時序圖的分析和程序編寫
這里本人只介紹并行操作,串行操作基本留給感興趣的讀者去探索吧!
 
1) 并行寫操作時序圖
12864寫操作時序圖
                                                                圖5  12864寫操作時序圖
 
相信看懂1602的人都很容易知道時序圖了,在此不多說
/*************************************************
函數(shù)功能:    寫命令數(shù)據(jù)到LCD
入口參數(shù):    Cmd
出口參數(shù):      void
RS=L; RW=L, E=高脈沖,D0~D7=指令碼
**************************************************/
void Write_LCD_Command(Uchar8 Cmd)     // 寫命令
{
   LCD_Busy_Wait();   // 忙檢測
   LCD_Rs = 0;  
  LCD_Rw = 0;
  LCD_En = 0;
   P0 = Cmd;        
   Delay_1ms(5);
   LCD_En = 1;
   Delay_1ms(5);
   LCD_En = 0;
}
/*************************************************
函數(shù)功能:    寫數(shù)據(jù)
入口參數(shù):    Data
出口參數(shù):    void
RS = H, RW = L, E= 高脈沖, D0~D7= 數(shù)據(jù)。
*************************************************/
void Write_LCD_Data(Uchar8 Date)      // 寫數(shù)據(jù) 
{
    LCD_Busy_Wait();   // 忙檢測
    LCD_Rs = 1;
       LCD_Rw = 0;
       LCD_En = 0;
       P0 = Date;
       Delay_1ms(5);
       LCD_En = 1;
       Delay_1ms(5);
       LCD_En = 0;
}
 
以上程序的說明基本跟1602液晶是一樣的
/*******************************************************
函數(shù)功能:行列(位置)選擇,設(shè)定顯示位置
入口參數(shù):X(行)、Y(列)
出口參數(shù):無
******************************************************/
void lcd_pos(Uchar8 X, Uchar8 Y)
{
    Uchar8 pos;
       if(X ==1)  {X = 0x80;}              // 第一行
       else if(X == 2) {X = 0x90;}  // 第二行
       else if(X == 3) {X = 0x88;}  // 第三行
       else if(X == 4) {X = 0x98;}  // 第四行
       pos = X+Y;
       Write_LCD_Command(pos);        // 顯示地址
}
由于程序太長,為了更好的編輯,本人已將剩下的程序上傳,需看可下載。
 
本人見過有些程序中沒有忙檢測也是可以的,但個人一直認(rèn)為:加上忙檢測LCD_Busy_Wait()是非常有必要的,為什么?1,對于電子學(xué)習(xí)的一種嚴(yán)謹(jǐn),培養(yǎng)這種意識吧  2,為日后我們使用更大,更復(fù)雜液晶的時候避免出現(xiàn)不必要的麻煩呀!3,一顆不嚴(yán)謹(jǐn),不靠譜的心,如何給女人安全感呀?嘿嘿………..
   
怎么說液晶也算是有點(diǎn)嬌氣的東東啦!并且很多液晶價格蠻貴的!還是建議看看杭州精顯科技有關(guān)于液晶使用注意事項(xiàng)吧:
 
1.處理
(1)要避免在處理機(jī)械振動和對模塊施加外力,都可能使屏不顯示或損壞。   
(2)不能用手或堅(jiān)硬工具或物體接觸、按壓、磨擦顯示屏,否則屏上的偏光片被物體劃壞。
(3)如果屏破裂液晶材料外漏,液晶可以通過空氣被吸入,而且要避免液晶與皮膚接觸,如果接,觸應(yīng)立即用酒精沖洗,然后再用水徹底沖洗。
(4)不能使用可溶有機(jī)體來清洗顯示屏。因?yàn)檫@些可溶的溶劑對偏光片不利,清洗顯示屏?xí)r,可
用棉花蘸少量石油苯輕輕擦拭或用透明膠帶粘起臟物。
 (5)要防止高壓靜電產(chǎn)生的放電,將損壞模塊中的 CMOS 電路。
(6)不能把模塊放在溫度高的地方,尤其不能長時間放在濕度大的地方,最好把模塊放在溫度為
0℃-35℃,濕度低于 70%的環(huán)境中。
(7)模塊不能貯存在太陽直射的地方。
 
2.操作
 (1)當(dāng)電源接通時,不能組裝或拆卸模塊。
(2)在電源電壓的偏差、輸入電壓的偏差及環(huán)境溫度等最壞條件下,也不能超過最大的額定值,
否則將損壞 LCD 模塊。
 

?

群創(chuàng)液晶屏 友達(dá)液晶屏 京東方液晶屏 京瓷液晶屏 龍騰液晶屏 天馬液晶屏 奇美液晶屏 三菱液晶屏