久久自己只精产国品-韩日美无码精品无码-日本熟妇中文字幕三级-男ji大巴进入女人的视频小说-久久97超碰色中文字幕总站

寧波市鄞州首南恒宇激光雕刻廠

在30分鐘或更短的時間內開發CAN
分享到:


摘要:自從上世紀80年代引入CAN以來,在其規范和需求方面出現了巨大演變。由于其擴展能力,使得其在眾多應用中得以廣泛使用,從汽車到工業機器和工業自動化。隨著其廣泛使用,實施復雜性也在兩個層面上相應增加:

* CAN控制器設計從基本控制器轉向全CAN控制器,在某些情況下,甚至為擴展的全CAN控制器。

* CAN軟件堆棧從汽車通信堆棧變為CANOpen,以及DeviceNet。

假定CAN僅是汽車系統中的單個組件,開發人員僅需面對盡可能少的挑戰就能實現它,那么就能夠將工作重點放在系統級功能上面,而不是糾纏于外圍配置。在本文中,將研究CAN接口,討論不同的實施、配置方式,以及調試接口以簡化設計。

控制器區域網絡(CAN)最早是由Robert Bosch引入的,用于處理不斷增加的車輛功能和網絡復雜性。在嵌入式系統開發的早期階段,模塊中包含單個MCU,可執行單個或多個簡單功能,如通過ADC讀取傳感器電平信號并控制直流電機等。隨著這些功能日益復雜,設計人員采用分布式模塊架構,在同一PCB(印刷電路板)的2個或多個MCU中實現其功能,并使用I2C或SPI協議執行這些功能之間的通訊。對于前面的相同示例,綜合模塊則具有用于執行所有系統功能、診斷和故障保證的主MCU,同時另一MCU負責BLDC電機控制功能。以較低的成本采用廣泛使用的通用MCU即可實現該目的。

在當前的車輛中,功能分布于車輛中而不僅僅是模塊內,模塊間的通信協議需要高的故障容差,,因而在汽車市場中設計并引入了CAN。

圖1 –CAN 介紹
到上世紀90 年代中,隨著DeviceNet 和CANOpen 協議的引入,CAN 以及工業控制已在汽車之外的范圍得到廣泛應用。

受市場中這類需求的推動,很多MCU 供應商內部集成了CAN 控制器,用于推廣這類市場。雖然在高層面上CAN 的功能看上去類似于I2C 或SPI,允許兩個節點之間的通信,但在控制器層面上CAN 通信與他們存在本質不同,下面列出CAN 能提供的服務:

· CAN 通信基于消息,而不是基于地址。
· CAN 節點能夠在總線上發送或請求消息。
· 復雜的錯誤處理機制。
· 使用CRC-15(循環冗余校驗)保護,能夠探測一行中出現的5 個損壞位。

由于是基于消息而不是基于地址,CAN 總線上的節點可擁有多條傳輸的消息,也就是說,制動器模塊可能具有包含車輛速度信息的消息,包含傳感器信息的消息(如輪速傳感器),以及包含診斷信息的消息,后者具有最高的傳輸優先級。

首先考察節點中的消息優先級和消息ID 解碼,人們或許認為CAN 會使CPU 產生高的負荷,從而阻止更多復雜功能的集成。這類問題是可以通過不同類型的CAN 控制器解釋,如圖2 所示。

圖2 - 基本CAN 控制器和全CAN 控制器
· 基本CAN 控制器:在CAN 控制器硬件中實現了十分基本的過濾功能,減少了消息處理,具有較高的CPU 負荷。在基本CAN 控制器中,CPU 會從CAN 控制器收到多條中斷信號,以便接收、確認和分析消息,也會從應用程序一側收到多條中斷信號,以便確定是否要根據所收到消息的ID 傳輸應答。基本CAN 控制器僅應在低波特率、低消息通信數量的情形下使用,從而使得CPU 能夠處理額外的非通信任務。

· 全 CAN 控制器:提供了擴展的消息過濾功能,以及硬件消息分析功能,解放了CPU,使其無需再對每一接收到的消息做出回應。可對全CAN 控制器進行配置,僅當消息ID 已在控制器中設為接受時,才會中斷CPU。全CAN 控制器還設置了多個消息對象,相當于郵箱,郵箱能夠儲存特定的消息信息,如收到的ID 和數據字節,以供CPU 檢索。在該情形下,CPU 可在任何時間檢索消息,但必須在更新所收到的相同消息并改寫郵箱當前內容之前完成任務。這類情形在最終類型的CAN 控制器中得到了解決。

