基于CPLD的多路信號(hào)采集系統(tǒng)實(shí)現(xiàn)方案
4.2 各個(gè)模塊的設(shè)計(jì)
在本設(shè)計(jì)中采用Altera公司EPM7064系列CPLD,程序使用VHDL語(yǔ)言編寫(xiě),并在Quartus II環(huán)境下編譯通過(guò),程序主要有“采集模塊”和“讀數(shù)模塊”。采集模塊:在采集模塊中,共有5個(gè)并行進(jìn)程,其中在進(jìn)程1中,首先在主控計(jì)數(shù)器COUNT=10時(shí)開(kāi)始結(jié)合內(nèi)部時(shí)鐘COL信號(hào)來(lái)產(chǎn)生多路開(kāi)關(guān)選通信號(hào)CNT,當(dāng)COL='0'時(shí): CNT=0000.COL='1'時(shí):CNT=0001.以次類(lèi)推一直到COL='15'時(shí)選通15路后,進(jìn)程1停止。在進(jìn)程2中,當(dāng)主控計(jì)數(shù)器COUNT在130和150區(qū)間內(nèi)時(shí),且內(nèi)部計(jì)數(shù)器信號(hào)COL在0~15范圍內(nèi),則開(kāi)始打開(kāi)AD,開(kāi)始采集。在進(jìn)程3中如果主控計(jì)數(shù)器COUNT=185~255時(shí)打開(kāi)RAM的寫(xiě)入狀態(tài)。在進(jìn)程4中當(dāng)主控制計(jì)數(shù)器count=200和220時(shí),結(jié)合內(nèi)部時(shí)鐘信號(hào)COL,分別選擇存入高4位、低8位或者幀計(jì)數(shù)。進(jìn)程5:count=235遞推幀標(biāo)志位和ADG506(模擬開(kāi)關(guān))選通標(biāo)志位,具體見(jiàn)圖6所示。[4]
讀數(shù)模塊:讀數(shù)模塊共分為3個(gè)并行進(jìn)程:在進(jìn)程1中,當(dāng)時(shí)鐘上升延時(shí),且如果使能EN_R為高時(shí),且電腦控制讀數(shù)口CPUCLK='1'時(shí)開(kāi)始讀數(shù)。在進(jìn)程2中,讀完一次數(shù)據(jù)后,將RAM地址遞推一次。進(jìn)程3中,如果系統(tǒng)為讀數(shù)模塊有效時(shí),數(shù)據(jù)將通過(guò)CPLD發(fā)送到MAX232通過(guò)異步串行的方法將數(shù)據(jù)上傳,具體見(jiàn)圖7所示。[5]
5 結(jié)束語(yǔ)
本文對(duì)多路數(shù)據(jù)采集系統(tǒng)的組成原理、單元電路設(shè)計(jì)、接口電路設(shè)計(jì)和系統(tǒng)控制程序設(shè)計(jì)進(jìn)行了詳細(xì)的闡述,完成了多路信號(hào)數(shù)據(jù)采集系統(tǒng)軟硬件設(shè)計(jì)。使系統(tǒng)工作安全可靠,數(shù)據(jù)采集精度較高,抗干擾能力較強(qiáng)。具有良好的應(yīng)用前景和很高的使用價(jià)值。
文章創(chuàng)新點(diǎn):本文應(yīng)用CPLD復(fù)雜可編程邏輯器件實(shí)現(xiàn)了:模擬/數(shù)字信號(hào)采集系統(tǒng)設(shè)計(jì)、異步串行數(shù)據(jù)傳輸?shù)燃夹g(shù)。并且通過(guò)使用多路切換開(kāi)關(guān)循環(huán)采集的方法,實(shí)現(xiàn)對(duì)高速信號(hào)采集。有效控制了成本,提高了系統(tǒng)的完整性,可靠性,實(shí)用性。
評(píng)論