找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2883|回复: 11
收起左侧

这个显示怎么有这么多竖条啊

[复制链接]
ID:69408 发表于 2014-12-31 16:23 | 显示全部楼层 |阅读模式
最近在网络上找了一个3310显示屏程序,用我的旧手机3310显示屏实验显示12x12字体,可是显示有许多竖条,不知道是怎么回事,请问有玩过3310LCD显示屏的朋友吗?有出现这个问题吗?要怎样解决啊? IMG0457A.jpg
回复

使用道具 举报

ID:69408 发表于 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();                //清屏

}
}
回复

使用道具 举报

ID:69408 发表于 2014-12-31 16:42 | 显示全部楼层
直接上程序包方便 用单字拼接显示古诗3310屏.rar (43.2 KB, 下载次数: 3)
回复

使用道具 举报

ID:69408 发表于 2015-1-4 09:55 | 显示全部楼层
请高手老师给看看是怎么回事吧?谢谢啦!
回复

使用道具 举报

ID:67796 发表于 2015-1-4 12:28 | 显示全部楼层
很可能是液晶的一个与显示有关引脚没有收到信号,检查下电路是否有断路什么的。
回复

使用道具 举报

ID:71459 发表于 2015-1-4 13:47 | 显示全部楼层
楼主加油
回复

使用道具 举报

ID:69408 发表于 2015-1-5 14:09 | 显示全部楼层
exv 发表于 2015-1-4 12:28
很可能是液晶的一个与显示有关引脚没有收到信号,检查下电路是否有断路什么的。

检查后没有发现断路问题啊,朋友???
回复

使用道具 举报

ID:67796 发表于 2015-1-5 18:36 | 显示全部楼层
denminshen 发表于 2015-1-5 14:09
检查后没有发现断路问题啊,朋友???

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

当然不排除其它原因导致的异常。
回复

使用道具 举报

ID:69408 发表于 2015-1-8 12:09 | 显示全部楼层
不知道是不是程序有问题哦
回复

使用道具 举报

ID:67796 发表于 2015-1-8 12:21 | 显示全部楼层
denminshen 发表于 2015-1-8 12:09
不知道是不是程序有问题哦

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

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

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

使用道具 举报

ID:69408 发表于 2015-1-9 13:53 | 显示全部楼层
哈哈,终于搞定了,原来是第7脚上接的电容问题,换了一个10uf的后就正常了, IMG0459A.jpg
回复

使用道具 举报

ID:67796 发表于 2015-1-9 21:43 | 显示全部楼层
denminshen 发表于 2015-1-9 13:53
哈哈,终于搞定了,原来是第7脚上接的电容问题,换了一个10uf的后就正常了,

恭喜

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

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

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表