APP下载

基于DM642的TFT-LCD显示设计

2014-01-17苑玮琦朱林贵

电子设计工程 2014年23期
关键词:低电平寄存器时钟

苑玮琦,朱林贵

(沈阳工业大学 视觉检测技术研究所,辽宁 沈阳 110870)

数字信号处理是利用数值计算的方式对信号进行加工的理论和技术,数字信号处理器(DSP)主要是用于完成各种实时数字信息的微处理器,其强大、快速的运算能力尤其适用于图形图像处理方面[1]。相比于其他微处理器,DSP主要具有以下特点:

1)一个指令周期内能够完成一次乘法和一次加法;

2)以及快速的中断处理和硬件I/O支持;

3)程序和数据空间分开,可以同时访问指令和数据;

4)片内具有快速RAM,能够通过独立的数据总线在两边进行同时访问;

5)可以并行执行多个操作;

6)支持流水线操作,使得取址、译码和执行等操作可以重叠执行。

TFT(Thin Film Transistor)LCD即薄膜场效应晶体显示器,是有源矩阵类型液晶显示器(AM-LCD)中的一种,是将微电子与液晶显示器技术巧妙结合的一种技术,在TFT-LCD中,TFT相当于一个三端开关管[2]。相比于CRT显示器件,TFTLCD在亮度、对比度、功耗、寿命、体积、重量以及显示全色视频图像等综合性能上具有一定的优势。同时,其性能优良、大规模生产特性好、自动化程度高、原材料成本低廉、无X射线辐射,因而发展空间更为广阔,已成为当前仪器仪表中的主流产品,尤其是电子产品中不可或缺的一部分。如果能将TFT-LCD完美嵌入到DSP系统中,对图像处理技术的发展将有积极的意义。

1 TMS320DM642介绍

TI的TMS320DM642是一款主要面向视频/图像数字媒体的高性能数字信号处理器,相比C5000系列芯片,DM642具有更为丰富的片上资源:

1)DM642工作频率由内部倍频器设置,而根据相应的指令周期 2,1.67,1.39 ns, 可以分别达到 500、600 或 720 MHz的时钟频率[3]。每周期执行8条32位指令,一定程度上解决了采用C5509芯片进行数据处理所出现的运行速度略慢的问题。

2)具有3个可编程视频端口VP0VP2,每个视频端口都可以采集/显示原始数据,同时也可以发送和接收数字视频数据,极大地方便了图像的采集[4]。并支持多种协议的视频标准,方便设计中选择。

3)具有1个64位外部存储接口EMIF,具有异步或同步多字并行数据传输能力。并有高达1024 Mbyte的可寻址外部存储空间,设计中无需再担心内存空间不足。同时,EMIF可以通过EDMA与存储空间直接关联,整个数据传输过程与CPU工作并行,增加了算法执行的时间效率。

4)具有两个多通道串行接口McBSPs,可进行全双工通信,并可以收发独立的帧同步和时钟信号。同时,其双缓冲数据寄存器允许连续的数据流,数据传输还可以利用外部时钟或片内可编程时钟。

5)具有1个支持10/100Mbps的EMAC以太网口,可以进行半双工或全双工的通信,可以实现数据的高效传输和接收。同时控制DSP中数据包在物理层的流动。

6)具有1个总线模块,同时配有专门的时钟端口SCL及数据端口SDA,能和符合飞利浦总线标准的外部设备建立连接。其快速模式下的传输速率高达400 Kbps。

7)提供16位专门的通用输入/输出端口GPIO,无需再将数据总线口配成GPIO口使用。

2 SM-35HDY37BV02点阵屏简介

SM-35HDY37BV02点阵屏主要由液晶显示屏和触摸芯片两部分组成。

其中液晶显示部分为薄膜晶体管,意即每个液晶像素点都是由集成在像素点后的薄膜晶体管驱动,分辨率为320*RGB*480(即竖屏时每一行有320个点,总共480行,横屏则一共320行,每行480个点,一共320*480个像素点)的大点阵屏,由ILI9481驱动,有多种接口模式,如:8位、9位、16位及18位的并行接口(DBI显示总线接口)模式;6位、16位、18位位宽的RGB接口(DPI显示像素接口)模式;VSYNC(System interface+VSYNC)接口模式等。根据实际需要,使用不同的接口模式可以显示所需要的图片、字符或文字等。本文主要介绍使用16位DBI总线模式显示图像及文字。

