基于單片機(jī)系統(tǒng)采用DMA塊傳輸方式實(shí)現(xiàn)高速數(shù)據(jù)采集
2 硬件組成
· 單片機(jī)芯片
采用ATMEL公司的89C51,片內(nèi)有4K字節(jié)FLASH ROM。設(shè)計(jì)使用其最大時(shí)鐘頻率20MHz,可以有1us以下的指令周期。
· A/D轉(zhuǎn)換器
采用MAXIM公司的MAX153芯片,轉(zhuǎn)換精度8bit并行輸出,轉(zhuǎn)換時(shí)間660ns、采集速率1Msps。設(shè)計(jì)采用循環(huán)采集方式。
· 靜態(tài)RAM
靜態(tài)RAM62512芯片為64Kbytes,典型存取時(shí)間200ns。
· 總線(數(shù)據(jù)線、地址線和WR)切換電路
總線切換采用74HC245三態(tài)總線收發(fā)器并聯(lián),分別選通。如圖2所示。
· 寫地址產(chǎn)生電路
DMA寫地址產(chǎn)生電路是一可預(yù)置數(shù)的16位2進(jìn)制計(jì)數(shù)器,電路是采用四片4位可預(yù)置計(jì)數(shù)器74HC569級(jí)連方式。因此可以預(yù)置16位地址的初值,就是DMA傳輸數(shù)據(jù)塊的起始地址。計(jì)數(shù)脈沖反向輸入74HC569的CP端以保證寫操作的時(shí)序。
3 工作原理
3.1 DMA允許與響應(yīng)
單片機(jī)系統(tǒng)開機(jī)運(yùn)行時(shí)或進(jìn)行內(nèi)部數(shù)據(jù)處理、顯示時(shí)應(yīng)置P1.0高,使其處于DMA禁止?fàn)顟B(tài)。單片機(jī)完成初始化或進(jìn)入DMA準(zhǔn)備就緒狀態(tài)時(shí),先向地址發(fā)生器寫入數(shù)據(jù)塊的起始地址,將地址溢出標(biāo)志位置零,再發(fā)出DMA允許信號(hào)釋放RAM的控制權(quán),等待DMA結(jié)束標(biāo)志和DMA控制信號(hào)。當(dāng)DMA允許為1且地址計(jì)數(shù)器溢出標(biāo)志為0時(shí),進(jìn)入DMA預(yù)備狀態(tài),等待外部觸發(fā)信號(hào)輸入。DMA觸發(fā)信號(hào)可以是周期信號(hào)的過零脈沖,也可以是單脈沖信號(hào)放大整形輸出,或者是 A/D轉(zhuǎn)換完成信號(hào)。DMA控制部分如圖3所示。本設(shè)計(jì)采用將感應(yīng)電動(dòng)勢(shì)信號(hào)放大整形,其脈沖前沿觸發(fā)。DMA允許后的第一個(gè)觸發(fā)脈沖到來,D觸發(fā)器輸出Q為1。開通四輸入端與非門輸出與振蕩器同頻同相的周期信號(hào),開始數(shù)據(jù)采集和傳送。由NE555和阻容元件組成的方波振蕩器的振蕩頻率決定采樣頻率的大小,其頻率應(yīng)小于等于A/D轉(zhuǎn)換器的最大轉(zhuǎn)換速率1Msps。與非門輸出信號(hào)同時(shí)作為RAM寫信號(hào)、A/D芯片讀/RD,經(jīng)反相后作為地址計(jì)數(shù)器的計(jì)數(shù)輸入。
評(píng)論