新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于Avalon總線SHT11溫濕度傳感器自定義IP核的開發(fā)流程

基于Avalon總線SHT11溫濕度傳感器自定義IP核的開發(fā)流程

作者: 時間:2013-12-31 來源:網絡 收藏

  2.2 接口模塊的設計

  根據的描述,確定該模塊與Avalon所需要的接口信號。通過使用較少的信號來處理讀寫。系統(tǒng)通過時鐘線、數據線和相連,根據時鐘的時序向數據線寫命令,通過數據線輸出數據。設計模塊的輸入信號為:clk,sysclk, n_rest, data_i,data_o,wr,rd, addr。輸出信號為:SCK,DATA(DATA是雙向數據線)。端口信號的部分說明如下:

  moduleSHT11(

  clk,//系統(tǒng)時鐘

  n_rest,//系統(tǒng)復位

  data_i,//Avalon寫數據總線

  data_o,//Avalon讀數據總線

  wr,//Avalon寫請求

  rd,//Avalon讀請求

  sysclk,//系統(tǒng)時鐘

  addr,//Avalon地址總線

  SCK,//時鐘線輸出

  DATA,//數據輸入輸出(雙向)

  );

  2.3 行為模塊的實現(xiàn)

  行為模塊實現(xiàn)的是SHT11的功能。該部分是整個設計的核心,實現(xiàn)對SHT11的控制。設計時必須根據驅動控制的規(guī)范以及時序的要求來編寫。設計的過程中,信號的控制較為復雜,但在時序邏輯中,這又十分重要??梢栽O定一系列的寄存器,作為訪問硬件的通道[7?8]。

  根據其驅動規(guī)范,不同的命令實現(xiàn)相應的功能。傳輸開始時,應該發(fā)出啟動信號。啟動信號包括時鐘線為高,數據線由高變低,并在下一個時鐘線為高的時候將數據線變高。當啟動信號開始后,輸入相應指令(包含3位地址和5位命令),通過數據線,確定接收到ACK信號后,表示SHT11已經正確接收命令。待一定的時間后,當數據線由高拉低后開始信號的傳輸。系統(tǒng)通過確認數據線上的ACK來確定每個字節(jié)的傳輸。數據傳輸完畢,進行CRC校驗。校驗完畢后,ACK為高,結束傳輸。

  在進行設計時,采用嵌套狀態(tài)機來實現(xiàn)驅動邏輯。根據驅動控制器的讀寫命令及讀寫時序,采取不同狀態(tài)機來實現(xiàn),如圖2所示。輸入命令之后,根據不同的讀寫請求,進入不同的狀態(tài)機。

圖2 狀態(tài)機

  圖2 狀態(tài)機

  通過rd和wr以及地址addr控制數據線的讀寫。當addr=1wr,則向數據線寫數據(data_i),data_i的輸入格式是crc(1位)wr_data(16位)command(2位),當addr=0wr,進入狀態(tài)機;當addr=2 amp;rd,從數據線讀取數據data_o。

  設內部寄存器command,根據不同的命令,進入不同的狀態(tài)機循環(huán):若command為01,通過數據線向寄存器寫數據;若command為10,通過數據線從寄存器讀數據;若command為其他,則讀取數據。當傳送8位數據后,需判斷雙向數據線DATA的ACK信號的高低,當接收到ACK信號時,再根據相應的命令,進行數據的傳輸。當數據傳輸完畢后,需要經行CRC校驗。圖3是仿真時序圖,實現(xiàn)向寄存器寫數據的功能。

  2.4 軟件設計

  該部分可以直接在SOPC Builder 中添加設計好的和Verilog HDL 語言描述的文件,并根據Avalon 總線傳輸規(guī)范設置好相關的信號線,如圖4所示。這里要注意,使用的是從端口。完成后,將添加至SOPC中,建立內嵌系統(tǒng),并編譯下載到FPGA 器件中。

 圖3 時序仿真圖

  圖3 時序仿真圖

圖4 Avalon接口信號

  圖4 Avalon接口信號

  由于在NiosII IDE 環(huán)境下可直接編寫用戶程序,所以可以不用編寫驅動程序。在NiosII IDE 環(huán)境下,可直接調用函數IOWR (BASE,OFFSET,DATA) 和IORD(BASE ,OFFSET) 對內部寄存器進行讀寫。在wr和rd的控制下進行讀寫。

  3 測試

  農業(yè)智能大棚(該花卉的適宜溫度是18 ℃,適宜濕度是58 RH),也就是棚內維持在作物適宜生長的溫度、濕度等。若有變化,其將會調節(jié)相應的外圍設備,來保持最佳環(huán)境。在大棚中,在測試節(jié)點上,SHT11監(jiān)測實時的溫度和濕度,將數據送到nRF24L01,數據通過基站最終到達終端虛擬控制中心。其所獲得的數據變化曲線如圖5、圖6所示。

  

圖5 溫度隨時間的變化曲線圖圖6 濕度隨時間的變化曲線圖

  圖5 溫度隨時間的變化曲線圖  圖6 濕度隨時間的變化曲線圖

  結語

  本文介紹了基于SHT11自定義的開發(fā)流程,利用有限狀態(tài)機設計了驅動硬件邏輯,并且基于NiosII嵌入式處理器構建了一個用戶定制的嵌入式系統(tǒng)。在SOPC中,設計人員可以靈活添加IP核,減輕設計負擔,避免重復工作。

土壤濕度傳感器相關文章:土壤濕度傳感器原理
溫濕度控制器相關文章:溫濕度控制器原理

上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