zoukankan      html  css  js  c++  java
  • 基于RT1052 Aworks 使能TFT-LCD高清显示功能(十)

    本文主要是通过迁移的思维,记录本人初次使用周立功的Aworks框架进行BSP开发

    前置知识,对于显示驱动而言,对于不同的接口,如RGB接口,LVDS, MIPI 接口,其本质还是配置像素时钟与时序,如果需要将RGB接口转成HDMI或者MIPI输出时,需要对转换芯片进行初始化。

    1. 首先阅读原理图


    硬件上通过RGB接口输出,再经LT9211转成MIPI信号,输出至屏。这当中需要对屏进行通始化,对转换芯片进行初始化,需要阅读手册.
    需要做的工作:
    第一、输出所需的像素时钟
    第二、根据屏幕参数配置所需的时序
    第三、转换芯片LT9211进行复位并初始化。
    第四、依据屏幕手册进行正确的上下电。
    本文只对第一、第二点进行说明。每一个外设都会有上一级的父类时钟,且有多个父类时钟可以选择,如果无法正常的分频倍频获得所需要的像素时钟时,可调整其父类时钟源。

    2. 设备资源及驱动适配

    2.1 设备资源的注册

    初次使用该SDK,为了适配新的屏幕,本人选择默认已经支持的屏,进行适配。
    在awbl_hwconf_tft_4_3.h已有现成的样例,基于它进行修改。
    根据屏幕手册适配如下字段:
    在这里插入图片描述

    2.2 设备驱动的注册

    在aw_prj_config.c文件当中

    #ifdef AW_DRV_FB
        awbl_imx1050_fb_drv_register();
    #endif
    

    2.3 设备宏开关

    只需要在aw_prj_params.h打开如下定义

    aw_prj_params.h
    
    #define AW_DEV_TFT_4_3
    

    即可注册相关的设备资源与设备驱动。

    aw_prj_param_auto_cfg.h
    
    #if defined  AW_DEV_TFT_4_3            || 
        defined  AW_DEV_AP_TFT7_0          || 
        defined  AW_DEV_LCD_TM070RDH12_24B || 
        defined  AW_DEV_LCD_640480W056TR   || 
        defined  AW_DEV_LCD_800600W080TR
    #define AW_DRV_TFT_PANEL
    
    #ifndef AW_DEV_FB
    #define AW_DEV_FB
    #endif
    
    #define AW_DEV_IMX1050_PXP
    
    #ifndef AW_DEV_IMX1050_EFLEX_PWM1
    #define AW_DEV_IMX1050_EFLEX_PWM1
    #endif
    
    #ifndef AW_DEV_IMX1050_LPI2C3
    #define AW_DEV_IMX1050_LPI2C3
    #endif
    
    #endif
    

    一旦使能宏关关AW_DEV_FB,对应的驱动就会被选上。

    3. 如何测试

    使用SDK自带的测试样例即可进行测试
    demo_lcd_24bbp.c
    在这里插入图片描述

    4. 总结

    如果屏幕是RGB信号屏的话,适配已经完成,整个过程非常简单,所需要的工作量也不大。

  • 相关阅读:
    jfixed使固定行列可编辑表格
    Base 64 加密、解密
    去除富文本格式
    阿里移动安全挑战赛第二题研究小结
    CyanogenMod源码下载、编译、刷机过程记录(HTC buzz)
    编译民间安卓源码mokesoures4.2.2报错内容【解决了!】
    Linux下通过NDK的初步使用【详细步骤+截图】
    Linux下实现JNI期间发生的错误……【未解决】
    C++调用Java方法时jvm.dll相关错误 【每次记录完后都被瞬间解决了……】
    JNI学习中——JVM错误:EXCEPTION_ACCESS_VIOLATION (0xc0000005)
  • 原文地址:https://www.cnblogs.com/lianghong881018/p/15169470.html
Copyright © 2011-2022 走看看