1. 簡介
ArmSoM-W3 RK3588 開發(fā)板中已集成AN總線:
- 專欄總目錄
- CAN (controller Area Network)
- CAN BUS:控制器局域網(wǎng)絡(luò)總線
- 目前世界上絕大多數(shù)汽車制造廠商都采用CAN總線來實現(xiàn)汽車內(nèi)部控制系統(tǒng)之間的數(shù)據(jù)通信。
- RK3568/RK3588的CAN驅(qū)動文件:drivers/net/can/rockchip/rockchip_canfd.c
2. 內(nèi)核配置
- rockchip_linux_defconfig配置:
CONFIG_CAN=y
CONFIG_CAN_DEV=y
CONFIG_CAN_ROCKCHIP=y
CONFIG_CANFD_ROCKCHIP=y
- 內(nèi)核配置:
cd kernel
make ARCH=arm64 menuconfig
make savedefconfig
- 選擇:Networking support ---> CAN bus subsystem support ( )--->CAN Device Drivers( ) ---> Platform CAN drivers with Netlink support(*)
3. DTS 節(jié)點配置
3.1 主要參數(shù):
-
interrupts = ;
轉(zhuǎn)換完成,產(chǎn)生中斷信號。
-
clock
時鐘屬性,用于驅(qū)動開關(guān)clk,reset屬性,用于每次復(fù)位總線。
-
pinctrl
3.2 公共配置 kernel-5.10/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
can1: can@fea60000 {
compatible = "rockchip,can-2.0";
reg = < 0x0 0xfea60000 0x0 0x1000 >;
interrupts = < GIC_SPI 342 IRQ_TYPE_LEVEL_HIGH >;
clocks = < &cru CLK_CAN1 >, < &cru PCLK_CAN1 >;
clock-names = "baudclk", "apb_pclk";
resets = < &cru SRST_CAN1 >, < &cru SRST_P_CAN1 >;
reset-names = "can", "can-apb";
pinctrl-names = "default";
pinctrl-0 = < &can1m0_pins >;
tx-fifo-depth = < 1 >;
rx-fifo-depth = < 6 >;
status = "disabled";
};
- compatible = “rockchip,can-1.0” ,rockchip,can-1.0用來匹配can控制器驅(qū)動。
- compatible = “rockchip,can-2.0” ,rockchip,can-2.0用來匹配canfd控制器驅(qū)動。
- assigned-clock-rates用來配置can的始終頻率,如果CAN的比特率低于等于3M建議修改CAN時鐘到100M,信號更穩(wěn)定。高于3M比特率的,時鐘設(shè)置200M就可以。
- pinctrl配置:根據(jù)實際板卡連接情況配置can_h和can_l的iomux作為can功能使用。
3.3 板級配置 kernel-5.10/arch/arm64/boot/dts/rockchip/rk3588-armsom-w3.dts
/* can1 */
&can1 {
status = "okay";
assigned-clocks = < &cru CLK_CAN1 >;
assigned-clock-rates = < 200000000 >;
pinctrl-names = "default";
pinctrl-0 = < &can1m1_pins >; //根據(jù)原理圖配置
};
- 由于系統(tǒng)根據(jù)上述dts節(jié)點創(chuàng)建的CAN設(shè)備只有一個,而第一個創(chuàng)建的設(shè)備為CAN0
4. 調(diào)試
- 查詢當(dāng)前?絡(luò)設(shè)備:
ifconfig -a
- CAN啟動
ip link set can0 down //關(guān)閉CAN ip link set can0 type can bitrate 500000 //設(shè)置?特率500KHz ip -details -statistics link show can0 //打印can0信息 ip link set can0 up //啟動CAN
- CAN發(fā)送
cansend can0 123#DEADBEEF //發(fā)送(標(biāo)準(zhǔn)幀,數(shù)據(jù)幀,ID:123,date:DEADBEEF) cansend can0 123#R //發(fā)送(標(biāo)準(zhǔn)幀,遠程幀,ID:123) cansend can0 00000123#12345678 //發(fā)送(擴展幀,數(shù)據(jù)幀,ID:00000123,date:DEADBEEF) cansend can0 00000123#R //發(fā)送(擴展幀,遠程幀,ID:00000123)
- CAN接收
candump can0 //candump can0
審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
內(nèi)核
+關(guān)注
關(guān)注
3文章
1403瀏覽量
40962 -
CAN
+關(guān)注
關(guān)注
57文章
2836瀏覽量
466266 -
總線
+關(guān)注
關(guān)注
10文章
2936瀏覽量
89163 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
5389瀏覽量
100979 -
RK3588
+關(guān)注
關(guān)注
7文章
393瀏覽量
5395
發(fā)布評論請先 登錄
相關(guān)推薦
實戰(zhàn)案例 | RK3588 CAN通信BUG避坑指南
RK3588內(nèi)置CAN控制器存在以下不可修復(fù)的硬件缺陷:發(fā)送擴展幀時可能降級為標(biāo)準(zhǔn)幀,導(dǎo)致丟幀;接收時概率性CRC校驗和ID填充錯誤,觸發(fā)總線錯誤幀。為規(guī)避此問題,我司建

