久久自己只精产国品-韩日美无码精品无码-日本熟妇中文字幕三级-男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

聯系我們
主站蜘蛛池模板: 国产精品久久香蕉免费播放| v一区无码内射国产| 中文字幕精品亚洲无线码二区| 日韩夜夜高潮夜夜爽无码| 日韩亚洲欧美精品综合| 午夜电影院理伦片8888| 久久精品国产国产精品四凭 | 国产福利片无码区在线观看| 中文无码人妻有码人妻中文字幕 | 狂野欧美激情性xxxx | 99久久亚洲精品日本无码| 国产成人 综合 亚洲欧洲 | 男人女人做爽爽18禁网站| 欧美熟妇色ⅹxxx欧美妇| 影音先锋男人站| 免费国产污网站在线观看15| 日韩av无码中文无码电影| 国产成人精品亚洲午夜| 国产爆乳美女娇喘呻吟| 国产精品爽爽久久久久久无码 | 狠狠狠色丁香综合婷婷久久| 好男人在线社区www在线播放| 欧美牲交a欧美牲交aⅴ免费真| bt天堂新版中文在线地址| 精品国产乱码久久久久久浪潮小说| 国产内射xxxxx在线| 精品久久久久中文字幕日本| 日本护士毛茸茸| 五月天天爽天天狠久久久综合| 欧美黑人与白人精品a片| 国产精品福利自产拍久久| 亚洲午夜高清国产拍| 日韩精品亚洲人成在线| 亚洲丁香五月激情综合| 色五月五月丁香亚洲综合网| 国产在线精品一区二区三区直播| 亚洲欧洲日韩欧美网站| 国产成人无码18禁午夜福利网址| 日本真人边吃奶边做爽免费视频| 日韩av无码社区一区二区三区| 精品久久久99大香线蕉|