LCD12864显示不全

2019-07-15 08:34发布

捕获2.PNG 捕获1.PNG
左图是原图,右图是仿真出来的图
用LCD12864显示图片的时候,水平方向只有屏幕左边16个点会显示,垂直方向能够全部显示,大家能够帮忙回答一下吗?谢谢
  1. void v_Lcd12864DrawPicture_f( unsigned char code *pPicture )
  2. {
  3.     unsigned char i, j, k ;
  4.           v_Lcd12864SendCmd_f( 0x34 );
  5.     for( i = 0 ; i < 2 ; i++ )//·ÖÉÏÏÂÁ½ÆÁд
  6.     {
  7.         for( j = 0 ; j < 32 ; j++ )
  8.         {
  9.             v_Lcd12864SendCmd_f( 0x80 + j ) ;//дY×ø±ê
  10.                                                 if( i == 0 )                    //дX×ø±ê
  11.             {
  12.                 v_Lcd12864SendCmd_f( 0x80 ) ;
  13.             }
  14.             else
  15.             {
  16.                 v_Lcd12864SendCmd_f( 0x88 ) ;
  17.             }
  18.             for( k = 0 ; k < 16 ; k++ )      //дһÕûÐÐÊý¾Ý
  19.             {
  20.                 v_Lcd12864SendData_f( *pPicture++ ) ;
  21.             }
  22.         }
  23.     }
  24.                 v_Lcd12864SendCmd_f( 0x36 ) ;
  25.     v_Lcd12864SendCmd_f( 0x30 ) ;
  26. }
复制代码

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
9条回答
人中狼
2019-07-15 16:55
确定一下你选用的12864的参数吧,i=0和1,应该时左右屏的判断,如果分左右屏的话,那就是两个64X64点的屏,最多也只需要写64个点,而不是128个。
另外还有12864显示的方向,是一个字节代表横向显示,还是纵向显示。j的范围是32,这个也只是64的一半。
个人认为应该写个测试程序,能够显示全屏,来判断12864的各个参数

一周热门 更多>