<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > st7920控制的12864打點(diǎn)

st7920控制的12864打點(diǎn)

作者: 時(shí)間:2016-12-02 來(lái)源:網(wǎng)絡(luò ) 收藏
可以在任意位置打點(diǎn)了,在這里謝謝那些好心的人,把易于出現問(wèn)題的地方給大家說(shuō)明下,一定要仔細閱讀DATESHEET,方便后人。
1、打點(diǎn)位置的定位
2、讀取當前顯示的數據
3、或和移位,即重新寫(xiě)人的新數據
程序如下:
void GUI_Point(uchar x,uchar y,uchar flag)
{
uchar x_Dyte,x_byte; //定義列地址的字節位,及在字節中的哪1位
uchar y_Dyte,y_byte; //定義為上下兩個(gè)屏(取值為0,1),行地址(取值為0~31)
Write_command(0x36); //繪圖模式命令
/***X,Y坐標互換,即普通的X,Y坐標***/
x_Dyte=y/16; //計算在16個(gè)字節中的哪一個(gè)
x_byte=y&0x0f; //計算在該字節中的哪一位
y_Dyte=x/32; //0為上半屏,1為下半屏
y_byte=x&0x1f; //計算在0~31當中的哪一行

Write_command(0x80+y_byte); //設定行地址(y坐標)
Write_command(0x80+x_Dyte+8*y_Dyte); //設定列地址(x坐標),并通過(guò)8*y_Dyte選定上下屏

Read_data();
GDRAM_hbit=Read_data(); //讀取當前顯示高8位數據
GDRAM_lbit=Read_data(); //讀取當前顯示低8位數據
delay_us(5);

if(flag==1)
{
Write_command(0x80+y_byte); //設定行地址(y坐標)
Write_command(0x80+x_Dyte+8*y_Dyte); //設定列地址(x坐標),并通過(guò)8*y_Dyte選定上下屏
delay_us(5);
if(x_byte<8) //判斷其在高8位,還是在低8位
{
Write_data(GDRAM_hbit|(0X01<<(7-x_byte))); //顯示GDRAM區高8位數據
Write_data(GDRAM_lbit); //顯示GDRAM區低8位數據
}
else
{
Write_data(GDRAM_hbit);
Write_data(GDRAM_lbit|(0x01<<(15-x_byte)));
}
}
else
{
Write_data(0x00)); //清除GDRAM區高8位數據
Write_data(0x00)); //清除GDRAM區低8位數據
}
}


/**********讀取當前地址的LCD顯示數據**********/
uchar Read_data()
{
uchar shuju;
LCD_DATA_set_in; //端口PB設置輸入
LCD_DATA_PORT=0xff;
SET_DI; // D/I=1,代表數據
SET_RW; // R/W=1.讀取
delay_us(10);
SET_E;
delay_us(100);
shuju=PINB; //讀取當前顯示的數據
CLR_E;
return(shuju);
}



關(guān)鍵詞: st7920控制12864打

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>