· 擴展的全CAN 控制器:通過提供用于接收消息的硬件FIFO,提供了額外層面的硬件實施功能。通過這類實施方案,在中斷CPU 中斷之前,可保存相同消息一個以上的情況,因而防止了高頻率消息的丟失,通過該功能,CPU 甚至能夠在較長的時間段內專注于主要的模塊功能。

請注意,DeviceNet 將過濾判據擴展到了ID 字段之外,擴展到數據的前兩個字節,在實施該協議時,必須使用全CAN 控制器或擴展的全CAN 控制器。

根據具體的消息結構,上述兩種配置可共存于單個模塊中,以便實現高的消息優先級,并改善CPU 對所收到消息的處理。例如,對于接收一條消息(如ID = 0x250)中實效保護信息以及另一消息(如ID = 0x3FF)中溫度傳感器信息的模塊,可將第一個CAN 控制器配置為全CAN 控制器,并將第2 個配置為具有4 緩沖FIFO 的擴展全CAN 控制器:收到每條失效保護消息時,以及溫度傳感器消息時,CPU 被中斷。在圖3 中,給出了這類CAN 控制器的配置圖,它具有一個可定制的虛擬CAN 控制器,能夠快速實現復雜的消息處理,這三種類型的CAN 控制器可共存于其中:

· 消息5  基本CAN 郵箱。
· 消息0x250  全CAN 郵箱。
· 消息0x3FF  擴展的全CAN 郵箱。

圖3 – PSoC Creator – CAN 控制器配置
除了其功能方面的優勢外,CAN 還因其高的容錯性而得到廣泛應用。其比特率高達1Mbps、總線長度可達1000 米(在50Kbps 下),因而必須遵照CAN 比特時序,以便在電子噪音環境下工作,同時保持高水平的故障檢測和校錯特性。

為了確保高水平的容錯性能,與CAN 一起引入了亞比特時序結構,能夠實現更嚴格的控制,確保每一CAN 總線的正確總線狀態。

一個單獨的CAN 位由4 個段表示:

· Sync_Seg:用于同步總線上的各種節點。
· Prop_Seg:對物理延遲進行補償(物理總線和內部CAN 節點上的傳播延遲)。
· Phase_Seg1,Phase_Seg2:用于補償相位邊緣誤差。在在同步過程中,會縮短或加長這些段。

僅具有3 個段的CAN 控制器也很常見,其中,Prop_Seg 添加到了Phase_Seg1 上。

在圖4 中,顯示了位時序表征,以及實現它所需要的所有參數:

圖4 - 位時序表征
請注意,所有的CAN 位時序計算均基于時間量(TQ),它定義為固定的時間單位,由振蕩器導出,取值介于8 和25 之間。按照時間方面的觀點,1 個TQ 等效于1Mbps 總線速度下1 微秒位長度的1/25th 位或40 納秒。

聯系我們

地址: 浙江省.寧波市鄞州區寧姜公路(九曲小區二期旁)

郵編: 315040

聯系人: 盛立峰

電話: 0574-87139378

傳真: 0574-87139378

手機: 13867861670

郵箱: 85400329@qq.com

聯系我們
主站蜘蛛池模板: 大香伊蕉在人线国产最新75| 国产精品久久久一区二区三区| 少妇人妻无码专用视频| 日韩一区二区三免费高清| 亚洲综合无码精品一区二区| 亚洲国产精品第一区二区| 精品国产污污免费网站| 日韩人妻中文无码一区二区三区 | 熟女丝袜潮喷内裤视频网站| 和黑人邻居中文字幕在线| 欧美三根一起进三p| 国产在线精品视频二区| 高h喷水荡肉爽文np肉色学校| 国产精品丝袜黑色高跟鞋| 大学生粉嫩无套流白浆| 9久9久女女热精品视频在线观看 | 狂野欧美性猛交免费视频| 国产乱人伦av在线无码| 人妻少妇被粗大爽9797pw| 国产乱码精品一区三上| 强伦人妻一区二区三区视频18| 欧美亚洲精品一区二区| 日韩精品无码一区二区视频| 成人无码精品一区二区三区 | 亚洲成在人线在线播放无码| 久久精品国产丝袜人妻| 巨大黑人极品videos精品| 熟女少妇人妻中文字幕| 伊人色合天天久久综合网| 亚洲韩欧美第25集完整版 | 久久精品国产av一区二区三区 | 粗大猛烈进出高潮视频二| 国产精品免费视频色拍拍| 久久午夜羞羞影院免费观看| 国产色诱视频在线播放网站| 人人妻人人妻人人片av| 四虎影视国产精品久久| 国产成人av免费观看| 四虎国产精品免费永久在线| 亚洲国产精品久久久天堂不卡海量| 国产亚洲真人做受在线观看|