jennyzhaojie 发表于 2017-11-7 11:26

基于CH554开发板的LCD12864液晶屏显示

<div class='showpostmsg'>    本想为CH554配上应该TFT串口屏,无奈板上提供的3.3V引脚过少,在测试时把串口屏给毁了!只能改以LCD12864液晶屏用串行方式来替换TFT的实验。由于该显示屏自带中文字库,所以在显示字符和中文信息方面会十分方便,图1 是它的显示效果。图1 唐诗显示效果
         LCD12864液晶屏与CH554开发板的连接情况如图2所示,仅需要使用4条连接线。

图2 硬件连接情况
在这款屏的显示方式中,只需占用2个I/O口,所以用它还是比较实惠的,它与CH554的连接关系如下: 1. Vss   接电源地2. Vcc   接5V电源3. Vo    接5V电源4. E   接5V电源 5. SID   接P1.06. SCL   接P1.1 LCD12864的初始化函数为:void LCD_Init(void)
{
        uchar cmd;
        cmd=0x30;       
        W_1byte(0,0,cmd);
        mDelaymS(2);
        cmd=0x0C;       
        W_1byte(0,0,cmd);
        mDelaymS(2);
        cmd=0x01;                       
        W_1byte(0,0,cmd);       
        mDelaymS(2);
        cmd=0x02;                       
        W_1byte(0,0,cmd);       
        mDelaymS(2);
        cmd=0x80;                       
        W_1byte(0,0,cmd);       
        mDelaymS(2);
}
相应的定位显示函数为:void Char_Set_XY(uchar x, uchar y,const uchar *p)
{
    if(y == 0)
        {
               W_1byte(0,0,(0x80+x));       
        }
        if(y == 1)
        {
                W_1byte(0,0,(0x90+x));
        }
        if(y == 2)
        {
                W_1byte(0,0,(0x88+x));
        }
        if(y == 3)
        {
                W_1byte(0,0,(0x98+x));
        }
        while(*p != 0)
        {
                W_1byte(0,1,*p++);
        }
}
实现显示效果的主函数为:void main( )
{
      CfgFsys( );            //CH554时钟选择配置   
      mDelaymS(20);
      mInitSTDIO( );         //串口0初始化
      Clr_CS();
          Clr_SID();
          Clr_SCLK();
          LCD_Init();                              
          mDelaymS(500);
          Char_Set_XY(0,0,"春眠不觉晓,");
          Char_Set_XY(0,1,"处处闻啼鸟。");
          Char_Set_XY(0,2,"夜来风雨声,");
          Char_Set_XY(0,3,"花落知多少。");
while(1);
}


此内容由EEWORLD论坛网友jennyzhaojie原创,如需转载或用于商业用途需征得作者同意并注明出处

</div><script>                                        var loginstr = '<div class="locked">查看本帖全部内容,请<a href="javascript:;"   style="color:#e60000" class="loginf">登录</a>或者<a href="https://bbs.eeworld.com.cn/member.php?mod=register_eeworld.php&action=wechat" style="color:#e60000" target="_blank">注册</a></div>';
                                       
                                        if(parseInt(discuz_uid)==0){
                                                                                                (function($){
                                                        var postHeight = getTextHeight(400);
                                                        $(".showpostmsg").html($(".showpostmsg").html());
                                                        $(".showpostmsg").after(loginstr);
                                                        $(".showpostmsg").css({height:postHeight,overflow:"hidden"});
                                                })(jQuery);
                                        }                </script><script type="text/javascript">(function(d,c){var a=d.createElement("script"),m=d.getElementsByTagName("script"),eewurl="//counter.eeworld.com.cn/pv/count/";a.src=eewurl+c;m.parentNode.insertBefore(a,m)})(document,523)</script>

沁恒USB单片机 发表于 2017-11-14 15:21

:handshake:victory:
页: [1]
查看完整版本: 基于CH554开发板的LCD12864液晶屏显示