應(yīng)用CPLD和DSP的人機(jī)接口模塊設(shè)計(jì)
介紹一種基于CPLD和TMS320LF2407A型DSP的人機(jī)接口模塊應(yīng)用系統(tǒng),這種系統(tǒng)在新型路面剪切實(shí)驗(yàn)機(jī)上得到了較好的應(yīng)用,能夠很好地實(shí)現(xiàn)數(shù)據(jù)采集、電動(dòng)機(jī)調(diào)速等目的。以CPLD為橋梁,實(shí)現(xiàn)快速DSP和慢速外設(shè)的接口模塊設(shè)計(jì),并給出其硬件電路原理圖。
CPLD選擇及其擴(kuò)展模塊的設(shè)計(jì)
由于 DSP屬于高速器件, LCD為慢速外設(shè),DSP對(duì)讀寫周期較慢的 LCD進(jìn)行訪問(wèn),可采用以下兩種方式來(lái)解決 DSP與 LCD的時(shí)序匹配問(wèn)題:直接訪問(wèn)和間接訪問(wèn)。直接訪問(wèn)是將 DSP的讀寫信號(hào)與 LCD接口的讀寫信號(hào)直接相連,將 LCD的 8位數(shù)據(jù)線與 DSP的低 8位數(shù)據(jù)線相連(在 CPLD內(nèi)部硬件編程完成),時(shí)序由 DSP內(nèi)部讀寫邏輯控制。由于 LCD的讀寫周期較 DSP慢,要使兩者的時(shí)序匹配,還必須進(jìn)行一些時(shí)序方面的處理。間接訪問(wèn)用 DSP的 I/O口間接控制慢速設(shè)備,可以通過(guò)軟件控制 DSP的 I/O口來(lái)實(shí)現(xiàn)與慢速外設(shè)的時(shí)序匹配。該方法無(wú)需通過(guò)硬件擴(kuò)展即可實(shí)現(xiàn)與任意慢速外設(shè)的時(shí)序匹配。在該顯示系統(tǒng)中,由于 CPLD的可在線硬件編程能力,這 2 種方法均可實(shí)現(xiàn)。這里采用第一種接法。 DSP與 LCD的硬件接口電路圖如圖 1所示。
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)行速度。
液晶顯示模塊硬件設(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è)置完成,軟件操作的主要精力就可以全部用于顯示畫(huà)面的設(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ù)防一些其他干擾;
?。?)在做實(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)上,行、列線分別連接到按鍵開(kāi)關(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ǔ)
本文作者創(chuàng)新點(diǎn):以 DSP為核心處理器,利用 CPLD來(lái)進(jìn)行邏輯轉(zhuǎn)換和控制,實(shí)現(xiàn)高速CPU處理器和低速外設(shè)接口的時(shí)序匹配,同時(shí)采用了移植性能和可讀性能高的 C程序設(shè)計(jì),無(wú)需插入等待周期,在實(shí)際的嵌入式系統(tǒng)中成功運(yùn)行,為快速處理器與慢速外設(shè)的接口設(shè)計(jì)提供了一種借鑒的方法。
評(píng)論