超聲波流量計的主程序研究與設計 十
四 系統軟件設計
超聲波流量計的軟件設計包括主從單片機兩個部分,主單片機部分主要完成參數的設定,流量的計算,測量結果的顯示;從單片機部分主要完成超聲波收發電路的控制,傳播時間的測量,數據的檢驗和傳輸等。
4.1主單片機軟件設計
主單片機軟件部分主要包括參數處理程序、、計算子程序、鍵盤處理子程序、顯示子程序、串行通信子程序等。
流量計開啟后主單片機先執行系統初始化子程序,包括初始化單片機的系統參數、程序運行中所需的常數等,并自動進入參數設置狀態,然后向從單片機發送命令;參數設置完成后,進入主單片機程序的測量及參數顯示狀態,在這一狀態中程序不斷掃描鍵盤,根據鍵入的命令跳轉到相應的子程序模塊。
4.2從單片機程序設計
從單片機部分完成超聲波收發電路的控制、測量數據的采集、檢驗和傳輸。
系統進行測量前,先要進行自檢,檢查系統各部分工作是否正常,接著與主單片機進行通訊,接收主單片機傳送來的參數,并將參數存放在存儲器中,以便測量時使用。當接收到主單片機的測量命令后,從單片機開始進行傳播時間的測量,檢驗傳播時間的可靠性,并將這些數據通過串口送到主單片機進行計算。主從單片機之間的通訊采用中斷方式,在從單片機接到停止測量命令后結束測量過程,等待主單片機發送新的命令。
4.3主從單片機之間采用中斷方式進行通信,發送數據流程圖如下圖所示
4.4 INT0中斷服務子程序設計如下
超聲波流量計