您当前的位置:五五电子网电子知识单元电路接口电路基于CPLD的DSP和液晶模块接口设计 正文
基于CPLD的DSP和液晶模块接口设计

基于CPLD的DSP和液晶模块接口设计

点击数:7362 次   录入时间:03-04 11:48:27   整理:http://www.55dianzi.com   接口电路

摘要:讲述快速器件DSP和慢速器件液晶模块的接口方法;结合作者实际工作的一个成功应用,给出TMS320C32 DSP与内藏T6963C控制器的液晶模块通过CPLD接口的硬件和软件实例。
关键词:DSP; TMS320C32液晶; T6963C控制器; CPLD

    随着DSP(数字信号处理)算法研究的深入和器件本身性能的不断提高,智能工业控制中DSP获得了广泛的应用,由此产生了许多与之相关的研究题目,其中,如何实现快速DSP器件和慢速外设液晶的接口就很有实际意义。本文结合作者的实际工作,给出了基于CPLD(复杂可编程逻辑器件)的TI公司的DSP TMS320C32和内藏T6963C控制器的MG-240-64图形点阵液晶模块接口实例。

1 DSP和液晶的接口原理和实现
    DSP和液晶模块的接口包括两部分操作;DSP读液晶模块状态的操作;DSP向液晶模块写数据和指令的操作。这些操作的实现就是参考液晶模块的时序图,产生满足这些时序的接口控制逻辑。然而,DSP指令执行速度很快,液晶则属于慢速外设,两者直接接口速度不匹配。要想正确操作液晶,必须在两者之间加相应的缓冲电路。分别对应读写操作,要设计读操作时的输出锁存和写操作的输入缓冲。这两部分电路虽然不尽相同,但是设计思想都是一致的。下面以DSP对液晶的写操作为例,详细讲述输入缓冲电路的设计和相应的驱动软件的编制。输出锁存电路的设计和相应软件的编写雷同。


 
    参考图1液晶的操作时序图,我们发现,对液晶写操作时,液晶的C/D信号要首先有效,然后产生相应的读或写,以及片选。一定延迟之后,数据有效。根据这个时序要求,我们用DSP数据总线的D11经锁存后来产生C/D信号。用DSP数据总线的D8、D9、D10经锁存后,用来产生液晶的WR、RD、CS信号。DSP数据总线的D0~D7经锁存和缓冲后驱动液晶的数据总线。硬件上这样设计,同时软件上按上述时序编写,先后使能C/D信号、CS、WR信号和数据有效信号,就可以正确地对液晶进行操作。在设计中,由于TMS320C32这一款DSP芯片I/O功能比较弱,我们采用一片CPLD:  EPM7128STC-10来实现上述逻辑。由于不涉及时序电路,所以对于CPLD的程序编写,我们采用电路逻辑图进行输入,开发工具是A1tera公司的MAXPLUSII。
    CPLD的设计逻辑电路如图2所示。


 
IOSTR:DSP的外设空间访问有效信号。液晶地址映射到该空间。
A0~A2:DSP的地址总线。
D0~D11:DSP的数据总线。
LCD-CD:液晶的指令/ 数据选择信号。
LCD-WR:液晶的写信号。
LCD-RD:液晶的读信号。
LCD-CS:液晶的片选信号。
    液晶操作的软件程序如下:
;向液晶写一个参数的程序代码。以此为例讲述如何从软
;件上配合产生液晶所需要的时序。
1di  *-FP(2),R0;要写的参数
1dp  @LCDDATA ADDRESS_PTR,DP
1di  @LCDDATA ADDRESS_PTR,AR1
sti   R0,*AR1  ;将该参数送液晶的数据总线,;写的时候数据可以先有效
nop
nop
1dP @LCDCD ADDRESS_PTR,DP
1di   @LCDCD ADDRESS_PTR,AR1
1di 000h,R0
sti  R0,*AR1   ;设置液晶C/D信号为0,向液晶;写数据
1dp  @LCDWRC ADDRESS_PTR,DP
1di  @LCDWRC ADDRESS_PTR,AR1
1di  200h,R0
sti   R0,*AR1   ;设置WR、CS信号有效
nop
nop
nop
1di 700h,R0
sti R0,*AR1  ;设置WR、CS信号无效。至此,
;已经成功地向液晶写入一个数据

2 结论
    本文所述内容,对其它型号器件的具体接口实现可能不同,但原理和思想一样。最后需要指出,我们参阅液晶的相关参数发现,如果在硬件上不设计本文所述的缓冲电路,而是在软件上加入若干(0~7)个等待周期,则DSP应该可以和液晶很好匹配。作者限于时间,没有做这个工作,但是两者基本思想一致,而且,从工程角度考虑,提供了一种行之有效的方法。





本文关键字:接口  接口电路单元电路 - 接口电路