大家好、
我们已经开始处理 AM625开发板的 MCAN 模块配置。
在器件树中修改了以下参数 文件。
1.在主域(MAIN_mcan0)中启用 MCAN0实例。
=>启用 CAN0接口
使用的 GPIO 引脚:
C15 --> MCAN0_TX_GPIO1_24、基址0x01d8
e15 --> MCAN0_RX_GPIO1_25、基址0x01dc
3.我们正在尝试检查 MCAN 的环回功能
请建议在 AM625开发板上启用 MCAN 功能所需的更改。
谢谢。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
大家好、
我们已经开始处理 AM625开发板的 MCAN 模块配置。
在器件树中修改了以下参数 文件。
1.在主域(MAIN_mcan0)中启用 MCAN0实例。
=>启用 CAN0接口
使用的 GPIO 引脚:
C15 --> MCAN0_TX_GPIO1_24、基址0x01d8
e15 --> MCAN0_RX_GPIO1_25、基址0x01dc
3.我们正在尝试检查 MCAN 的环回功能
请建议在 AM625开发板上启用 MCAN 功能所需的更改。
谢谢。
尊敬的 Lakshmi:
若要在 AM62x 上启用 MCAN、您可以参阅以下文章: https://software-dl.ti.com/processor-sdk-linux/esd/AM62X/09_01_00_08/exports/docs/linux/How_to_Guides/Target/How_to_test_MCAN_on_AM62x.html
此致、
阿帕拉纳
您好!
我们正在测试下面列出的命令:
1. ifconfig =>能够看到 CAN0接口
2. IP 链路设置 CAN0类型 CAN 比特率125000 =>设置比特率
在执行上述命令后、出现以下错误:
IP 链路设置 CAN0类型 CAN 比特率125000
ip:"dev"为重复项、或者"type"为垃圾项
3. IP 链路设置为 CAN0开启 =>启动 CAN 接口
[ 3455.218126] m_CAN_platform 20701000.can CAN0:位时序尚未定义
[ 3455.224850] m_CAN_platform 20701000.can CAN0:无法打开 CAN 设备
IP:SIOCSIIFFLAGS:参数无效
尝试启动 CAN 接口、将打印文件设置为 "尚未定义位时序"。
4. dmesg | grep can
[ 1.738129] pinctrl-single f4000.pinctrl:PIN PIN122已被2001000.i2c 请求;无法为2820000.serial 索赔
[ 5.075497] m_can_platform 20701000.can: m_can device registered (IRQ=36、version=32)
[ 13.148891] WLAN:扫描完成:扫描的 AP 计数=14
[ 2780.996483] m_CAN_platform 20701000.can CAN0:位计时尚未定义
[ 2781.003206] m_CAN_platform 20701000.can CAN0:无法打开 CAN 设备
[3292.626931] CAN:控制器局域网核心
[ 3292.642588] CAN:RAW 协议
[ 3455.218126] m_CAN_platform 20701000.can CAN0:位定时尚未定义
[ 3455.224850] m_CAN_platform 20701000.can CAN0:无法打开 CAN 设备
请你就此事提出意见。
谢谢。
在我们的源代码中 "k3-am62x-sk-mcan.dtbo" 就无法使用了。
您能指导一下,我们如何获取 mcan 的 dts 文件吗?
参考文件:
AM62x SK EVM 用户指南
2. AM62x 数据表
指向下载源代码的链接:
谢谢。
您好!
如果 AM62 .wic 映像刷写到 SD 卡中、则覆盖文件应位于 SD 卡根分区的 boot/dtb/ti 文件夹中。
将这个覆盖文件应用于 MCAN 功能的过程也在我之前回复中共享的链接中进行了说明。
请浏览文档: https://software-dl.ti.com/processor-sdk-linux/esd/AM62X/09_01_00_08/exports/docs/linux/How_to_Guides/Target/How_to_test_MCAN_on_AM62x.html#enable-device-tree-overlay
此致、
阿帕拉纳
尊敬的 Lakshmi:
您的 SDK 中包含 dtb 文件。 检查 SD 卡 rootfs-->boot->dtb->ti,然后仅在 uEnv.txt 文件中设置重叠(boot->uEnv.txt)。 Linux 命令不起作用。 然后、检查正在运行的程序。
遵循以下步骤
1.首先检查 CAN H 和 CAN L 两个引脚的电压相同(最小为1.5v 至3v)。 不同的电压意味着您的模块可能会烧坏。 更换 CAN 模块。
2.在发送端使用哪一个控制器?
我在下面附上了屏幕截图:

