zoukankan      html  css  js  c++  java
  • 毕设进行时——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;

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

  • 相关阅读:
    (Java实现) 洛谷 P1603 斯诺登的密码
    (Java实现) 洛谷 P1036 选数
    (Java实现) 洛谷 P1036 选数
    (Java实现) 洛谷 P1012 拼数
    (Java实现) 洛谷 P1012 拼数
    (Java实现) 洛谷 P1028 数的计算
    (Java实现) 洛谷 P1028 数的计算
    (Java实现) 洛谷 P1553 数字反转(升级版)
    8.4 确定两个日期之间的月份数或年数
    (Java实现) 洛谷 P1553 数字反转(升级版)
  • 原文地址:https://www.cnblogs.com/121792730applllo/p/3080666.html
Copyright © 2011-2022 走看看