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