找回密碼
         注冊會員
        搜索附件  
        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.

        返回頂部
        精品精品国产理论在线观看| 午夜欧美精品久久久久久久| 亚洲精品国产精品乱码不卡√| 国产精品亚洲综合| 欧美精品黑人粗大免费| 99国产精品国产精品九九| 亚洲国产精品久久久久久| 久热精品视频第一页| 婷婷五月深深久久精品| 精品视频在线免费观看| 久久噜噜久久久精品66| 亚洲AV无码成人精品区在线观看 | 久久中文字幕亚洲精品最新| 国产精品亚韩精品无码a在线| 国产成人精品一区二区三区| 伊人久久大香线蕉精品不卡| 国产l精品国产亚洲区在线观看| 国产精品美女WWW爽爽爽视频| 日韩高清的天堂在线观看免费| 国产精品一区二区久久精品| 合区精品久久久中文字幕一区 | 精品久久久久久99人妻| 5566成人免费视频观看| 精品在线免费观看| 亚洲欧美一级久久精品| 97久久超碰国产精品旧版| 久久国产精品视频| 欧美日韩人妻精品一区二区在线 | 亚洲精品国产V片在线观看| 国产精品人成在线播放新网站 | 一本一本久久A久久综合精品| 四虎在线精品视频一二区| 日韩美女在线视频| 99热热久久这里只有精品68| 亚洲精品自在在线观看| 91无码人妻精品一区二区三区L| 国产一区二区不卡视频| 99久久免费只有精品国产| 亚洲一区精品无码| 国产精品午夜福利在线无码| 精品一区二区三区波多野结衣|