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