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