基于C8051F550的CAN總線(xiàn)智能節點(diǎn)的設計
3.2 CAN中斷服務(wù)程序
C8051F550的CAN支持的中斷方式有狀態(tài)中斷和模塊中斷。狀態(tài)中斷方式是在報文成功傳輸或檢測到CAN總線(xiàn)出錯時(shí)發(fā)生的。模塊中斷也稱(chēng)消息中斷。CAN控制器允許用戶(hù)按需求配置消息對象成為中斷源。通過(guò)設置消息控制寄存器的中斷懸掛位可實(shí)現此功能。在CAN中斷寄存器中以最高優(yōu)先級來(lái)指向這些掛起的中斷,而不考慮時(shí)序。狀態(tài)中斷有最高優(yōu)先級,讀取狀態(tài)寄存器會(huì )自動(dòng)清除狀態(tài)中斷值(8000h)。消息中斷優(yōu)先級是隨消息編號的增加而減小。消息中斷是由清除消息對象的INTPND位來(lái)清除的。中斷服務(wù)流程圖如圖3所示。本文引用地址:http://dyxdggzs.com/article/155931.htm
4 結束語(yǔ)
本系統的總線(xiàn)通信網(wǎng)絡(luò )已實(shí)現三個(gè)節點(diǎn)與上位機的連調,系統軟件采用結構化程序設計方案,使其具有較好的模塊化和可移植性,對于不同的系統功能或不同的應用環(huán)境,可以方便地進(jìn)行編程重組。
本文設計的CAN總線(xiàn)通信網(wǎng)絡(luò )中的主從智能節點(diǎn)經(jīng)過(guò)試驗調試,硬件電路工作正常,在總線(xiàn)數據采集系統中抗干擾能力強。軟件部分實(shí)時(shí)性強,準確率高。從節點(diǎn)可以實(shí)時(shí)地將信息傳送給主節點(diǎn),以便主節點(diǎn)實(shí)時(shí)監控。整個(gè)節點(diǎn)通信系統工作穩定,可以滿(mǎn)足現場(chǎng)環(huán)境要求。
在設計過(guò)程中,認識到目前基于CAN2.0B協(xié)議的CAN控制器無(wú)法為實(shí)時(shí)和非實(shí)時(shí)性數據動(dòng)態(tài)分配優(yōu)先權,基于事件觸發(fā)模式的訪(fǎng)問(wèn)機制無(wú)法滿(mǎn)足眾多節點(diǎn)的實(shí)時(shí)訪(fǎng)問(wèn)。
評論