标题: 这个显示怎么有这么多竖条啊 [打印本页]

作者: denminshen    时间: 2014-12-31 16:23
标题: 这个显示怎么有这么多竖条啊
最近在网络上找了一个3310显示屏程序,用我的旧手机3310显示屏实验显示12x12字体,可是显示有许多竖条,不知道是怎么回事,请问有玩过3310LCD显示屏的朋友吗?有出现这个问题吗?要怎样解决啊?
作者: denminshen    时间: 2014-12-31 16:36
这是主C程序/*--------------------------------------------------------------*/
#include <AT89X52.H>
#include "LCD3310.H"
/*--------------------------------------------------------------*/

//延时1000000+1us 函数定义
void delay1s(void)
{
    unsigned char i,j,k;
    for(i=167;i>0;i--)
    for(j=171;j>0;j--)
    for(k=16;k>0;k--);
}


/*--------------------------------------------------------------*/
//主函数
void main(void)
{
        unsigned char LCD_contrast = 0xc0;        //此值对比度合适

        LCD3310_Init();
          while(1)
          {
          LCD_printchs(0,0,GB_12[0].Msk);//前面取0-7列中间数字取0-3行,
          delay1s();
          LCD_printchs(1,0,GB_12[1].Msk);//X列X行X个字
                  delay1s();
          LCD_printchs(2,0,GB_12[2].Msk);//X列X行X个字
                 delay1s();
          LCD_printchs(3,0,GB_12[3].Msk);//X列X行X个字
           delay1s();
          LCD_printchs(4,0,GB_12[4].Msk);//X列X行X个字
           delay1s();
          LCD_printchs(5,0,GB_12[5].Msk);//X列X行X个字
                 delay1s();
          LCD_printchs(6,0,GB_12[6].Msk);//X列X行X个字
      delay1s();
          LCD_printchs(0,1,GB_12[7].Msk);//X列X行X个字
                  delay1s();
          LCD_printchs(1,1,GB_12[8].Msk);//X列X行X个字
           delay1s();
          LCD_printchs(2,1,GB_12[9].Msk);//X列X行X个字
          delay1s();
          LCD_printchs(3,1,GB_12[10].Msk);//X列X行X个字
           delay1s();
          LCD_printchs(4,1,GB_12[11].Msk);//X列X行X个字
                 delay1s();
          LCD_printchs(5,1,GB_12[12].Msk);//X列X行X个字
                  delay1s();
          LCD_printchs(6,1,GB_12[13].Msk);//X列X行X个字
          delay1s();
          LCD_printchs(0,2,GB_12[14].Msk);//X列X行X个字
                 delay1s();
          LCD_printchs(1,2,GB_12[15].Msk);//X列X行X个字
                  delay1s();
          LCD_printchs(2,2,GB_12[16].Msk);//X列X行X个字
                delay1s();
          LCD_printchs(3,2,GB_12[17].Msk);//X列X行X个字
           delay1s();
          LCD_printchs(4,2,GB_12[18].Msk);//X列X行X个字
           delay1s();
          LCD_printchs(5,2,GB_12[19].Msk);//X列X行X个字
          delay1s();
          LCD_printchs(6,2,GB_12[20].Msk);//X列X行X个字
          delay1s();
          LCD_printchs(0,3,GB_12[21].Msk);//X列X行X个字,每字占11db
                delay1s();
          LCD_printchs(1,3,GB_12[22].Msk);//X列X行X个字
                   delay1s();
          LCD_printchs(2,3,GB_12[23].Msk);//X列X行X个字
                delay1s();
          LCD_printchs(3,3,GB_12[24].Msk);//X列X行X个字
                  delay1s();
          LCD_printchs(4,3,GB_12[25].Msk);//X列X行X个字
                   delay1s();
          LCD_printchs(5,3,GB_12[26].Msk);//X列X行X个字
                   delay1s();
          LCD_printchs(6,3,GB_12[27].Msk);//X列X行X个字*/

          delay1s();delay1s(); delay1s();
          LCD_clr_scr();                //清屏

}
}

作者: denminshen    时间: 2014-12-31 16:42
直接上程序包方便 用单字拼接显示古诗3310屏.rar (43.2 KB, 下载次数: 3)
作者: denminshen    时间: 2015-1-4 09:55
请高手老师给看看是怎么回事吧?谢谢啦!
作者: exv    时间: 2015-1-4 12:28
很可能是液晶的一个与显示有关引脚没有收到信号,检查下电路是否有断路什么的。
作者: 13751365741    时间: 2015-1-4 13:47
楼主加油
作者: denminshen    时间: 2015-1-5 14:09
exv 发表于 2015-1-4 12:28
很可能是液晶的一个与显示有关引脚没有收到信号,检查下电路是否有断路什么的。

检查后没有发现断路问题啊,朋友???
作者: exv    时间: 2015-1-5 18:36
denminshen 发表于 2015-1-5 14:09
检查后没有发现断路问题啊,朋友???

线路问题会导致这样的现象:断路,干扰都有可能。
遇到这样的情况,重新整理下电路可能恢复正常。

当然不排除其它原因导致的异常。
作者: denminshen    时间: 2015-1-8 12:09
不知道是不是程序有问题哦
作者: exv    时间: 2015-1-8 12:21
denminshen 发表于 2015-1-8 12:09
不知道是不是程序有问题哦

如果有两款这样的液晶就好办了,替换一下便知哪的问题。

还有一种可能出现这问题的情况:
液晶每写完一列会重新更新一下写入指针,但液晶与通信之间有时候没完全合拍,导致部分信息丢失有时也会有这种现象。
如是这样的话解决起来就复杂了,涉及到软硬件的匹配。(delay什么的。。。)

一个建议:
如果是练习在液晶上写程序的话,建议通用款的液晶(12864什么的),这样有疑问的话别人也好帮到你。

作者: denminshen    时间: 2015-1-9 13:53
哈哈,终于搞定了,原来是第7脚上接的电容问题,换了一个10uf的后就正常了,

作者: exv    时间: 2015-1-9 21:43
denminshen 发表于 2015-1-9 13:53
哈哈,终于搞定了,原来是第7脚上接的电容问题,换了一个10uf的后就正常了,

恭喜

这种现象大部分情况会是硬件问题。

论坛里这样个帖子“2051单片机+SD卡+3310LCD=音乐播放器(附全套制作资料)”
有意可尝试下,很有挑战性~




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1