CAN總線在多機通信中的應用
3.2 發(fā)送程序
此系統(tǒng)采用中斷方式發(fā)送信息,這樣能節(jié)省資源,提高通信效率。需要發(fā)送信息時,先將信息組合成一幀報文:數(shù)據(jù)幀或遠程幀。進入發(fā)送程序后,首先關閉中斷,保護現(xiàn)場,讀中斷寄存器是否為發(fā)送中斷,將報文寫入發(fā)送緩沖區(qū),設置命令寄存器允許發(fā)送,開中斷。發(fā)送程序流程圖,如圖4所示。本文引用地址:http://www.ljygm.com/article/156563.htm
3.3 接受程序
此系統(tǒng)仍采用中斷方式接收信息。接收程序比較復雜,需要對錯誤報警,接收溢出等情況作進一步的處理。信息報文通過CAN總線被送入接收緩存器中,接收中斷被置位,處理器從控制器SJA1000T的緩存器內(nèi)讀取信息,再設置新的接收標志,開中斷。接收程序流程圖如圖5所示。
4 結束語
把多個通信節(jié)點連接到PCI9810-CAN適配卡上的CAN總線,構成一個局部通信網(wǎng)絡,從而實現(xiàn)PC機對多通信節(jié)點的檢控和信息傳送,通信節(jié)點間的高速通信。在實際中,可以實現(xiàn)約110個通信節(jié)點間的通信,但系統(tǒng)比較復雜,通信效率降低,就需要考慮PCI9810-CAN適配卡和通信節(jié)點的程序改進和相應算法的應用。在多機通信系統(tǒng)的設計過程中,主要是通過軟件的編寫,提高系統(tǒng)的高速傳輸性。
評論