基于SD2300的定時采集存儲系統設計
3 軟件設計
3.1 系統軟件設計
系統軟件的設計流程如圖4所示。首先完成系統的初始化工作,包括C8051F021的初始化和SD2300的定時中斷設置,然后系統進入等待狀態。待到達預定時刻后,SD2300發出定時中斷,使C8051F021進入中斷處理程序,進行數據采集和存儲。存儲完畢,系統再次進入等待狀態,等待下一次定時中斷的到來。

3.2 SD2300的軟件接口設計
SD2300的I2C接口與C8051F021的GPIO相連,通過GPIO來模擬I2C,編程簡單,操作方便。SD2300的訪問控制通過寄存器直接尋址實現,其內部的寄存器如表1所列。

SD2300通過兩線式串行接口方式接收各種命令并讀寫數據。下面具體介紹兩線式串行接口方式。
①開始條件:當SCL處于高電平時,SDA由高電平變成低電平構成一個開始條件。對SD2300的所有操作均必須由開始條件開始。
②停止條件:當SCL處于高電平時,SDA由低電平變成高電平構成一個停止條件。此時SD2300所有的操作均停止,系統進入待機狀態。
③數據傳輸:當SCL為低電平,且SDA電平變化時,數據由C8051F021傳輸給SD2300;當SCL為高電平,且SDA電平不變時, C8051F021讀取SD2300 E2PROM發送來的數據;當SCL為高電平,且SDA電平變化時,SD2300收到一個開始或停止條件。
④確認:數據傳輸以8位序列進行。SD2300在第9個時鐘周期時將SDA置位為低電平,即送出一個確認信號,標明數據被其收到。








評論