触摸芯片采用ADI公司生产的四线式触摸屏控制器ADS7846。ADS7846是一种典型的逐次逼近比较寄存器型(SAR)A/D变换器,支持1.5 V到5.25 V间的低压I/O接口,包含取样/保持功能,一般应用于电阻式触摸屏输入系统中[5]。使用时,通过片内模拟电子开关的切换,将X+(Y+)接电源,X-(Y-)接地,并以差动的形式接到A/D转换器的输入端。根据输入到A/D转换器的电压不同,经过模数转换后获得触点的输出值,而该输出值与触点的位置成近似线性关系,从而迅速采集触屏上触点位置数据。可用于芯片温度检测、触摸压力检测、电源检测等。

3 硬件构成

3.1 显示电路硬件设计

系统采用Ti公司的TMS320DM642作为图像的识别处理芯片,采用由ILI9481驱动的TFT-LCD显示图像及文字信息。其中显示屏可以看作是一个异步寄存器,两者之间通过DM642外部存储接口EMIF的异步寄存器接口模式实现数据的传输。其接口电路如图1。

图1 显示电路硬件电路Fig.1 Hardware interface circuit

根据LCD的写时序 (如图2),CSX片选端为低电平时有效,接 EMIFA(C64x 有两个 EMIF,分别为 EMIFA,EMIFB,而DM642只有EMIFA)的CEn(EMIF一共有4组片选信号,每一组选择一个确定的地址空间,设计时需考虑是否被占用,本系统选择CE2)以选定EMIF寻址的地址空间;同时将显示屏的16位数据总线DB[15:0]与CE2中的低 16位总线 ED[15:0]相连。D/CX为寄存器选择端,用于数据或者命令信号的选择,由DM642的GPIO2口控制。置低时,指向命令寄存器,置高则从主设备接收数据。WRX为显示屏的写控制端口,接EMIF的AWE读控制端,低电平时,写入命令或数据。RESX为复位端,可以通过DM642的GPIO口或者外接三极管进行复位。

图2 液晶屏写时序Fig.2 The write timing of LCD

3.2 触摸芯片的嵌入

触摸功能通过SPI(Serial Peripheral interface)协议实现,顾名思义即串行外围设备接口,是一种四线同步全双工串行总线。

SPI协议是一种主从传输模式,由主模式端时钟决定主模式端与从模式端的通信,当检测到主模式端时,数据传输开始,时钟结束则传输结束。同时传输过程使能从模式端将DM642的McBSP配置为SPI主模式端,ADS7846为从模式端,两者通过SPI同步数据传输方式完成通信[6]。

首先,由DM642控制GPIO9输出低电平,此时CS片选信号有效。McBSP口输出时钟SCLK信号或者命令字到DIN上,BUSY变为低电平时,表示ADS7846工作在忙时状态;SCLK的每个上升沿到来时,ADS7846采集DIN数据,接收McBSP端发出的控制命令;在SCLK的第8个上升沿,指令结束;第8个下降沿处,DIN停止发送命令数据,变为高阻,ADS7846的BUSY变为高电平,延时一个时钟周期,期间ADS7846执行操作命令结束;在SCLK上升沿McBSP通过接收时钟CLKR,采集DOUT传输到DR引脚的输出数据,共12位,由高到低。当发送到第8个数据时,McBSP开始下一个命令;重复上述过程,获得触屏信息。

两者间对应的接口如表1所示。

DM642和触摸芯片的接口电路设计如图3所示。

4 软件设计

4.1 显示部分

系统主要用于显示图像以及文字信息。

表1 McBSP接口信号及对应ADS7846引脚Tab.1 The McBSP interface signal and pins of ADS7846

图3 触摸芯片的硬件设计Fig.3 The write timing of LCD

图片显示需要注意真彩色LCD的设置:C语言数组、水平扫描、16位真彩色以及图片的容量大小等。首先进行寄存器的初始化工作,程序如下:

address_set(0, 0,319,479); //i,j,

for(i=0; i<320; i++)

{

for(j=0; j<480; j++)

{

dd=(unsigned int)gImage_mm[i*480*2+j*2+1]<<8;

dd=dd|(unsigned int)gImage_mm[i*480*2+j*2];

LCD_WriteRAM(dd);

}

}

LCD_WriteRAM_Ready();

此外,特别需要注意地址的设置,地址设置与原图片的尺寸有差别时会导致图片无法正常显示。

