新聞中心

EEPW首頁 > 測試測量 > 設計應用 > 基于SOPC的以太網遠程數據采集系統(tǒng)設計

基于SOPC的以太網遠程數據采集系統(tǒng)設計

作者: 時間:2012-05-24 來源:網絡 收藏


將NIOSII處理器、UART JTAG、SRAM控制、SDRAM控制器、CFI控制器、EPCS控制器、PLL及ADS8364控制器、DM900A控制器核添加到 Builder中生成系統(tǒng),如圖5所示。點擊Generate生成NiosII系統(tǒng)。然后在QuartusⅡ添加PLL模塊,添加輸入輸出引腳,完成頂層模塊硬件接口的連接。最后分配引腳,編譯下載到FPGA中,就完成了FPGA硬件設計。

3 系統(tǒng)軟件設計
軟件設計主要是在NiosII IDE環(huán)境中,采用μC/OS-II嵌入式實時操作系統(tǒng),使用LWIP作為網絡協(xié)議棧。LWIP即Light WeightIP(輕量級IP),是瑞十計算機科學院的AdamDunkels等人開發(fā)的一套用于嵌入式系統(tǒng)的開放源碼的輕型TCP/IP協(xié)議棧。LWIP的主要目的是減少存儲器占用和代碼尺寸,使其適合應用于小型、資源有限的嵌入式系統(tǒng)中。本設計使用標準的socket接口來實現TCP/IP操作。
軟件主要由3個任務組成:數據采集任務、FIR濾波任務、網絡傳輸任務。在程序中調用lwip_stack_init()函數和lwip_divice_init()函數分別完成協(xié)議棧和驅動程序的初始化,調用init_done_func()、get_mac_addr()和get_ip_addr()函數設置MAC和IP地址;然后由標準Sock et接口完成網絡操作。NIOSII開發(fā)包中有很多LWIP的編程實例,修改部分代碼即可使用。由μC/OS-Ⅱ的OSTaskCteate()函數創(chuàng)建數據采集任務DataAcquisition Task()和濾波任務FilterTask()。
數據采集任務負責從A/D輸出數據通過PIO口采集到片上FIFO中,通過調用IORD_ALTERA_AVALON_PIO_DATA()函數在每個采樣周期連續(xù)采樣10次,將采集的數據放入FIFO中,喚醒濾波任務。濾波任務采樣FIR濾波,利用Altera提供的DSP Builder在FPGA中建立一個FIR濾波器,對一個采樣周期的數據進行濾波,然后將濾波后的數據放入發(fā)送隊列。通過仿真FIR濾波器對高頻信號有很好的濾除效果。網絡傳輸任務從發(fā)送隊列取數據發(fā)送到上位機。取數據發(fā)送到上位機。軟件流程如圖6所示。

e.jpg



4 結束語
隨著計算機技術和互聯(lián)網技術的深入發(fā)展,數據采集處理技術廣泛應用于工業(yè)、通信、測試測量等領域,越來越多的設備需要網絡接入功能,以實現設備的遠程監(jiān)控。本設計將嵌入式技術和成熟的技術結合在一起組成系統(tǒng),介紹了從底層硬件,到NiosⅡ應用軟件的整個架構的設計。最后在開發(fā)板上實現并通過實驗驗證,結果滿足設計要求,具有良好的性能。此數據采集系統(tǒng)可以根據
需要靈活配置,可以適應不同的應用場合。


上一頁 1 2 3 下一頁

評論


相關推薦

技術專區(qū)

關閉