基于FPGA的一種新型8通道數(shù)據(jù)采集系統(tǒng)
TMS32028335需要完成伺服系統(tǒng)主要的伺服算法工作,其根據(jù)算法需要,在適當(dāng)時刻通過FPGA啟動MAX1300,CS變低,WR變低,數(shù)據(jù)線和地址線信息寫入FPGA,啟動MAX1300采集數(shù)據(jù)。當(dāng)采集工作完成后,對數(shù)據(jù)進(jìn)行讀取,CS變低,RD變低,從FPGA讀取數(shù)據(jù)進(jìn)行處理,完成伺服算法。
2 FPGA時序控制
MAX1300正常工作需要32個工作時鐘,而普通MCU或DSP芯片SPI通信端口最大支持16個工作時鐘,使用起來很不方便,因此實(shí)際工作中采用FPGA控制MAX1300的工作時序及數(shù)據(jù)采集,DSP讀取MAX1300采集并經(jīng)FPGA處理后的數(shù)據(jù)。FPGA內(nèi)部時序設(shè)計如圖4所示。本文引用地址:http://butianyuan.cn/article/188312.htm
如圖4所示,F(xiàn)PGA時序設(shè)計主要由數(shù)據(jù)發(fā)送模塊TRANSMIT、數(shù)據(jù)接收模塊RECEIVE、數(shù)據(jù)處理模塊PROCESS、A/D采集控制模塊AD_CONTROL以及存儲FIFO組成。
實(shí)際采集中,AD_CONTROL模塊按DSP要求控制MAX1300時序工作。需要采集數(shù)據(jù)時,START信號變低后(START連接DSP的WR信號),AD_CONTROL讀取TMS32028335數(shù)據(jù)線和地址線信息(地址線選擇MAX1300采集通道,數(shù)據(jù)線加載MAX1300配置數(shù)據(jù)),并將相應(yīng)數(shù)據(jù)AD_DATA寫入TRANSMIT模塊(配置MAX1300,選擇采集通道)。隨后ADCS信號變低,同時SCLK時鐘開始工作,TRANSMIT模塊在SCLK時鐘作用下將數(shù)據(jù)由ADOUT引腳按位輸出。在采集數(shù)據(jù)之前先對MAX1300進(jìn)行配置,選擇電壓范圍以及時鐘工作模式。隨后AD_CONTROL連續(xù)輸出32個工作時鐘,在前16個時鐘選擇數(shù)據(jù)采集通道,后16個時鐘接收MAX1300輸出數(shù)據(jù)。AD_CONTROL模塊根據(jù)地址線高低電平產(chǎn)生通道選擇信號CHANNEL,同時產(chǎn)生內(nèi)部FIFO工作時鐘FIFOCLK,控制存儲FIFO的讀寫。
評論