基于RS - 485 總線的數(shù)據(jù)采集系統(tǒng)
1.2.6 數(shù)據(jù)存儲模塊
該模塊用來存儲下位機(jī)傳過來的壓力數(shù)據(jù)。系統(tǒng)對數(shù)據(jù)存儲器的基本要求是存儲容量要大,掉電數(shù)據(jù)不容易丟失,能保存較長時間,易于擴(kuò)展容量?;谝陨弦?,選用了遵循總線串行擴(kuò)展技術(shù)的24C256。單片機(jī)和24C256 之間的數(shù)據(jù)交換完全遵照IIC 總線的規(guī)定,即單片機(jī)作為主機(jī),24C256 作為從機(jī),所有操作都是由SDA 和SCL 2 個腳位的狀態(tài)(共有4 個狀態(tài):開始、停止、數(shù)據(jù)和應(yīng)答) 來確定。24C256 和單片機(jī)的連接圖如圖8 所示。
圖8 24C256 和單片機(jī)連接圖
1.2.7 時鐘模塊
采用實(shí)時時鐘芯片DS12C887 為系統(tǒng)產(chǎn)生時間基準(zhǔn),它和單片機(jī)的連接如圖9 所示??僧?dāng)作單片機(jī)的外部RAM處理,通過P0 口對DS12C887 進(jìn)行操作,通過其中斷引腳IRQ向單片機(jī)發(fā)出中斷,使單片機(jī)讀出時間。
圖9 DS12C887 和單片機(jī)連接圖
2 軟件設(shè)計(jì)
系統(tǒng)軟件框圖如圖10 所示。一級目錄分為上位機(jī)程序、通信程序和下位機(jī)程序;二級目錄分為數(shù)據(jù)采集程序模塊、模擬多路開關(guān)控制程序模塊、數(shù)據(jù)處理程序模塊、下位機(jī)通信程序模塊、上位機(jī)通信程序模塊、顯示程序模塊、存儲程序模塊、時鐘程序模塊以及鍵盤控制模塊。每個二級程序模塊又由更小的函數(shù)組成,這樣的設(shè)計(jì)方法容易修改和測試。
3 結(jié)語
軟件程序設(shè)計(jì)按照自頂向下的原則,按功能模塊化劃分采用C 語言編程實(shí)現(xiàn)各模塊功能,以子程序的形式進(jìn)行封裝對外部提供規(guī)定的接口,再按照系統(tǒng)流程要求進(jìn)行模塊組合最后實(shí)現(xiàn)整個系統(tǒng)。
評論