找回密碼
         注冊會員
        搜索附件  
        MCU資訊論壇 附件中心 單片機論壇 51單片機論壇 5_81113_c206d6d1481b4fa.jpg

        5_81113_c206d6d1481b4fa.jpg

         

        帶中文字庫320240圖形點陣液晶顯示屏的點亮:




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


            sbit cs1=P2^3; 片選信號,低電平選中有效
            sbit rs=P2^0;  命令和數據選擇信號,低寫入的為數據,高寫如的是指令
            sbit wr=P2^1;  寫信號
            sbit rd=P2^2;  讀信號
            sbit busy=P2^4; 忙信號
            sbit rst=P2^5;  復位信號
            #define BUS P1 數據口P1作為數據輸入口
            首先看讀寫子程序,8806的指令寫入規則是先將指令寄存器REG#寫入,例如:我們現在要對WCLR寄存器操作,那么我們就得首先將00H(REG#)寫入,然后將數據寫入
            void LCD_CmdWrite(unsigned char cmdaddr)//8080
        { cs1=0;
        rd=1;
        rs=1;
        BUS=cmdaddr;
        wr=0;
        wr=1;
        cs1=1; /8080時序
        }
        將REG#值寫入程序
        void LCD_DataWrite(unsigned char wrdata)
        { while(busy==0);
        cs1=0;
        rd=1;
        rs=0;
        BUS=wrdata;
        wr=0;
        wr=1;
        cs1=1;
        }
        數據寫入子程序
        假設我們對WCLR設置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 需要調整
        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);
        }
          初始化程序,大家可以參考芯片的規格書理解

        顯示漢字子程序:

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

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



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





        5_81113_c206d6d1481b4fa.jpg

        QQ|手機版|MCU資訊論壇 ( 京ICP備18035221號-2 )|網站地圖

        GMT+8, 2025-5-5 09:04 , Processed in 0.047380 second(s), 8 queries , Redis On.

        Powered by Discuz! X3.5

        © 2001-2025 Discuz! Team.

        返回頂部
        国产精品久久久久久久午夜片| 日韩精品国产另类专区 | 欧美日韩综合精品| 69福利青草视频在线观看| 国产成人无码久久久精品一| 91在线手机精品超级观看| 久久精品夜色噜噜亚洲A∨| 国内精品久久久久影院不卡 | 国产天天综合永久精品日| 最新国产精品拍自在线观看| 精品无码一区在线观看| 成人午夜精品亚洲日韩| 亚洲电影日韩精品| 99re66热这里只有精品| 精品久久久无码中文字幕天天 | 韩国精品欧美一区二区三区| 精品成人一区二区三区四区| 男人把女人捅爽视频| 国产精品一二三区| 亚洲日韩精品无码专区网站| 99热国内精品| 亚洲精品乱码久久久久久不卡| 国产成人精品日本亚洲网站| 欧美成人精品欧美一级乱黄码| 国产精品毛片一区二区三区 | 精品久久久久久亚洲精品 | 亚洲色精品aⅴ一区区三区| 久久国产亚洲精品麻豆| 亚洲日韩欧美制服精品二区| 国产精品久久网| 中文字幕在线视频不卡| 欧美精品国产日韩综合在线| 男人天堂视频在线| 91亚洲精品自在在线观看| 欧美日韩免费一区二区三区| 欧美+亚洲+精品+三区| baoyu亚洲欧美电影院| 国产精品区AV一区二区| 精品亚洲成AV人在线观看| 久久精品无码一区二区app| 国产成人精品无码播放|