如何添加下面附加的 dt-overlay 文件:

推荐: name_overles=ti/k3-am625-sk-mcan.dtbo 它工作得很好
=> IP 链路设置 CAN0类型 CAN 比特率500000
=>IP 链路设置 CAN0开启
=>转储 CAN0
此致、
维拉潘迪扬五世
尊敬的 Lakshmi:
引用早先的共享文档"由于 AM62 SKS 没有板载 CAN 收发器、因此它们各自的 DTS 文件中没有收发器节点。 "
您将需要下载和刷写9.1 AM62x WIC 映像、并且覆盖文件必须位于 rootfs 分区中。 在 U-boot 提示符下应用此覆盖文件以获取 MCAN 支持。
请仔细遵循文档、如果您遇到任何问题、请告诉我。
此致、
阿帕拉纳
尊敬的 Veerapandiyan:
1.执行后 "ifconfig -A" 能够看到 CAN0接口、但没有硬件地址的命令。
root@am62xx-evm:~# ifconfig -a
CAN0 链接 encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
NOARP MTU:16 公制:1
Rx 数据包:0错误:0丢弃:0溢出:0帧:0
TX 数据包:0错误:0丢弃:0溢出:0载波:0
冲突:0队列 txelen:10
RX 字节:0 (0.0 B) TX 字节:0 (0.0 B)
中断:36
2.如何用硬件地址配置 CAN0?
使用 iproute2而不是 IP 链路是否可行? 如果是、请提供 AM625的 iproute2软件包安装步骤。
谢谢。
莱克什米
是否可以使用 iproute2而不是 IP 链路。 如果是,请提供 AM625的 iproute2软件包安装步骤。
我认为 iproute2软件包在 Yocto 文件系统中不可用。 您需要回答的任何具体原因是什么?
您能否提供包含 mcan 支持 SK-AM625的 DTS 文件?
您需要额外的器件树覆层。
如果您在 SD 卡中看不到一个、请使用随附的卡。 此外、请确保 u-boot 环境设置为使用 uenv.txt 或如下所述更新环境设置来包含此覆盖。
此外、请分享您的 u-boot 日志、这些日志将允许我们检查覆盖是否已应用。
如果要启用内部环回、应在设置比特率时在命令中附加"loopback on"。
请参阅此处的常见问题解答- https://e2e.ti.com/support/processors-group/processors/f/processors-forum/922168/faq-tda4vm-how-can-i-use-can-on-linux
此致
卡兰
尊敬的 Lakshmi:
1.执行后 "ifconfig -A" 能够看到 CAN0接口、但没有硬件地址的命令。
root@am62xx-evm:~# ifconfig -a
[/报价]
CAN0 链接 encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
NOARP MTU:16 公制:1
Rx 数据包:0错误:0丢弃:0溢出:0帧:0
TX 数据包:0错误:0丢弃:0溢出:0载波:0
冲突:0队列 txelen:10
RX 字节:0 (0.0 B) TX 字节:0 (0.0 B)
中断:36我收到同样的错误、请更改 uEnv.txt 文件:仅删除 ti。
命令: name_overles=k3-am625-sk-mcan.dtbo 该命令可以很好地工作。
选中显示 CAN 地址后。
此致、
维拉潘迪扬五世