基于CAN總線智能建筑監控系統的通信協議設計
2.2 基于線與功能多節點仲裁過程
通信節點訪問總線,對總線上信號進行檢測,只有當總線處于空閑狀態時,才允許發送。當總線上有多個節點同時進行發送時,必須通過“無損的逐位仲裁”方法來使有最高優先權的報文優先發送。在CAN總線上發送的每一條報文都具有惟一的11位或29位ID。CAN總線的狀態取決于二進制數‘O’而不是‘1’,所以ID號越小,該報文擁有越高的優先權。因此一個為全‘0’標志符的報文具有總線上的最高級優先
權。多節點仲裁過程如圖3所示。本文引用地址:http://www.104case.com/article/157121.htm
2.3 CAN控制器SJAl000的功能介紹
CAN的通信協議由CAN控制器完成,CAN控制器由實現CAN總線協議的部分和實現與微處理器接口部分的電路組成。
SJAl000是Philips公司推出的一種高性能的CAN總線控制器,它不僅和PCA82C200的基本CAN模式(BasieCAN)兼容,而且還增強CAN模式(PeliCAN),這種模式支持CAN2.0B協議。SJAl000以一塊可編程芯片上的邏輯電路的組合來實現這些功能,提供了與模塊控制器及微控制器的接口,通過對它的編程,CPU可設置它的工作方式,控制它的工作狀態,與CAN驅動器PCA82C250進行數據的接收和發送。
3 CAN的幀結構
CAN協議規定了兩種不同的幀格式,不同之處為標識符的長度不同,具有11位標識符的幀稱之為標準幀,具有29位標識符的幀被稱為擴展幀。
3.1 CAN幀類型
報文傳輸由以下4個不同的幀類型所表示和控制
(1)數據幀:攜帶數據從發送器至接收器。
(2)遠程幀:由節點發送,請求發送具有相同標識符的數據幀。
(3)錯誤幀:由任何節點發出,檢測到錯誤就發出錯誤幀。
(4)過載幀:用于提供先前和后續數據幀或遠程幀之間的附加延時。
3.2 CAN擴展幀的數據幀結構
擴展幀的數據幀結構,如圖4所示。
評論