液晶顯示器的漢字顯示方法
// 根據(jù)要顯示漢字在液晶屏幕的橫坐標(biāo)和縱坐標(biāo)
// 設(shè)定液晶控制器的顯示緩沖區(qū)的偏移地址
tp= address;
for ( i= 0; i 16; i+ + ) / / 寫左半部
{
low-ad= ( Uchar) ( tp 0x f f) ;
hig h-ad= ( Uchar) ( tp 8) ;
Disp-address( low-ad, high-ad) ;
/ / 設(shè)定寫入地址
Lcd-Wait ( ) ;
Lcd-Data = * ( VBYT E( Hz-Dot+ p+ i ) ) ;
/ / 從EEPROM 中提取漢字字模
Lcd-Wait ( ) ;
Lcd-Code= 0xC4; / / 寫數(shù)據(jù)命令
tp= tp+ Wide;
}
address+ + ;
tp= address;
fo r( i= 0; i 16; i+ + ) / / 寫右半部
{
low-ad= ( U char) ( tp 0xf f ) ;
hig h-ad= ( Uchar) ( tp 8) ;
Disp-address( low??ad, high??ad) ;
Lcd-Wait ( ) ;
Lcd-Data = * ( VBYTE ( Hz-Dot+ p+16+ i) ) ;
Lcd-Wait ( ) ;
Lcd-Code= 0xC4;
tp= tp+ Wide;
}
}
函數(shù)Wr ite??Hz 的參數(shù)x 和y 對應(yīng)液晶屏幕的顯示位置, 以屏幕左上角為原點(diǎn), x 為縱坐標(biāo), y為橫坐標(biāo), 其在液晶控制器顯示緩沖區(qū)中的地址通過行* * 計(jì)算出, 該行中Wide 為事先定義的液晶屏每行字節(jié)數(shù), 對于DG12864 液晶模塊而言,Wide 為16。
函數(shù)Write-Hz 根據(jù)16×16 點(diǎn)陣漢字在液晶控制器顯示緩沖區(qū)的存放形式, 依次改變顯示地址, 先將左半部1~ 16 個(gè)字節(jié)寫入顯示緩沖區(qū), 再寫入右半部17~ 32 個(gè)字節(jié)。設(shè)合肥兩字存放在2864 中最前列, 則合字模首字節(jié)在2864 中的偏移地址為0, 共32 個(gè)字節(jié), 緊跟在后面的肥!字模的首地址為0x20, 若要液晶模塊顯示合肥!兩字, 只要在程序中帶顯示地址參數(shù)調(diào)用該函數(shù)即可。如:
Write-Hz( 0, 4, 0) ; / / 合
Write-Hz( 0, 10, 0x20) ; / / 肥
4 結(jié) 語。
本文介紹了圖形液晶的漢字顯示方法, 并以8051 單片機(jī)為基礎(chǔ), 結(jié)合液晶模塊與單片機(jī)的典型接口電路, 敘述了使用EEPROM 或EPROM存放漢字字模的方法, 并給出C51 程序例子, 具有很強(qiáng)的使用指導(dǎo)性。
led顯示器相關(guān)文章:led顯示器原理
存儲器相關(guān)文章:存儲器原理
評論