瑞芯微RK3588開發(fā)板RK3588 EVB和RK3588S EVB解讀
瑞芯微RK3588開發(fā)板RK3588 EVB和RK3588S EVB解讀 瑞芯微旗艦芯RK3588系列開發(fā)板受到廣大開發(fā)者伙伴的關(guān)注和問詢。針對相關(guān)的開發(fā)板功能、操作指南等問題,我們一

RK3588 PCB推薦疊層及阻抗設(shè)計
近期華秋電子聯(lián)合瑞芯微、凡億重磅發(fā)布了:《RK3588 PCB設(shè)計指導(dǎo)白皮書》,幫助開發(fā)者更好地規(guī)范利用RK3588開發(fā)產(chǎn)品,提高所設(shè)計的PCB質(zhì)量,在實戰(zhàn)中鞏固及提高PCB設(shè)計水平。本文
發(fā)表于 08-10 09:32
?1202次閱讀

RK3588J和RK3588是什么關(guān)系?
RK3588J是不是一個開發(fā)板的名字,里面的SOC是RK3588?還是RK3588J屬于RK3588的子系列?
發(fā)表于 03-13 14:22
RK3588和RK3588S之間的區(qū)別是什么
RK3588和RK3588S的區(qū)別: RK3588S是RK3588的低配版,其區(qū)別類似RK3568跟RK
發(fā)表于 03-10 19:22
?2.8w次閱讀
RK3588芯片參數(shù)介紹 RK3588芯片的八大應(yīng)用方向
RK3588芯片的八大應(yīng)用方向,包括智能座艙、智慧大屏、虛擬/增強現(xiàn)實、邊緣計算、IPC、NVR、高端平板及ARM PC,還圍繞八大方向展出了多款搭載RK3588的應(yīng)用終端,全方位從算力、感知能力、顯示能力及連接能力展示RK3588
發(fā)表于 08-26 15:32
?1.3w次閱讀
【LGA封裝RK3588核心板】基于RK3588,小而強大的ArmSom-W3 CORE BOARD
Armsom-RK3588 LGA Core board 是一款基于Rockchip RK3588芯片平臺,采用LGA(506pin)封裝設(shè)計的一款極小尺寸的RK3588核心板。

rk3588和rk3588s的區(qū)別
rk3588和rk3588s的區(qū)別 Rockchip是一家專業(yè)的半導(dǎo)體公司,成立于2001年,總部位于中國深圳,主要從事集成電路的設(shè)計、開發(fā)和銷售。他們的熱門產(chǎn)品RK3588和RK3588
RK3588與3588s的區(qū)別
RK3588與3588s的區(qū)別 Rockchip RK3588和RK3588s是兩種功能強大且廣受歡迎的片上系統(tǒng)(SoC)解決方案,用于一系列設(shè)備,包括智能電視、高性能平板電腦、筆記本
RK3588系列有多少型號?
RK3588系列有多少型號? RK3588是瑞芯微推出的一款長線產(chǎn)品,屬于高性能處理器領(lǐng)域的頂尖產(chǎn)品。它從2020年開始進入市場,現(xiàn)已成為市場上最熱門的處理器之一。該產(chǎn)品因其高效能、強大的計算能力
rk3588參數(shù)詳解 rk3588芯片參數(shù)
rk3588參數(shù)詳解 rk3588芯片參數(shù) Rockchip官方已經(jīng)推出了全新一代的高端芯片RK3588,作為旗艦芯片,其蘊含的高性能與先進科技引起了廣泛關(guān)注。本篇文章將詳細介紹RK3588
rk3588是armv8嗎?rk3588硬件資料
rk3588是armv8嗎?rk3588 硬件資料 RK3588是一款高性能處理器,是Rockchip公司推出的最新芯片。本文將詳細介紹RK3588的硬件資料。 首先,我們需要了解一下
評論