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