智能车制作

标题: TFT ILI925显示问题 [打印本页]

作者: wanyang    时间: 2013-2-15 21:32
标题: TFT ILI925显示问题
[attach]40997[/attach]


[attach]40996[/attach]


       我之前用51单片机驱动该TFT正常,之后移植到XS128上,改了相应的代码,程序能正常初始化并刷新,之后也能写上自定义字符,但马上就白屏了,但从侧面却还可以看到模糊的字符,但刷新的背景色一点没影
       看了别人可能的解释,将RD口电平也设高了,初试化时也延时了,但还是不行啊
       不胜感激啊,QQ:974896411

作者: cgtiso    时间: 2013-2-15 22:21
是不是刷新的频率太高了啊??
作者: ☆_。寒泉..+    时间: 2013-2-16 08:13
你的IO口模拟的输入输出方向需要设置一下,51的不用设置,但是128的必须要设置输入输出,有的时候io需要输入,有的时候需要输出,可以参考野火的液晶屏程序通信方式
作者: wanyang    时间: 2013-2-16 09:36
cgtiso 发表于 2013-2-15 22:21
是不是刷新的频率太高了啊??

   主程序中我显示过后就将程序挂住了,它应该保持不变的啊
作者: wanyang    时间: 2013-2-16 09:42
☆_。寒泉..+ 发表于 2013-2-16 08:13
你的IO口模拟的输入输出方向需要设置一下,51的不用设置,但是128的必须要设置输入输出,有的时候io需要输入 ...

程序中:
  GPIO_Set(TFT_CS,DDR,TFT_CS_PIN,1);     //定义CS引脚为输出
  GPIO_Set(TFT_RST,DDR,TFT_RST_PIN,1); //定义RST引脚为输出
  GPIO_Set(TFT_RS,DDR,TFT_RS_PIN,1);     //定义RS引脚为输出
  GPIO_Set(TFT_WR,DDR,TFT_WR_PIN,1);   //定义WR引脚为输出
  GPIO_Init(TFT_RD,TFT_RD_PIN,1,1);         //定义RD引脚为输出,并初始化为高
  //GPIO_Set(TFT_RD,DDR,TFT_RD_PIN,1);   
  GPPort_Set(PB,DDR,1,0XFF);
  GPPort_Set(PT,DDR,1,0XFF);
  GPPort_Set(PT,PER,1,0XFF);                  //这里我怕是上下拉的问题还特意将T口设置了上拉
  GPPort_Set(PT,PPS,0,0X00);                  //虽然定义为输出时不需要设置该寄存器

我的程序里面全都是向TFT写数据的,没有读数据,所以都是设置的输出

作者: wanyang    时间: 2013-2-16 09:45
wanyang 发表于 2013-2-16 09:42
程序中:
  GPIO_Set(TFT_CS,DDR,TFT_CS_PIN,1);     //定义CS引脚为输出
  GPIO_Set(TFT_RST,DDR,TFT ...

这是我用的设置各寄存器配置的文件
作者: ☆_。寒泉..+    时间: 2013-2-16 10:39
    wr=1;
    rs=1;
    cs=0;

    rd=0;                     //产生一个上升沿,
        BL14002_DELAY();
        PDDR_IN();                //设置为输入 这个地方是写寄存器的地方,你的程序里也有,设置成输入,,
    data=PIN;                  //读取低8位数据  你128一直是输出,是读取不了信息的
    rd=1;
    cs=1;
        PDDR_OUT();                //切换为输出
这个程序是写内存的地方,你的程序里面也有的,51的没有设置成输入输出,因为51可以直接赋值,和读取,飞思卡尔的不行
       
作者: ☆_。寒泉..+    时间: 2013-2-16 10:40
你给我看的是最开始的初始化,你的程序是没有问题的,只是写数据的时候有问题
作者: wanyang    时间: 2013-2-16 11:38
☆_。寒泉..+ 发表于 2013-2-16 10:40
你给我看的是最开始的初始化,你的程序是没有问题的,只是写数据的时候有问题

写数据的时候有问题?
作者: ☆_。寒泉..+    时间: 2013-2-16 11:42
wanyang 发表于 2013-2-16 11:38
写数据的时候有问题?

写数据的时,IO口也要读取数据,读取数据你不得把IO设置为输入啊!你好好看看我给你的代码,对照你自己的代码,看看哪块不一样!!

作者: cgtiso    时间: 2013-2-16 11:51
wanyang 发表于 2013-2-16 09:36
主程序中我显示过后就将程序挂住了,它应该保持不变的啊

我觉得可能是你的写命令的速度太快  把之间延时加长试试呢

作者: wanyang    时间: 2013-2-16 12:31
cgtiso 发表于 2013-2-16 11:51
我觉得可能是你的写命令的速度太快  把之间延时加长试试呢

   还是一样,我现在的问题是能正常刷新,显示字符,就是字迹很淡啊,听了大家的建议情况还是没有改善
作者: wanyang    时间: 2013-2-16 12:32
☆_。寒泉..+ 发表于 2013-2-16 11:42
写数据的时,IO口也要读取数据,读取数据你不得把IO设置为输入啊!你好好看看我给你的代码,对照你自己的 ...

关键是我压根就没读取数据啊,我也不需要读取啊

作者: ☆_。寒泉..+    时间: 2013-2-16 12:33
wanyang 发表于 2013-2-16 12:32
关键是我压根就没读取数据啊,我也不需要读取啊

你把那个液晶屏的代码挂上来!

作者: wanyang    时间: 2013-2-16 12:39
谢谢大家的帮忙了,是功耗问题,程序没问题,呵呵,已经解决
作者: ☆_。寒泉..+    时间: 2013-2-16 12:39
你把51的那个代码挂上来
作者: wanyang    时间: 2013-2-16 13:44
原程序
作者: cgtiso    时间: 2013-2-16 13:45
wanyang 发表于 2013-2-16 12:39
谢谢大家的帮忙了,是功耗问题,程序没问题,呵呵,已经解决

你不会是5v的液晶3.3V供电吧

作者: wanyang    时间: 2013-2-16 14:35
cgtiso 发表于 2013-2-16 13:45
你不会是5v的液晶3.3V供电吧

       肯定不是啊。但现在有个问题是我将xs128和TFT模块的VCC、GND(不是背光电源)用同一个电源供电就会出现原来的问题。但将TFT数据口、控制口用x128控制,然后用电池供电,而将xs128连BDM插电脑就好了,怎么回事呀?




欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2