当前位置: 首页 > news >正文

RK3588 Linux SDK配置SPI转MCP2515 CAN驱动

以正点原子RK3588 Linux SDK,在内核开启SPI转MCP2515 CAN驱动为例。
该SDK已经自带MCP251x和mcp251xfd驱动,路径:/kernel/drivers/net/can/spi,我们只需要在内核中启用MCP2515和添加设备树即可。

一:内核启用MCP2515驱动。

打开内核图形化配置界面
在内核源码目录下,执行如下命令可打开menuconfig图形化配置界面。

1.加载配置文件

makeARCH=arm64 rockchip_linux_defconfig

2. 打开图形化配置界面

makeARCH=arm64 menuconfig

3. 选择Networking support选项,并进入

4. 选中CAN bus subsystem support选项,并进入

5. 选中CAN Device Drivers选项,并进入

6. 选中CAN SPI interfaces选项,并进入

8. 选中Microchip MCP251x SPI CANcontrollers选项,并保存。

9.配置完成后执行如下命令保存配置

//在内核源码目录下,执行如下命令保存配置。

makeARCH=arm64 savedefconfig

//替换配置

cpdefconfig arch/arm64/configs/rockchip_linux_defconfig

二:修改设备树

路径:rk3588_linux_sdk/kernel/arch/arm64/boot/dts/rockchip/rk3588-atk-devkit.dtsi

/{/* 添加时钟,以MCP2515物理晶振频率为准 */ clk8m: clk8{compatible="fixed-clock";#clock-cells = <0>;clock-frequency=<8000000>;};};&pinctrl{mcp2515{mcp2515_int_pins_spi0: mcp2515-int-pins-spi0{rockchip,pins=<1RK_PB5 RK_FUNC_GPIO&pcfg_pull_up>;};mcp2515_int_pins_spi4: mcp2515-int-pins-spi04{rockchip,pins=<1RK_PB6 RK_FUNC_GPIO&pcfg_pull_up>;};};};&spi0{status="okay";pinctrl-names="default";pinctrl-0=<&spi0m2_pins&spi0m2_cs0>;#address-cells = <1>;#size-cells = <0>;max-freq=<10000000>;mcp2515@0{status="okay";compatible="microchip,mcp2515";reg=<0>;spi-max-frequency=<10000000>;pinctrl-names="default";pinctrl-0=<&mcp2515_int_pins_spi0>;interrupt-parent=<&gpio1>;interrupts=<RK_PB5 IRQ_TYPE_LEVEL_LOW>;clocks=<&clk8m>;vdd-supply=<&vcc_3v3_s3>;xceiver-supply=<&vcc_3v3_s3>;};};&spi4{status="okay";pinctrl-names="default";pinctrl-0=<&spi4m2_pins&spi4m2_cs0>;#address-cells = <1>;#size-cells = <0>;max-freq=<10000000>;mcp2515@0{status="okay";compatible="microchip,mcp2515";reg=<0>;spi-max-frequency=<10000000>;pinctrl-names="default";pinctrl-0=<&mcp2515_int_pins_spi4>;interrupt-parent=<&gpio1>;interrupts=<RK_PB6 IRQ_TYPE_LEVEL_LOW>;clocks=<&clk8m>;vdd-supply=<&vcc_3v3_s3>;xceiver-supply=<&vcc_3v3_s3>;};};

三:编译内核,烧录镜像。

调用build.sh脚本编译内核

./build.sh kernel

内核编译成功,无错误,无警告。
使用RKDevTool烧录镜像

四:查看 spi设备节点信息。

ls/sys/bus/spi/devices/cat/sys/bus/spi/devices/spi0.0/ueventcat/sys/bus/spi/devices/spi4.0/ueventls-l/sys/bus/spi/devices/spi0.0/driverls-l/sys/bus/spi/devices/spi4.0/driver


可以看到SPI0、SPI4绑定mcp2515驱动正常。

ifconfig-a

我们看到有can0和can1,嵌入式Arm Linux内核开启SPI MCP2515驱动已经顺利完成,关于can调试可参考《Linux免驱使用PCAN /PCAN FD,使用方法以Ubuntu为例》,由于测试的这块MCP2515使用的的8M晶振,所以CAN波特率最大只能到500K,可以更换成16M晶振,支持CAN波特率1M.

http://www.jsqmd.com/news/1257006/

相关文章:

  • LinkSwift:告别限速困扰,九大网盘直链解析神器完全指南
  • 好客搜陈海伟:十年深耕自研,以企业文化筑牢 AI 运营技术根基
  • 终极键盘连击克星:免费开源软件KeyboardChatterBlocker完整使用指南
  • 天道观后感
  • 41-杨逢昌:制造业6S形式化破局方案——四维增值精益落地标准化体系
  • 风控评分卡模型原理与应用(九):评分卡建模实战
  • Spatial Reasoning in Multimodal Large Language Models: A Survey of Tasks, Benchmarks and Methods
  • 如何快速配置Wand-Enhancer:面向技术爱好者的完整本地化增强指南
  • EdgeRemover:专业级Windows Edge浏览器管理解决方案的深度技术解析
  • 鸿蒙 PC Markdown 编辑器桌面工作台:ArkUI 自由窗口布局与状态设计
  • AI智能体与具身智能关系误区纠偏(系列)
  • Umi-OCR:三步解锁扫描PDF,让文字识别变得如此简单
  • 国内做得好的冷库设备直销厂家哪家强,冷冻柜设备/制冷机组设备/螺杆压缩机/谷轮压缩机,冷库设备直销厂家口碑推荐 - 品牌推荐师
  • StreamFX完整指南:如何在5分钟内为OBS直播添加电影级特效
  • Android CameraServer Camera3Device/AidlCamera3Device梳理
  • Flink 术语通关手册:彻底搞懂 Flink 所有名词
  • Umi-OCR:如何免费离线解决PDF文字无法复制的终极指南
  • AIGC不是风口,是操作系统级变革:Gartner预测2025年73%企业将重构IT栈,你准备好了吗?
  • Lifecycle 原理
  • 2026平湖口碑好的黄金回收商家推荐|十年老店实测,本地市民信赖之选 - 微城市网络
  • 如何在浏览器中实现终极3D模型查看?Online3DViewer完整免费指南
  • PyTorch强化学习实战——基于策略梯度法解决Pong环境
  • FigmaCN终极指南:3分钟让Figma界面全中文化,设计师效率提升50%
  • PM有效沟通与主动汇报-打造靠谱标签
  • 【Linux】七.进程概念篇一《操作系统核心概念一篇通:冯诺依曼体系、OS 设计与进程管理》
  • QMK Toolbox:如何5分钟完成机械键盘固件刷写?面向新手的完整教程
  • VLA-世界模型-TVA:具身智能的递归改进引擎(2)
  • 《天道》观后感——以悟道之心,破执念之困
  • 宁波装修装饰GEO服务商代理加盟选型哪家靠谱?2026年宁波GEO代理服务商本地推荐与合作路径解析 - 小随科技
  • 如何解决Android Studio语言障碍:中文语言包安装与配置完全指南