wait英語中有等待的意思,在計算機領域它還是一種Java術語,C語言中也有wait命令。
中文名稱 | 等待 | 外文名稱 | Wait |
---|---|---|---|
其他 | Java術語 | 屬性 | 單詞 |
詞組 | wait for ,wait up | 詞性 | 動詞,名詞 |
TAO BO WILL , I wait you
利用管程實現(xiàn)同步時,還應設置條件變量和在條件變量上進行操作的兩個同步原語。
條件變量用于區(qū)別各種不同的等待原因。其說明形式為: condition : x,y;
同步原語wait和signal。wait使調用進程等待,并將它排在相應的等待隊列上;signal喚醒等待隊列的隊首進程。使用方式為:x.wait,x.signal。2100433B
編制16×16漢字顯示子函數(shù)Wr ite-Hz.其中要調用另外兩個子函數(shù)Lcd-Wait和Disp-address.Lcd-Wait為讀取液晶控制器是否忙函數(shù),而Disp-address為液晶控制器顯示緩沖區(qū)地址設置函數(shù),可根據液晶控制器資料編制。根據液晶控制器T 6963的操作方法,每次對液晶控制器進行讀寫時,應執(zhí)行Lcd-Wait函數(shù)判斷液晶控制器是否忙,在將漢字字模數(shù)據寫入液晶控制器顯示緩沖區(qū)前,應根據漢字在液晶屏上的顯示位置設定寫入數(shù)據的液晶控制器顯示緩沖區(qū)地址,具體Write-Hz如下:
//x,y為漢字在液晶屏的顯示位置坐標,
//p為要顯示的漢字在數(shù)組中的下標。
{
Uchar i,low-ad,hig h??ad;
Uint addr ess,tp;
address=(Uint)x*Wide+y;//**
//根據要顯示漢字在液晶屏幕的橫坐標和縱坐標
//設定液晶控制器的顯示緩沖區(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);
//設定寫入地址
Lcd-Wait();
Lcd-Data=*(VBYT E(Hz-Dot+p+i));
//從EEPROM中提取漢字字模
Lcd-Wait();
Lcd-Code=0xC4;//寫數(shù)據命令
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對應液晶屏幕的顯示位置,以屏幕左上角為原點,x為縱坐標,y為橫坐標,其在液晶控制器顯示緩沖區(qū)中的地址通過行**計算出,該行中Wide為事先定義的液晶屏每行字節(jié)數(shù),對于DG12864液晶模塊而言,Wide為16。
函數(shù)Write-Hz根據16×16點陣漢字在液晶控制器顯示緩沖區(qū)的存放形式,依次改變顯示地址,先將左半部1~16個字節(jié)寫入顯示緩沖區(qū),再寫入右半部17~32個字節(jié)。設"合肥"兩字存放在2864中最前列,則"合"字模首字節(jié)在2864中的偏移地址為0,共32個字節(jié),緊跟在后面的肥!字模的首地址為0x20,若要液晶模塊顯示合肥!兩字,只要在程序中帶顯示地址參數(shù)調用該函數(shù)即可。如:
Write-Hz(0,4,0);//合
Write-Hz(0,10,0x20);//肥
4結語
本文介紹了圖形液晶的漢字顯示方法,并以8051單片機為基礎,結合液晶模塊與單片機的典型接口電路,敘述了使用EEPROM或EPROM存放漢字字模的方法,并給出C51程序例子,具有很強的使用指導性。
文章原創(chuàng)來于液晶屏:http://www.hzjingxian.com,轉載請注明出處