MCP2517FD:高性能CAN FD控制器的技術剖析與應用指南
一、引言
在當今的電子系統設計中,CAN FD(Controller Area Network with Flexible Data Rate)技術憑借其高速數據傳輸和靈活的數據長度特性,在汽車、工業自動化等領域得到廣泛應用。Microchip的MCP2517FD作為一款外部CAN FD控制器,以其豐富的功能和出色的性能,為工程師們提供了一個可靠的解決方案。本文將對MCP2517FD的特性、功能模塊、內存組織、SPI接口等方面進行詳細剖析,幫助電子工程師更好地理解和應用這款控制器。
文件下載:MCP2517FDT-H SL.pdf
二、MCP2517FD概述
MCP2517FD是一款具有SPI接口的外部CAN FD控制器,具有成本低、占用空間小的特點。它可以輕松地添加到帶有SPI接口的微控制器中,為缺乏CAN FD外設或CAN FD通道不足的微控制器添加CAN FD通信功能。該控制器支持ISO 11898 - 1:2015標準,能夠處理經典CAN 2.0B和CAN FD格式的幀。
2.1 主要特性
- 速率優勢:仲裁比特率最高可達1 Mbps,數據比特率最高可達8 Mbps,滿足高速數據傳輸需求。
- 模式多樣:具備混合CAN 2.0B和CAN FD模式、CAN 2.0B模式等多種工作模式,適應不同的應用場景。
- FIFO配置:擁有31個FIFO,可配置為發送或接收FIFO,還有一個發送隊列(TXQ)和一個帶有32位時間戳的發送事件FIFO(TEF)。
- 消息處理:支持消息傳輸優先級設置,可根據優先級位字段或消息ID進行排序;可編程自動重傳嘗試次數,可設置為無限次、3次或禁用。
- 過濾功能:配備32個靈活的過濾和屏蔽對象,可對標準ID + 前18位數據位或擴展ID進行過濾。
- 電氣特性:工作電壓范圍為2.7至5.5V,有源電流在5.5V、40 MHz CAN時鐘下最大為20 mA,睡眠電流典型值為10 μA。
2.2 典型應用
MCP2517FD可直接與工作電壓在2.7V至5.5V的微控制器接口,同時可直接連接高速CAN FD收發器,無需外部電平轉換器。在典型應用中,微控制器通過SPI接口對CAN FD控制器進行配置和控制,MCP2517FD通過INT、INT0和INT1向微控制器發送中斷信號,CLKO引腳為微控制器提供時鐘。
三、CAN FD控制器模塊
3.1 FIFO配置與管理
每個FIFO可配置為發送或接收FIFO,FIFO控制模塊負責跟蹤FIFO的頭和尾,并計算用戶地址。對于發送FIFO,用戶地址指向RAM中存儲下一個發送消息數據的地址;對于接收FIFO,用戶地址指向RAM中讀取下一個接收消息數據的地址。用戶通過增加FIFO的頭/尾來通知FIFO消息已寫入或讀取。
3.2 工作模式
CAN FD控制器模塊具有多種工作模式,包括配置模式、正常CAN FD模式、正常CAN 2.0模式、睡眠模式、監聽模式、受限操作模式、內部和外部回環模式等。不同的模式適用于不同的應用場景,例如在調試階段可使用回環模式進行自我測試。
3.3 消息處理
- 發送隊列(TXQ):是一個特殊的發送FIFO,根據隊列中存儲的消息ID進行消息發送。
- 發送事件FIFO(TEF):存儲已發送消息的ID,并可對消息進行時間戳標記。
- CAN FD位流處理器(BSP):實現CAN FD協議的介質訪問控制,負責位流的序列化和反序列化、CAN FD幀的編碼和解碼、介質訪問管理、幀確認以及錯誤檢測和信號處理。
- 中斷處理:當接收到新消息或消息發送成功時,CAN FD控制器模塊會生成中斷信號。
四、內存組織
MCP2517FD的內存主要包括MCP2517FD特殊功能寄存器(SFR)、CAN FD控制器模塊SFR和消息內存(RAM)。SFR為32位寬,LSB位于較低地址。
4.1 MCP2517FD特定寄存器
包括OSC、IOCON、CRC、ECCCON和ECCSTAT等寄存器,用于控制振蕩器、I/O引腳、CRC校驗和ECC糾錯等功能。
4.2 CAN FD控制器模塊寄存器
涵蓋配置寄存器、中斷和狀態寄存器、錯誤和診斷寄存器、FIFO控制和狀態寄存器以及過濾配置和控制寄存器等,用于對CAN FD控制器模塊進行全面配置和監控。
4.3 消息內存
MCP2517FD包含2 KB的RAM,用于存儲消息對象,包括發送消息對象、接收消息對象和TEF對象。消息對象的數量和數據字節數可根據需要進行配置,FIFOs和消息對象只能在配置模式下進行配置。RAM采用錯誤糾正碼(ECC)進行保護,支持單錯誤糾正(SEC)和雙錯誤檢測(DED)。
五、SPI接口
MCP2517FD通過SPI接口與微控制器進行通信,SPI時鐘速度最高可達20 MHz,支持SPI模式0,0和1,1。SFR和消息內存(RAM)可通過SPI指令進行訪問。
5.1 SPI指令格式
每個SPI指令以nCS引腳拉低開始,4位命令和12位地址在SCK的上升沿移入SDI。寫指令時,數據位在SCK的上升沿移入SDI;讀指令時,數據位在SCK的下降沿從SDO移出。指令以nCS引腳拉高結束。
5.2 寄存器訪問
SFR訪問是字節導向的,可一次讀寫任意數量的數據字節,地址在每個數據字節后自動遞增。消息內存(RAM)訪問是字導向的,每次讀寫必須是4字節的倍數。
5.3 帶CRC的SPI命令
為了檢測或避免SPI通信中的位錯誤,提供了帶CRC的SPI命令,包括READ_CRC、WRITE_CRC和WRITE_SAFE等。CRC計算使用CRC - 16/USB多項式,可有效檢測SPI通信中的錯誤。
六、振蕩器與I/O配置
6.1 振蕩器
MCP2517FD的振蕩器系統可生成SYSCLK,用于CAN FD控制器模塊和RAM訪問。時間參考可以是外部40、20或4 MHz的晶體、陶瓷諧振器或外部時鐘。OSC寄存器用于控制振蕩器,可啟用PLL將4 MHz時鐘乘以10,內部40/20 MHz時鐘可進行二分頻,生成的時鐘可通過CLKO引腳輸出。
6.2 I/O配置
IOCON寄存器用于配置I/O引腳,可選擇CLKO/SOF引腳的功能,將TXCAN配置為推挽或開漏輸出,將INT0和INT1配置為GPIO或收發器的發送和接收中斷引腳,INT0/GPIO0/XSTBY還可用于自動控制收發器的待機引腳。
七、電氣規格與性能曲線
7.1 電氣規格
MCP2517FD的電氣規格涵蓋絕對最大額定值、DC特性、CLKOUT和SOF的AC特性、晶體振蕩器的AC特性、CAN比特率、CAN RX過濾的AC特性、SPI的AC特性以及溫度規格等方面,為工程師在設計電路時提供了重要的參考依據。
7.2 性能曲線
文檔中提供了一些典型性能曲線,如平均IDDS與溫度的關系曲線,雖然這些曲線是基于有限樣本的統計總結,不具有測試或保證性,但可作為設計參考。
八、封裝信息
MCP2517FD提供14引腳的SOIC和VDFN封裝,文檔中詳細介紹了封裝的標記信息、尺寸規格和推薦的焊盤圖案,方便工程師進行PCB設計。
九、總結
MCP2517FD作為一款功能強大的CAN FD控制器,具有高速數據傳輸、靈活的配置選項、可靠的錯誤檢測和糾正機制等優點。通過深入了解其特性、功能模塊、內存組織、SPI接口等方面的知識,電子工程師可以更好地將其應用于各種CAN FD通信系統中。在實際設計過程中,工程師還需要根據具體的應用需求和電氣規格進行合理的電路設計和參數配置,以確保系統的穩定性和可靠性。
你在使用MCP2517FD的過程中遇到過哪些挑戰?又是如何解決的呢?歡迎在評論區分享你的經驗和見解。
-
MCP2517FD
+關注
關注
0文章
4瀏覽量
3718
發布評論請先 登錄
【RK3562J開發筆記】MCP2518FD外部CAN-FD控制器的調試方法
MCP2517FD振蕩器
CAN總線的系統架構
Microchip宣布提供業界第一款外部CAN靈活數據速率(CAN FD)控制器MCP2517FD
CAN FD控制器MCP2517FD的主要特性 PCB正面布局
帶SPllnterface的外部CAN FD控制器MCP2517FD的英文數據手冊
如何使用MCP251XFD CAN FD主板作為演示板來評估MCP2517FD器件概述
MCP2517FD CAN FD控制器的詳細資料和數據手冊免費下載
CAN FD Driver-裸機模式
MCP2517FD:高性能CAN FD控制器的技術剖析與應用指南
評論