SJA1000 是一種獨立的 CAN 控制器產品,具有用于汽車和一般工業應用的高級功能。它旨在取代 PCA82C200,因為它是硬件和軟件兼容的。由于具有一組增強的功能,該設備非常適合許多應用,尤其是在系統優化、診斷和維護很重要的情況下。本報告旨在指導用戶設計基于 SJA1000 的完整 CAN 節點。該報告提供了用于編程的典型應用電路圖和流程圖。
獨立的 CAN 控制器 SJA1000 有兩種不同的操作模式:(1)BasicCAN 模式(PCA82C200 兼容);(2) PeliCAN 模式。
上電時,BasicCAN 模式是默認操作模式。因此,無需任何更改即可使用為 PCA82C200 開發的現有硬件和軟件。除了 PCA82C200 已知的功能外,該模式還實現了一些額外功能,使設備更具吸引力。但是,它們不影響與 PCA82C200 的兼容性。
PeliCAN 模式是一種新的操作模式,能夠根據 CAN 規范 2.0B 處理所有幀類型。此外,它還提供了一些增強功能,使 SJA1000 適用于廣泛的應用。
CAN節點架構
一般每個CAN模塊可以分為不同的功能塊。與 CAN 總線線路的連接通常使用針對應用優化的 CAN 收發器構建。收發器控制來自 CAN 控制器的邏輯電平信號到總線上的物理電平,反之亦然。
下一層是 CAN 控制器,它實現了 CAN 規范中定義的完整 CAN 協議。通常它還包括消息緩沖和接受過濾。
所有這些 CAN 功能都由執行應用程序功能的模塊控制器控制。例如,它控制執行器、讀取傳感器和處理人機界面 (MMI)。
如圖 1 所示,SJA1000 獨立 CAN 控制器始終位于微控制器和收發器之間,在大多數情況下收發器是集成電路。
圖 1 CAN 模塊設置
框圖
圖 2 顯示了 SJA1000 的框圖。
圖 2 SJA1000 框圖
CAN 核心塊根據 CAN 規范控制 CAN 幀的發送和接收。
接口管理邏輯塊執行到外部主機控制器的鏈接,該控制器可以是微控制器或任何其他設備。通過 SJA1000 多路復用地址/數據總線的每個寄存器訪問和讀/寫選通的控制都在該單元中處理。除了 PCA82C200 已知的 BasicCAN 功能外,還添加了新的 PeliCAN 功能。因此,主要在此塊中實現了額外的寄存器和邏輯。
SJA1000 的發送緩沖器能夠存儲一個完整的消息(擴展或標準)。每當主機控制器啟動傳輸時,接口管理邏輯都會強制 CAN 核心模塊從傳輸緩沖區讀取 CAN 消息。
當接收到消息時,CAN 核心模塊將串行位流轉換為接受過濾器的并行數據。通過這個可編程過濾器,SJA1000 決定主機控制器實際接收到哪些消息。
接受過濾器接受的所有接收消息都存儲在接收 FIFO 中。根據操作模式和數據長度,最多可以存儲 32 條消息。這使得用戶在為系統指定中斷服務和中斷優先級時更加靈活,因為數據溢出情況的概率大大降低。
編輯:hfy
-
集成電路
+關注
關注
5387文章
11530瀏覽量
361633 -
控制器
+關注
關注
112文章
16332瀏覽量
177808 -
CAN
+關注
關注
57文章
2744瀏覽量
463621 -
過濾器
+關注
關注
1文章
428瀏覽量
19593 -
CAN 控制器
+關注
關注
0文章
2瀏覽量
5378
發布評論請先 登錄
相關推薦
評論