找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 2126|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

請(qǐng)問(wèn)12864網(wǎng)上看的畫(huà)點(diǎn)代碼有問(wèn)題,高八位寫(xiě)啥,低八位也就寫(xiě)啥。是不是型號(hào)問(wèn)題

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:220385 發(fā)表于 2017-7-17 19:48 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
請(qǐng)問(wèn)12864網(wǎng)上看的畫(huà)點(diǎn)代碼有問(wèn)題,高八位寫(xiě)啥,低八位也就寫(xiě)啥。是不是型號(hào)問(wèn)題
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:202713 發(fā)表于 2017-7-18 00:11 | 只看該作者
這個(gè)程序也是借用人家的,已經(jīng)運(yùn)行過(guò)了

//************************打點(diǎn)函數(shù)參數(shù):color=1:該點(diǎn)填充1,顯示;color=0:該點(diǎn)填充0,不顯示************************//

void Fill_Point(uchar x,uchar y, uchar color)
{
        uchar x_Dyte,x_byte;                                //定義列地址的字節(jié)位及在字節(jié)中的哪一位
        uchar        y_Dyte,y_byte;                                //上下兩個(gè)屏(0,1),行地址(0~31)
        uchar        GDRAM_hbit,GDRAM_lbit;

        write_cmd(0x36);                                        //擴(kuò)展指令集
                                                                                //---XY坐標(biāo)互換,即普通的X,Y坐標(biāo)---
        x_Dyte=x/16;                                                //計(jì)算在16個(gè)字節(jié)中的哪一個(gè)
        x_byte=x&0x0f;                                                //計(jì)算在該字節(jié)中的哪一位
        y_Dyte=y/32;                                                //0為上半屏,1為下半屏
        y_byte=y&0x1f;                                                //計(jì)算在0~31中的哪一行

        write_cmd(0x80+y_byte);                                //設(shè)定行地址(y坐標(biāo)),即垂直坐標(biāo)
        write_cmd(0x80+x_Dyte+8*y_Dyte);        //設(shè)定列地址(x坐標(biāo)),并通過(guò)8*y_Dyte選定上下,水平地址
       
        ReadData();                                                        //預(yù)讀取數(shù)據(jù)
        GDRAM_hbit=ReadData();                                //讀取當(dāng)前顯示高八位數(shù)據(jù)
        GDRAM_lbit=ReadData();                                //讀取當(dāng)前顯示第八位數(shù)據(jù)
        delay_1ms(1);

        write_cmd(0x80+y_byte);                                //設(shè)定行地址(y坐標(biāo))
        write_cmd(0x80+x_Dyte+8*y_Dyte);        //設(shè)定列地址(x坐標(biāo)),并通過(guò)8*y_Dyte選定上下,即水平地址

        delay_1ms(1);
        if(x_byte<8)                                                //判斷其在高八位還是低八位
        {
                if(color==1)
                {
                        write_dat(GDRAM_hbit|(0x01<<(7-x_byte)));//置位GDRAM高八位數(shù)據(jù)中相應(yīng)的
                }
                else
                        write_dat(GDRAM_hbit&(~(0x01<<(7-x_byte))));//清除GDRAM區(qū)高八位數(shù)據(jù)中相應(yīng)的點(diǎn)
                write_dat(GDRAM_lbit);//顯示GDRAM區(qū)低八位數(shù)據(jù)
        }
        else
        {
                write_dat(GDRAM_hbit);
                if(color==1)
                write_dat(GDRAM_lbit|(0x01<<(15-x_byte)));//置位GDRAM區(qū)高八位數(shù)據(jù)中相應(yīng)的點(diǎn)
                else
                write_dat(GDRAM_lbit&(~(0x01<<(15-x_byte))));//清除GDRAM區(qū)高八位數(shù)據(jù)中相應(yīng)的點(diǎn)
        }
        write_cmd(0x30);//恢復(fù)到基本指令集
}
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表