• 毕设进行时——4.3寸在富士通ARM中实现


      这两天在驱动4.3寸液晶屏,其型号是SSD1963。其特点是屏幕分辨率大——480*272,带触摸屏控制,驱动容易。刚拿到液晶屏的时候,一时无法入手,即使之前我已经将资料中的51代码移植到富士通的CORTEX-M3上,但是液晶屏没到,一直没法测试。

          拿到液晶屏,首先让他发光,其TFT_LEDA管脚是用来点亮液晶屏,可以通过PWM波来控制液晶屏的亮度,于是我就做了个PWM,让液晶屏的功耗保持在0.1A左右,这样保证电源变压芯片能够持续稳定工作,不然当液晶屏全亮的时候电流达到0.5A,那样稳压源发热量太大了。

      液晶发光之后,就要做些程序,让液晶屏显示字符,图形等。但是,起初无论我怎么测试,液晶屏始终保持在白屏,没有丝毫反映,这个状态足足持续一天。

      经过我分析有以下几种可能导致液晶屏没工作:

        1、我怀疑屏已经坏了,但是我想既然能点亮,应该是没有烧,否定改判断。

        2、接口连接问题,怀疑接口接触不良,果然还是被我发现一两个管脚没有与我自己设计的ARM板子连在一起,我又重新焊结实了。

        3、时序图不对,重新打开SSD1963的datasheet,仔细的阅读其时序图,然后对照程序,分析,还是发现了一点问题,并且更改了,写入时序主要是:

            

        4、怀疑编译器有缺陷,将程序上将2个8位数据组成1个16位数据出现问题,即LCD_DATA = VAL_H<<8+VAL_L有问题,keil不支持该写法,得改成这样:

            uint8_t tmp;

            tmp = VAL_H;

            LCD_DATA  = tmp;

            LCD_DATA  = LCD_DATA  <<8;

            LCD_DATA  |= VAL_L;

         经过以上分析,逐步抽丝播茧终于解决问题,能够成功显示字符,图片等。不过还有点要注意,在初始化中要先指明画笔的颜色,背景的颜色,以及背景屏幕的颜色。

  • 相关阅读:
    sql 生成开始日期到结束日期相差天数或日期
    自定义表做存储过程变量
    [转]html 移动互联网终端的javascript touch事件,touchstart, touchend, touchmove
    [转]JQuery.Ajax之错误调试帮助信息
    解决IOS safari在input focus弹出输入法时不支持position fixed的问题
    查看 存储过程的执行时间
    ListView
    android矩阵详解
    跳出圈子 “莫忘初心,方得始终”
    Eclipse使用
  • 原文地址:https://www.cnblogs.com/121792730applllo/p/3080666.html
Copyright © 2020-2023  润新知