显示字符时,一般的字模软件产生的都是8bit的数组,所以在前辈的基础上,将显示字符的程序做了一点小小的改动。

首先,产生16 bit的数组:

extern const uc16 ASCII_Table[]={

0x06,0x40,0x38,0x50,0x08,0x48,0x08,0x48,0x08,0x4 0,0xFF,0xFE,0x08,0x40,0x08,0x48,

0x0E,

0x28,0x38,0x30,0xC8,0x20,0x08,0x50,0x09,0x92,0x08,0x0 A,0x28,0x06,0x10,0x02,}

显示程序:

void ili9481_PutCharz (u16 x,u16 y,unsigned char z,u16 charColor,u16 bkColor)

{

u16 i=0;

u16 j=0;

u16 m=0;

u16 tmp_char=0;

uc16*hz;

hz=ASCII_Table;

address_set(0,0,319,479);

while(z--)

{

for (i=0;i<16;i++)

{

for(m=0;m<2;m++)

{

tmp_char=*hz;

for(j=0;j<8;j++)

{

if( (tmp_char>>7-j) &0x01==0x01)

{

ili9481_SetPoint(x+j+8*m,y+i,charColor); //字符颜色

}

else

{

ili9481_SetPoint(x+j+8*m,y+i,bkColor); //背景颜色/

}

}

hz=hz++;

}

}

x=x+16;

}

}

4.2 SPI协议

完成触摸芯片的硬件连接后,需要编写相应的程序才能进行操作。McBSP_ADS7846简单的程序流程图如图4所示。

图4 McBSP_ADS7846应用程序流程Fig.4 The flow chart of McBSP_ADS7846

5 结束语

TFT-LCD作为当前技术发展的趋势,在家电、汽车等行业有着广泛的应用。由ILI9481驱动的显示屏在当前的电子产品尤其是手机行业中有着极为广泛的应用。一般通过ARM微处理器进行扩展实现。本文主要介绍TFT-LCD与DSP处理器之间的设计。调试过程需要注意的是ILI9481的初始化、位置地址的设置等问题,同时,横竖屏的使用也会对显示造成很大的影响(推荐使用竖屏显示)。

相比C5000系列的DSP芯片,C6000系列更适用于图像技术的处理,同时在内存空间及识别速度上也有了较大的提升。

[1]郑红,刘振强,李振.嵌入式DSP应用系统设计及实例分析[S].北京:北京航空航天大学出版社,2012.

[2]郭本振,李声晋,卢刚.基于DSP和LCD触摸屏的车载信息系统设计[J].液晶与显示,2011,26(1):83-87.GUO Ben-zhen,LI Sheng-jin,LU Gang.Design of vebicle information system based on DSP and LCD touch screen[J].Chinese Journal of Liquid Crystals and Displays,2011,26(1):83-87.

[3]圣冬冬.基于DM642的视频处理系统硬件设计[J].电子设计工程,2011,19(2):168-172.SHENG Dong-dong.Hardware design of video processing system based on DM642[J].Electronic Eesign Engineering,2011,19(2):168-172.

[4]赵娟娟,陈戈珩,李中华.基于TMS320DM642的图像采集模块设计[J].电子设计工程,2008(1):12-14.ZHAO Juan-juan,CHEN Ge-heng,LI Zhong-hua.Design of image capture system based on TMS320DM642[J].Electronic Design Engineering,2008(1)12-14.

[5]王选民,李明利,张利川,等.基于ADS7846的电阻式触摸屏接口设计[J].现代电子技术,2010(11):88-90.WANGXuan-min,LIMing-li,ZHANGLi-chuan,et al.Interface design of resistive touch screen based on ADS7846[J].Modderm Electronics Technique,2010(11):88-90.

[6]孟勃,朱明.基于McBSP实现DSP与串行Flash之间的接口通讯[J].电子器件,2006,29(3):920-924.MENG Bo,ZHU Ming.Interface design between the DSP Chip TMS320VC5509 and serial flash based on cbsp[J]Chinese Journal of Electron Devices,2006,29(3):920-924.

猜你喜欢

低电平寄存器时钟
STM32和51单片机寄存器映射原理异同分析
别样的“时钟”
古代的时钟
Lite寄存器模型的设计与实现
2017款凯迪拉克2.8L/3.0L/3.2L/3.6L车型低电平参考电压总线电路图
浅谈物理电路与数字电路
有趣的时钟
15-MeV电子直线加速器的低电平系统
时钟会开“花”
集成电路静态参数测试