2011-06-21 22:04:54

LCD连接好了,读id,不成功。说明配置引脚或读写时序不对。
原来是软件引脚配置出错。
应该用如下。
#define LCD_CS   {3<<30,'E',PIO_OUTPUT_0,
PIO_PULLUP,1<<30,1<<15}
    rGPACON&=~mask;
    rGPACON|=PullUpmask;

mask是3<<30,PullUpmask是1<<30.

我一开始用的如下
#define LCD_CS   {1<<30,'E',PIO_OUTPUT_0,
PIO_PULLUP,1<<30,1<<15}
    rGPACON&=~mask;
    rGPACON|=PullUpmask;

mask是1<<30,PullUpmask是1<<30.
现在想想一字之差,就差那么远。应该控制一个硬件是2个bit组合起来的。我只修改1bit那么是不对的。
但是又说明了一个问题,我半年前做的pio.c文件中的函数有问题,不正规。使用不方便。以后我要重新修改。

又过了45分钟,当我把读写时序改成别人的一样的,但是还是不行。没折了。这时候突然想到了reset脚我没用。是不是很重要呢,看了别人的程序,一开始的时候要reset1次哦。估计这个脚要用的。我定义下。

用了reset还是没起作用。我开始怀疑线是否太长。但是这个问题貌似暂时无法解决。另外,很早之前我方在面包板上也ok的,不过那时候我定的速度很慢的。再怀疑,我这个屏,之前买的,也没读过id,不知道是真屏还是假货。我最好在之前的avr上读一下id,确定是可以读的再来。

2010-6-19
我在while,让控制引脚高低这样变化。用示波器看每个引脚。其中cs的高电平很尖,但是也是保持到了高电平,这样配置引脚没问题了,连线也没问题了。
接着就要研究读写时序了。自己根据程序手动画了。在excel也画了。看上去没错啊。改了很多种,没用。用示波器看起来很累。我只有2通道。不过我终于找到了看的方法。比如先看cs和rs两根,再看rs和wr2根。结合ili9325的p108页看时序是否正确。变单步调试看时序。发现wr的低电平应该要保持在500ns之内,但是我怎么就1us呢,于是改主频时钟,改到405M,程序就跑飞,于是改到305M,并且把define电平的函数改简单了。终于在500ns之内了。但是还是不能正确初始化,刷屏。今天来不及了,明天再调试。

2010-6-20
1,cs的线更改,看效果。 0.5h 改了,但没用
2,看io口传的数据是否正确。1)DB15与NWR看效果。2)看DB15与DB14,看是否同步,是否正确。单步停止,一个个看

,用万用表看即可。  0.5h
1)效果证明数据正确。但是wr的低电平宽度还是大于500ns,所以我又改了时钟。
2)用万用表看其它的效果,结果正确。
但是屏仍然没反应。
3,avr与arm波形对比。修改。   1h
wr改完了。我的程序是循环的刷屏,当全速运行的时候,突然发现原来时序快了很多。于是又加了很多nop,又把主频时钟改为200MHZ,现在时序基本和avr的相同了。就是感觉有很多毛刺。于是看效果。还是不行。

突然想到wr与数据线还没与avr的wr与数据线比较。明天再比较。
4,可能是电流问题,焊接后再看效果。 0.5h 还是不行的话,只能暂时放弃。

2010-6-21
1,今天有预感,还是先焊接吧!结果焊接完后,上电,刷屏了,效果很好。为了时序总计调试了4小时。今天通过把杜

邦线改为焊接终于ok了。说明硬件连线对,写入时序对。初始化配置我是移植的,先不说。
2,我把时序改成我想象中的代码,结果也通过了。原来之前是硬件问题。

3,读id,还是没读出。今天没开示波器,明天在示波器中看看。待解决
4,把它的初始化程序改成我的,结果没初始化成功。待研究。

经过4个晚上的努力,终于关于屏第一个milestone完成了。证明LCD硬件是好的,并且在2440上能工作,并且完成了底层时序的编写。下一步就是LCD驱动代码的编写。

