基于CAN總線的鍋爐分布式監(jiān)控系統(tǒng)設(shè)計
當有通信事件產(chǎn)生時,就可用函數(shù)ReadFile( )和WriteFile( )直接對串口緩沖區(qū)進行讀寫操作了。其引用格式分別為:
WriteFile(hFile,lpBuffer,nNumberOfBytesToWrite.lpNumberOfBytesWritten,lpOverlapped);
ReadFile(hFile,lpBuffer,nNumberOfBytesToRead,lpNumberOfBytesRead,lpOverlapped).
上位機軟件其他功能的實現(xiàn),可通過調(diào)用相應(yīng)組件的屬性進行編程。最后編制的軟件界面如圖5所示。 3.2 CAN通信模塊設(shè)計
CAN通信程序?qū)⒉杉降臄?shù)據(jù)發(fā)送到CAN控制器,再由CAN控制器將數(shù)據(jù)發(fā)送到CAN總線。
對于接收數(shù)據(jù),系統(tǒng)采用中斷方式實現(xiàn)。一旦中斷發(fā)生,即將接收的數(shù)據(jù)自動裝載到相應(yīng)的報文寄存器中,此時還可采用屏蔽濾波方式。利用屏蔽濾波寄存器對接收報文的標識符和預(yù)先在接收緩沖器初始化時設(shè)定的標識符進行有選擇的逐位比較。只有標識符匹配的報文才能進入接收緩沖器,那些不符合要求的報文則將被屏蔽于接收緩沖器之外,從而減輕CPU處理報文的負擔。此外,不同數(shù)據(jù)應(yīng)放人不同的報文寄存器中,其程序流程如圖6所示。 結(jié) 語
本系統(tǒng)采用了lBM-PC兼容機、單片機和SJA1000組成二級控制系統(tǒng).實現(xiàn)了一體化的操作,解決了長期以來在承壓鍋爐監(jiān)控方面的難題。系統(tǒng)結(jié)構(gòu)簡單,操作方便,安全可靠,造價低廉,運行穩(wěn)定可靠。(end)
評論