在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > lcd1602 屏驅(qū)動(自定義字符)

            lcd1602 屏驅(qū)動(自定義字符)

            作者: 時(shí)間:2016-12-01 來源:網(wǎng)絡(luò) 收藏

            //顯示字符
            void zf_1602(unsigned char x,unsigned char y,unsigned dat) //參數(shù)一是顯示的列,參數(shù)二是顯示的行,參數(shù)三是顯示的數(shù)據(jù)
            {
            if(y==0)
            {
            x_1602(0,(0x80+x)); //第一行
            }
            else
            {
            x_1602(0,(0xc0+x)); //第二行
            }
            x_1602(1,dat); //寫入數(shù)據(jù)
            }
            void zfc_1602(unsigned char x,unsigned char y,unsigned char *dat)
            {
            if(y==0)
            {
            x_1602(0,(0x80+x)); //第一行
            }
            else
            {
            x_1602(0,(0xc0+x)); //第二行
            }
            while(*dat) //&:取地址 *:取值
            {
            x_1602(1,*dat);
            dat ++;
            }
            }
            void csh_1602() //初始化1602
            {
            x_1602(0,0x38); //顯示模式設(shè)置
            Delayms(5);
            x_1602(0,0x38);
            Delayms(5);
            x_1602(0,0x38);
            Delayms(5);
            x_1602(0,0x38);
            x_1602(0,0x08); //顯示關(guān)閉.
            x_1602(0,0x01); //顯示清屏
            x_1602(0,0x06); //顯示光標(biāo)移動設(shè)置
            Delayms(5);
            x_1602(0,0x0c); //顯示開及光標(biāo)設(shè)置
            }
            void main()
            {
            csh_1602();
            qp_1602();
            while(1)
            {
            zf_1602(0,0,Q); //寫入字符
            zf_1602(1,0,Q); //寫入字符
            zf_1602(2,0, ); //寫入字符
            zfc_1602(3,0,"www.baidu.con"); //寫入字符串
            zfc_1602(1,1,"1990.02.08"); //寫入字符串
            while(1);
            }
            }

            本文引用地址:http://www.biyoush.com/article/201612/324241.htm

            自定義字符 (轉(zhuǎn))

            圖示:

            用戶自定義字符的應(yīng)用:
            我們從CGROM表上可以看到,在表的最左邊是一列可以允許用戶自定義的CGRAM,從上往下看著是16個(gè),實(shí)際只有8個(gè)字節(jié)可用。它的字符碼是 00000000-00000111這8個(gè)地址,表的下面還有8個(gè)字節(jié),但因?yàn)檫@個(gè)CGRAM的字符碼規(guī)定0-2位為地址,3位無效,4-7全為零。因此 CGRAM的字符碼只有最后三位能用也就是8個(gè)字節(jié)了。等效為0000X111,X為無效位,最后三位為000-111共8個(gè)。
            如果我們要想顯示這8個(gè)用戶自定義的字符,操作方法和顯示CGROM的一樣,先設(shè)置DDRAM位置,再向DDRAM寫入字符碼,例如“A”就是41H?,F(xiàn)在我們要顯示 CGRAM的第一個(gè)自定義字符,就向DDRAM寫入00000000B(00H),如果要顯示第8個(gè)就寫入00000111(08H),簡單吧!
            好!現(xiàn)在我們來看怎么向這八個(gè)自定義字符寫入字模。有個(gè)設(shè)置CGRAM地址的指令如下圖:


            從這個(gè)指令可以看出指令數(shù)據(jù)的高2位已固定是01,只有后面的6位是地址數(shù)據(jù),而這6位中的高3位就表示這八個(gè)自定義字符,最后的3位就是字模數(shù)據(jù)的八個(gè)地址了。例如第一個(gè)自定義字符的字模地址為01000000-01000111八個(gè)地址。我們向這8個(gè)字節(jié)寫入字模數(shù)據(jù),讓它能顯示出“℃”
            地址:01000000  數(shù)據(jù):00010000 圖示: ○○○■○○○○
               01000001     00000110 ○○○○○■■○
               01000010     00001001 ○○○○■○○■
               01000011     00001000 ○○○○■○○○
               01000100     00001000 ○○○○■○○○
               01000101     00001001 ○○○○■○○■
               01000110     00000110 ○○○○○■■○
               01000111     00000000 ○○○○○○○○



            上一頁 1 2 下一頁

            關(guān)鍵詞: lcd1602屏驅(qū)動字

            評論


            技術(shù)專區(qū)

            關(guān)閉