ARM-ili9325屏调试1--时序的更多相关文章

  1. ARM LCD屏调试3--屏的应用编程

    2011-06-25 19:20:47 驱动自己写完了,应用函数自己就不写了,找了一点代码参考,移植并修改了一下,配合之前的定义的接口文档,我贴出部分代码.目录: 一,开发环境... 1 二,底层函数 ...

  2. MIPI接口LCD屏调试心得(转)

    源: MIPI接口LCD屏调试心得

  3. ARMLCD屏调试2--ili9325驱动编写

    2011-06-24 21:57:09 一,读id--完成 二,自己写了驱动--完成 三,调试LCD屏驱动--完成 一         读id,不过过程还有点曲折. 因为之前写命令写数据的时序是根据i ...

  4. ARM汇编指令调试方法

    学习ARM汇编时,少不了对ARM汇编指令的调试.作为支持多语言的调试器,gdb自然是较好的选择.调试器工作时,一般通过修改代码段的内容构造trap软中断指令,实现程序的暂停和程序执行状态的监控.为了在 ...

  5. win7下自写驱动导致开机蓝屏调试过程

    之前没有接触过驱动调试.这里上手就要解决一个因为某个自定义驱动导致的系统登陆后蓝屏问题,记录下来.   问题: 从客户那边弄来的一个虚拟机,已知是加了我们的驱动之后才会导致蓝屏. 解决过程:   使用 ...

  6. Eclipse-cdt 配合 gdbserver 进行 arm 程序远程调试 上

    做嵌入式Linux开发也不用再羡慕windows程序员VS集成开发环境的强大,我们同样能够搭建出给力的IDE. 今天在这里记录一下我使用Eclipse-cdt,gdb,gdbserver搭建远程arm ...

  7. Eclipse-cdt 配合 gdbserver 进行 arm 程序远程调试 下

    上一篇中,介绍了如何编译.运行arm-linux-gdb 和 gdbserver,这一篇中介绍怎样结合Eclipse-cdt进行图形化编译调试 首先当然是使用CDT创建项目并添加源文件. 在左侧 Pr ...

  8. windbg蓝屏调试

    一般在写Windows内核程序的时候,经常会出现蓝屏的问题,这个时候一般是采用记录下dump文件然后用windbg查看得方式,具体的过程就不说了,网上一大堆的内容.现在我主要记录自己当初按照网上的方案 ...

  9. 对arm裸板调试的理解

    由于arm芯片一般都包含的由jtag调试这项功能,cpu向外部发出信号时,一般都要同jtag发送出去,它就像一个路口的交警一样,能够控制车辆的运行,当然在arm中指的是cpu发出的数据和地址,我们在调 ...

随机推荐

  1. 外部访问docker容器(docker run -p/-P 指令)

    容器中可以运行一些网络应用,要让外部也可以访问这些应用,可以通过 -P(大写) 或 -p (小写) 参数来指定端口映射. (1)当使用 -P 标记时,Docker 会随机映射一个 49000~4990 ...

  2. EasyPopup

    EasyPopup PopupWindow 对 PopupWindow 的封装,使得在项目中使用起来更加简单.方便.快捷 项目特性 链式调用:除了在传统的 PopupWindow 使用方法之外还加入了 ...

  3. 通过poi的XSSF实现生成excel文件

    maven导入依赖jar包: <dependency> <groupId>org.apache.poi</groupId> <artifactId>po ...

  4. jenkins git 之 Advanced clone behaviours

    jenins 上的 Git Plugin插件,默认是下载完整的历史版本,随着分支约多,历史版本约多,整个文件会很大,下载常常会超时. 单独的git命令可以使用以下方式来优化 git clone --d ...

  5. pytest 3.9在python 2.7下的一个bug

    最在在使用pytest,用的是pytest 3.9.3,python版本为2.7.10,但一直在使用时发现总提示 File "c:\python27\Lib\json\__init__.py ...

  6. php操作redis案例

    <?php     //实例化     $redis = new Redis();     //连接服务器     //默认端口是6379,可不写     $redis->connect( ...

  7. ie9 remove出错 jquery SCRIPT5007: 缺少对象

    针对IE11 remove不起作用的问题. 其中IE11.0.37也不支持 IE11.0.42支持可能是由于客户机器设置了兼容模式的原因. 因为里面包含了object元素,移除数据的时候发生的bug. ...

  8. C#获取邮件客户端保存的邮箱密码

    有时候邮件客户端记录了邮箱密码,但自己却忘记了,此时可以使用C#建立一个临时的"邮件服务器",截取密码: IPEndPoint ipEndPoint = new IPEndPoin ...

  9. JavaScript基础知识(初识JS)

    js的组成部分 1. ECMAScript : JS的基础语法 变量 数据类型,操作语句,函数 es3 es5 es6; 2.DOM : document object model : 文档对象模型: ...

  10. RunExecuteFile

    using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using S ...