基于CPLD的DSP人機(jī)接口模塊系統(tǒng)設(shè)計
CPLD(Complex programmable Logic Device,復(fù)雜可編程邏輯器件)是在傳統(tǒng)的PAL、GAL基礎(chǔ)上發(fā)展而來的,具有多種工作方式和高集成、高速、高可靠性等明顯的特點。
在超高速領(lǐng)域和實時測控方面有非常廣泛的應(yīng)用,日前的CPLD普遍基于E2PROM和Flash電可擦除技術(shù),可實現(xiàn)100次以上擦寫循環(huán)。
CPLD選擇及其擴(kuò)展模塊的設(shè)計
由于TMS320LF2407A是3.3v電平供電的,所以CPLD我們也選擇3.3v電平供電的XL型號。XC95144XL是Xilinx公司XC9500系列的一種。它的性能指標(biāo)為;IO口可配置為3.3v或5v操作。所有輸出都提供24mA驅(qū)動能力;XC295144XL有100個宏單元、3200個可用門和144個寄存器;實現(xiàn)在系統(tǒng)編程,所有器件都支持IEEE1149(JTAG)邊界掃描,最小編程/擦除周期為10000次。
其中,DSP(Digital Signal Processor)與CPLD的連接是通過DSP的外部存儲器接口實現(xiàn)的。我們通過/IS管腳將其擴(kuò)展到外部I/O空間,數(shù)據(jù)總線的高8位和地址總線的低8位與CPLD相連,并且我們將DSP的CLKOUT引腳與CPLD的IO/GCK2連接,為CPLD提供時鐘源,由干CLKOUT輸出的頻率非常高,所以DSP與CPLD的連線應(yīng)該盡量短,而且要做一些抗干擾的處理,XINT2是DSP的中斷引腳,它的作用是當(dāng)CPLD確定鍵盤按鍵的數(shù)值后,利用中斷將鍵值傳送到DSP中。
CPLD硬件結(jié)構(gòu)設(shè)計如圖所示
CPLD的設(shè)計主要是利用CPLD對鍵盤、液晶和各種狀態(tài)指示燈進(jìn)行控制。由于TMS320LF2407A的I/O管腳和各種特殊功能是復(fù)用的,如果將鍵盤、LCD顯示以及各種狀態(tài)指示燈直接和DSP相連的話,這將造成它的極大浪費,所以我們在它們中間用CPLD作為橋梁。
另一更為重要的原因是鍵盤和LCD顯示是在一個相對較低的速度下實現(xiàn)的,這對于高速數(shù)據(jù)處理的DSP來說是無法接受的,我們設(shè)計的主要用意是:
對于LCD顯示,我們將DSP中的數(shù)據(jù)發(fā)送到CPLD,然后DSP去做其他的事情,而后續(xù)顯示的任務(wù)由CPLD完成,CPLD將在LCD允許的速度下對其進(jìn)行操作即可達(dá)到顯示目的。
對于鍵盤,我們將鍵盤的各種處理進(jìn)行完之后通過中斷來通知DSP,然后DSP進(jìn)行取數(shù)操作,這樣的話并不會影響到整個系統(tǒng)的運行速度。 function ImgZoom(Id)//重新設(shè)置圖片大小 防止撐破表格 { var w = $(Id).width; var m = 650; if(w
液晶顯示模塊硬件設(shè)計
由于LCD具有低功耗、體積小、質(zhì)量輕、超薄等諸多其他顯示器無法比擬的優(yōu)點,它廣泛用干各種智能型儀器和低功耗電子產(chǎn)品中。對于數(shù)據(jù)采集系統(tǒng)來說,液晶顯示模塊主要功能是顯示系統(tǒng)的采樣速率及試樣所受的應(yīng)力值。為了解決快速DSP和慢速外設(shè)之問接口的問題,根據(jù)上述分析系統(tǒng)采用了以CPLD為橋梁的液晶顯示模塊。其主要的工作流程是:DSP把顯示的數(shù)據(jù)送給CPLD,然后DSP去做其他的事情,而后續(xù)顯示的任務(wù)將在LCD允許的速度下得到顯示。
液晶顯示模塊選擇
數(shù)顯液晶模塊:這是一種由段型液晶顯示器件與專用的集成電路組裝成一體的功能部什,只能顯示數(shù)字和一些標(biāo)識符號。
液晶點陣字符模塊:它由點陣字符液晶顯示器件和專用的行列驅(qū)動器及必要的連接件、結(jié)構(gòu)件裝配而成,可以顯示數(shù)字和西文字符,一般本身具有字符發(fā)生器。這種模塊的點陣排列是由5×7成5 x 8,5×1的一組像素點陣排列而成的。每組為一位,每位間有一點間隔,每行間也有一點的間隔,所以不能顯示圖形。
直剪儀數(shù)據(jù)采集系統(tǒng)的顯示特點是不僅能顯示模擬拉剪的過程,也要能顯示中文、西文操作菜單和各種測量數(shù)據(jù),所以以上兩種液晶顯示模塊均不符合本儀器的顯示要求。
我們選用的是大連東福的EDM240128F點陣圖形LCD。它的最大特點是具有獨特的硬件初始值設(shè)置功能,顯示驅(qū)動所需的參數(shù)如占空比系數(shù)。驅(qū)動傳輸?shù)淖止?jié)數(shù)/行及字符的字體選擇等均由引腳電平設(shè)置,這樣初始化在上電時就已經(jīng)基本設(shè)置完成,軟件操作的主要精力就可以全部用于顯示畫面的設(shè)計上了,可以圖形方式、文本方式及圖形和文本合成方式進(jìn)行顯示,以及文本方式下的特征顯示,還可以實現(xiàn)圖形拷貝操作。它采用T6963C內(nèi)核控制器,圖2為液晶顯示模塊硬件設(shè)計的原理圖。
電平轉(zhuǎn)換芯片的選擇
由于CPLD為3.3V的器件,而LCD是5V的器件。所以為了CPLD和LCD之間的電平匹配,需要借助電平轉(zhuǎn)換芯片來完成從3.3V到5V之間的相互轉(zhuǎn)換。選擇的電平轉(zhuǎn)換芯片是TI公司的SN74LVC4245A芯片,這個芯片的數(shù)據(jù)傳輸方向是雙向的,在引腳DIR的作用下,既可以實現(xiàn)從3.3v向5v轉(zhuǎn)換,也可以實現(xiàn)從5v向3.3v轉(zhuǎn)換。
為了液晶模塊能夠正確的工作,液晶需要上電復(fù)位。本設(shè)計中采用的字體是8×8點,所以在硬件電路設(shè)計時將FS引腳拉低。
在硬件設(shè)計時,我們需要注意的問題是:
(1)在VDD對地(Vss)間接0.1u左右電容去耦,接10u或20u電容濾波;
(2)模塊的復(fù)位腳/RST接一個復(fù)位電路,而且我們也將/RST與CPLD相連,這樣我們也可以利用DSP對其進(jìn)行復(fù)位,使得可以是液晶進(jìn)行定時刷新,預(yù)防一些其他干擾;
(3)在做實驗時,F(xiàn)G(鐵框地線、不能懸空,暫時與數(shù)字地連接。
鍵盤硬件設(shè)計
鍵盤在信號采集系統(tǒng)中是一個很關(guān)健的部件,它能向系統(tǒng)輸入數(shù)據(jù)、傳送命令等功能,是人工干預(yù)系統(tǒng)的主要手段,本系統(tǒng)所用鍵盤是常用的4×4矩陣式鍵盤。
16個鍵盤有0~9數(shù)字鍵,上翻,下翻鍵,編程鍵,輸入鍵,擦除鍵,點號健等。鍵盤的行線和列線分圳連接CPLD的一個I/O引腳。鍵盤的行線上有一個2.7k的上拉電阻將行線所連接的CPLD的I/O引腳上拉直高電平。
鍵盤工作原理
按鍵設(shè)置在行、列線空點上,行、列線分別連接到按鍵開關(guān)的兩端。行線通過上拉電阻接到3.3v上。平時無按鍵動作時,行線處于高電平狀態(tài),而當(dāng)有按鍵按下時,行線的電平狀態(tài)將由與此行線相連的列線電平?jīng)Q定。列線電平如果為低,則行線電平亦為低,列線電平如果為高,則行線電平亦為高。這一點是識別矩陣鍵盤按鍵是否按下的關(guān)鍵所存。由于矩陣鍵盤中行、列線為多鍵共用,各按鍵均影響該鍵所在行和列的電平。因此各按鍵彼此將互相影響,所以必須將行、列線信號配合起來并作適當(dāng)?shù)奶幚恚拍艽_定閉合鍵的位置。
結(jié)語
本文簡單介紹了TI16位控制器DSP與液晶顯示模塊及鍵盤模塊之間的接口方案.利用了CPLD來進(jìn)行邏輯轉(zhuǎn)換和控制。提供了一種高速器件和慢速接口直接的連接方法,通過這個接口方案研究,為以后系統(tǒng)的開發(fā)提供了一種新的思路。
評論