第12课-LCD

注:以下内容学习于韦东山老师arm裸机第一期视频教程

参考文章http://www.cnblogs.com/shangdawei/p/4760933.html


一.LCD硬件原理

    1.1 LCD可以看作是一个电子枪一边移动一边发出颜色

        
        1.1.1 电子枪如何移动?

            LCD上有一条CLK信号线,每来一个CLK电子枪就会移动一个像素

        
        1.1.2 颜色如何确定?    

            颜色有RGB三组信号线来确定

        
        1.1.3 电子枪如何得知应跳到下一行?

            HSYNC信号线

            
        1.1.4 电子枪扫描完最后一行后如何得知回到原点?

            VSYNC信号线

        
        1.1.5 RGB线上的数据从哪里来?

            来自于一段内存(frame buffer)

            

    1.2 JZ2440LCD接口原理图如下

        

        其中VLINE信号线代表了HSYNC信号

            VFRAME信号线代表了VSYNC信号

            RGB信号线来传输数据(R0-R5,G0-G6,B0-B5,565格式,即一个像素使用16位来表示,16bpp(bit per pixel))

            注意LCD上有8根R,8根G,8根B数据线,可以表示24bpp,但是只接到开发板上16条线

    

    1.3 LCD显示配置图如下

        

            HFP->一行中最后一个信号发出之后需要经过多久才会接受HSYNC信号,即代表右边的黑框

            HBP->HSYNC信号接受之后需要经过多久才会发出一行中第一个像素的信号,即代表左边的黑框

            VFP->最后一行中的最后一个信号发出之后需要经过多久才会接受VSYNC信号,即代表下边的黑框

            VBP->VSYNC信号接受之后需要经过多久才会发出第一行的第一个像素的信号,即上边的黑框


二.LCD控制器

    2.1 LCD控制器的作用

        2.1.1 从内存(frame buffer)中取出像素的数据,(我们需要将framebuffer的地址告诉控制器,bpp,分辨率)
        2.1.2 配合其他信号一起将数据发送给LCD(将LCD的时序设置给LCD控制器,设置引脚的极性)

        

    2.2 LCD控制器结构图如下

        
        LCDDMA会从内存中取出数据,然后发送到VD[23:0]引脚上去

        我们同时需要设置寄存器来控制LCD控制器来让他发出合适的时序

        因此,我们只需要将数据填写到frame buffer中去即可,硬件会自动帮助我们将数据刷到LCD中去

    

    2.3 frambuffer数据格式的设置

        如下图:
            

        对于16bpp的数据格式

        当BSWP = 0, HWSWP = 0,0地址的高16位存放第一个数据,低16位存放第二个数据,4地址的高16位存放第三个数据,低16位存放第四个数据

        当BSWP = 0, HWSWP = 1,0地址的低16位存放第一个数据,高16位存放第二个数据,4地址的低16位存放第三个数据,高16位存放第四个数据

        显然第二种情况更容易操作,我们使用第2种情况

    

    2.4 设置数据的传输引脚(16位数据通过VD[23:0]的哪几条来传输数据)

        如下图:

        

        对于16位数据,565或者5551

        在画原理图时需要根据这个图来进行线的连接

        对于565格式:8条红数据,8条绿数据,8条蓝数据,但是分别只用了高5条,高6条,高5条

        

    2.5 2440时序图如下:

        

        我们需要根据LCD的数据手册来设置这个时序图
        

三.调色板的概念

        当使用16

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值