找回密碼
         注冊(cè)會(huì)員
        搜索附件  

        ra8806_hz.txt

         

        帶中文字庫(kù)320240圖形點(diǎn)陣液晶顯示屏的點(diǎn)亮:




         [p]大家好,第一次在本論壇發(fā)帖,本帖主要介紹一款內(nèi)建中文字庫(kù)的液晶模塊,此模塊是由深圳市卓立恩科技公司研發(fā)的新型液晶,主控芯片是RA8806,此芯片功能十分強(qiáng)大,不僅自帶中文字庫(kù),還自帶電阻式觸摸驅(qū)動(dòng)功能,非常適合廣大單片機(jī)愛(ài)好者學(xué)習(xí)編程,廢話不多說(shuō),現(xiàn)在來(lái)介紹這款液晶顯示屏的點(diǎn)亮.
          芯片資料見(jiàn)附件(只有英文的),首先我們應(yīng)該知道怎么樣去看液晶驅(qū)動(dòng)IC的資料,重點(diǎn)在哪里?我的經(jīng)驗(yàn)是1.讀寫(xiě)時(shí)序,這個(gè)要小心,一般液晶控制芯片的時(shí)序分為8080,6800,根據(jù)規(guī)格書(shū)寫(xiě)出讀寫(xiě)子程序,我們?cè)趯?xiě)液晶程序時(shí)有時(shí)候沒(méi)有顯示,程序檢查半天發(fā)現(xiàn)是讀寫(xiě)子程序錯(cuò)誤.2.?dāng)?shù)據(jù)和命令指令寫(xiě)入規(guī)則.3.顯示存儲(chǔ)器的寫(xiě)入規(guī)則.4.指令內(nèi)容和作用,要點(diǎn)亮屏一般只要用到幾個(gè)關(guān)鍵的指令就好了.
          下面是引腳定義


            sbit cs1=P2^3; 片選信號(hào),低電平選中有效
            sbit rs=P2^0;  命令和數(shù)據(jù)選擇信號(hào),低寫(xiě)入的為數(shù)據(jù),高寫(xiě)如的是指令
            sbit wr=P2^1;  寫(xiě)信號(hào)
            sbit rd=P2^2;  讀信號(hào)
            sbit busy=P2^4; 忙信號(hào)
            sbit rst=P2^5;  復(fù)位信號(hào)
            #define BUS P1 數(shù)據(jù)口P1作為數(shù)據(jù)輸入口
            首先看讀寫(xiě)子程序,8806的指令寫(xiě)入規(guī)則是先將指令寄存器REG#寫(xiě)入,例如:我們現(xiàn)在要對(duì)WCLR寄存器操作,那么我們就得首先將00H(REG#)寫(xiě)入,然后將數(shù)據(jù)寫(xiě)入
            void LCD_CmdWrite(unsigned char cmdaddr)//8080
        { cs1=0;
        rd=1;
        rs=1;
        BUS=cmdaddr;
        wr=0;
        wr=1;
        cs1=1; /8080時(shí)序
        }
        將REG#值寫(xiě)入程序
        void LCD_DataWrite(unsigned char wrdata)
        { while(busy==0);
        cs1=0;
        rd=1;
        rs=0;
        BUS=wrdata;
        wr=0;
        wr=1;
        cs1=1;
        }
        數(shù)據(jù)寫(xiě)入子程序
        假設(shè)我們對(duì)WCLR設(shè)置00H的初值,則:

        LCD_CmdWrite(WLCR); //[00H] , Default --> 0x00
        LCD_DataWrite(0x00);
        即可.
        void lcd_inital()
        {
        LCD_CmdWrite(WLCR); //[00H] , Default --> 0x00
        LCD_DataWrite(0x00);

        LCD_CmdWrite(MISC); //[01H] , Default --> 0x00
        LCD_DataWrite(0x08);

        LCD_CmdWrite(ADSR); //[03H] , Default --> 0x00
        LCD_DataWrite(0x00);

        LCD_CmdWrite(INTR); //[0FH] , Default --> 0x00
        LCD_DataWrite(0x00);

        LCD_CmdWrite(WCCR); //[10H] , Default --> 0x00
        LCD_DataWrite(0x00);

        LCD_CmdWrite(CHWI); //[11H] , Default --> 0x00
        LCD_DataWrite(0x00);

        LCD_CmdWrite(MAMR); //[12H] , Default --> 0x11
        LCD_DataWrite(0x11);

        LCD_CmdWrite(AWRR); //[20H] , Default --> 0x27
        LCD_DataWrite(39);

        LCD_CmdWrite(DWWR); //[21H] , Default --> 0x27
        LCD_DataWrite(39);

        LCD_CmdWrite(AWBR); //[30H] , Default --> 0xEF
        LCD_DataWrite(239);

        LCD_CmdWrite(DWHR); //[31H] , Default --> 0xEF
        LCD_DataWrite(239);

        LCD_CmdWrite(AWLR); //[40H] , Default --> 0x00
        LCD_DataWrite(0x00);

        LCD_CmdWrite(AWTR); //[50H] , Default --> 0x00
        LCD_DataWrite(0x00);

        LCD_CmdWrite(CURX); //[60H] , Default --> 0x00
        LCD_DataWrite(0x00);

        LCD_CmdWrite(BGSG); //[61H] , Default --> 0x00
        LCD_DataWrite(0x00);

        LCD_CmdWrite(EDSG); //[62H] , Default --> 0x00
        LCD_DataWrite(0x00);

        LCD_CmdWrite(CURY); //[70H] , Default --> 0x00
        LCD_DataWrite(0x00);

        LCD_CmdWrite(BGCM); //[71H] , Default --> 0x00
        LCD_DataWrite(0x00);

        LCD_CmdWrite(EDCM); //[72H] , Default --> 0x00
        LCD_DataWrite(0x00);

        LCD_CmdWrite(BTMR); //[80H] , Default --> 0x00
        LCD_DataWrite(0x00);

        LCD_CmdWrite(ITCR); //[90H] , Default --> 0x00 需要調(diào)整
        LCD_DataWrite(0x80);

        LCD_CmdWrite(PNTR); //[E0H] , Default --> 0x00
        LCD_DataWrite(0x00);

        LCD_CmdWrite(FNCR); //[F0H] , Default --> 0x00
        LCD_DataWrite(0x00);

        LCD_CmdWrite(FVHT); //[F1H] , Default --> 0x00
        LCD_DataWrite(0x00);
        }
          初始化程序,大家可以參考芯片的規(guī)格書(shū)理解

        顯示漢字子程序:

        void display_word(unsigned char code *cha, int count )
        {
        unsigned int iiii=0;
        LCD_CmdWrite(0x00);  
        LCD_DataWrite(0x0c); /文字模式開(kāi)
        LCD_CmdWrite(0x60);
        LCD_DataWrite(0x00); /設(shè)置x光標(biāo)的位置
        LCD_CmdWrite(0x70);
        LCD_DataWrite(0x00); /設(shè)置y光標(biāo)的位置
        LCD_CmdWrite(0xb0); /寫(xiě)數(shù)據(jù)模式
        for(iiii=0;iiii<count;iiii++)
        {
        LCD_DataWrite(*cha);
        ++cha;
        delay_nms(1);
        }
        }

        大家可以參考8806規(guī)格書(shū)理解
        附件為8806顯示漢字程序
        我的郵箱:
        xuleif1984@yahoo.com.cn



        抱歉,之前程序上傳有失誤,再傳一次
        [ 此貼被fongmj在2009-11-19 12:52重新編輯 ]





        QQ|手機(jī)版|MCU資訊論壇 ( 京ICP備18035221號(hào)-2 )|網(wǎng)站地圖

        GMT+8, 2025-5-5 05:10 , Processed in 0.040391 second(s), 8 queries , Redis On.

        Powered by Discuz! X3.5

        © 2001-2025 Discuz! Team.

        返回頂部
        国产精品极品| 欧美精品在线免费| 亚洲av无码成人精品国产| 日本熟妇亚洲欧美精品区| 最新国产乱人伦偷精品免费网站| 亚洲精品无码AV人在线播放| 精品成在人线AV无码免费看 | 亚洲av无码国产精品夜色午夜| 嫖妓丰满肥熟妇在线精品| 国产精品素人搭讪在线播放| 国产精品最新国产精品第十页| 亚洲精品国产精品国自产观看| 久久亚洲美女精品国产精品| 久久国产精品-国产精品| 久久久精品久久久久特色影视| 国产98在线精品一区| 99久久99这里只有免费的精品| 国产精品综合专区中文字幕免费播放| 日本高清在线不卡码ⅴ| 国产精品久久成人影院| 久久精品国产第一区二区| 日韩精品乱码AV一区二区| 白浆都出来了视频国产精品| 最近中文字幕免费mv视频多少集| 99在线精品一区二区三区| 精品视频在线观看你懂的一区| 午夜精品久久久久久久| 91亚洲精品麻豆| 免费国产阿v视频在线观看| 精品视频一区二区三区在线观看| 亚洲精品无码成人片在线观看| 2022国产精品福利在线观看| 欧美人与性动交α欧美精品| 久久久无码精品亚洲日韩蜜臀浪潮| 99国内精品久久久久久久| 免费国产阿v视频在线观看| 五月花精品视频在线观看| 欧美乱大交xxxxx| 视频二区国产精品职场同事| 国产成人手机在线| 91人前露出精品国产|