CAN(Controller Area Network,控制器局域網)是一種專為嚴苛環境設計的串行通信協議,以其高可靠性、實時性和強大的錯誤檢測能力,成為汽車電子與工業控制領域的“通用語言”。
CAN總線各節點都包括:
CAN控制器:處理通信協議,管理報文收發;
CAN收發器:將控制器信號轉換為總線電平。
目前合宙主推的Air780Exx、Air8000系列模組均已集成CAN控制器,可結合LuatOS的CAN核心庫進行高效開發。
本文也特別整理了CAN管腳配置、CAN收發器硬件參考電路及軟件配置相關要點,方便大家結合實際情況靈活運用。
一、CAN管腳配置

為了確保最佳的兼容性和穩定性,讓你的開發過程與官方參考設計及示例代碼無縫對接,建議遵循以下經過充分驗證的管腳配置方案。
1.1 CAN_RXD/CAN_TXD
雖然CAN_RXD/CAN_TXD可以映射到Air780Exx模組的多個管腳上,但一般來說,我們推薦大家固定使用PIN25/PIN106的復用組合。
1.2 CAN_STB
CAN_STB信號雖然相對靈活,但一般來說,我們仍然推薦大家固定使用PIN78:GPIO28,與我們的硬件參考設計和軟件代碼demo保持一致。
注意事項:
CAN_STB并非必須,如果系統中GPIO資源實在受限無法騰出一個GPIO做CAN_STB使用,可以將CAN收發器的CAN_STB信號直接接地,但代價是CAN收發器將無法進入低功耗模式。
最新GPIO復用表詳見資料中心:

二、CAN收發器硬件參考電路


2.1 收發器適配
LuatOS已經適配的CAN收發器為川土微的CA-IF1051VS,注意不是CA-IF1051S。
注意事項:
CA-IF1051VS供電電壓是4.5V-5.5V,典型值5V,不能直接使用VBAT,也不能直接使用VDD_EXT,請特別注意!
2.2 外圍元器件
CAN收發器硬件參考電路中的元器件,請嚴格按照圖中的要求選擇:
CMCC共模扼流圈:
推薦型號ACT45B-101-2P;
TVSS1200靜電和涌浪保護:
推薦型號PESD1CAN。
2.3 喚醒功能配置
如果有需要將CAN收發器喚醒的場景需求,請將WAKEUP信號與CAN_RXD短接,這樣CAN收到信號時可以通過WAKEUP將模組喚醒,如下圖所示的WAKEUP0。

三、CAN功能軟件配置
軟件配置主要涉及兩個方面,引腳的初始化配置與CAN核心庫。
3.1 IO初始化
在使用CAN功能之前,都需要先使用LuatIO工具生成pins配置json文件,也就是對IO的初始化功能配置。

3.2 CAN核心庫
LuatOS提供的CAN核心庫為開發者封裝了完整、易用的軟件接口,讓CAN通信功能的實現變得簡單高效。該庫全面支持CAN 2.0A/B協議,通信速率最高可達1Mbps,可滿足絕大多數工業應用場景。

今天的內容就分享到這里了
審核編輯 黃宇
-
CAN
+關注
關注
59文章
3067瀏覽量
472760 -
總線
+關注
關注
10文章
3040瀏覽量
91667
發布評論請先 登錄
【迅為iTOP-Hi3403開發板】一站式啟動Hi3403 NPU開發:從運行例程開始,快速驗證AI效能
中科曙光推出科學大模型一站式開發平臺OneScience
從入門到實戰:Modbus極簡開發指南,一站式技術通關
芯圣電子重磅推出一站式HC AI玩具盒子服務方案
芯圣電子重磅推出一站式HC AI玩具盒子服務方案
省時省力,CAN總線一站式開發指南
評論