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.
工具与软件:
尊敬的处理器专家:
我尝试在 Linux 下使用 MCU_SPI0。 我有 Linux SDK 9.2和定制电路板。
在 k3-j721e-mcu-wake.dtsi 文件中、以下节点已存在
在 k3-j721e-common-proc-board.dts 文件中、我添加了:
现在我有:
接下来、我尝试对其进行测试:
遗憾的是、输出上没有噪声。 仅 CS 和时钟有效。 TX 引脚仍处于高电平状态。
您能告诉我哪里有错误、或者我应该检查什么吗?
在 k3-j721e-mcu-wake.dtsi 文件中、以下节点已存在
您好!
是否已删除状态="已禁用"?
此致
Tarun Mukesh
您好!
很好
您好!
[报价 userid="589698" url="~/support/processors-group/processors/f/processors-forum/1408960/tda4vm-mcu_spi0-under-linux "]您使用的是 CS0还是 CS2?
还可以更改最大频率吗?
[报价 userid="589698" url="~/support/processors-group/processors/f/processors-forum/1408960/tda4vm-mcu_spi0-under-linux "]spi-max-Frequency =<24000000>;
此致
Tarun Mukesh
目前、我将仅使用 CS0
我发现了有趣的事情。 MOSI -主器件输出/从器件输入-为 E24、 被称为 SPI0_D0。
E24在器件树中设置为输出。 这是设置该值的寄存器:
配置正常。 从存储器读取
TX 驱动器已启用。 我不知道驱动程序的代码、但我假设根据此配置、生成的代码会正确设置 SPI 寄存器-因为器件树中没有其他命令/指令可以显式设置 SPI 寄存器。 让我们查看 SPI 的寄存器。
让我们更深入地了解这一部分
好的、我们知道要选择 D0还是 D1应该是发送器、我们应该正确设置这些位。 我们读取地址- CS0/通道0
可以得出:
我们对16、17、18位感兴趣。 这些位位于该八位位组01 - 0x20 (01) 03d8中。 根据文档、这表示:DPE0 = 1 ->在第0行上无传输。 DPE1 = 0 ->线路1上的传输。 IS = 0 ->线路0作为接收器。 等一下、这是不正确的! 我们必须将其更改为0x200603d8、因为这样会设置:DPE0 = 0 ->线路0为发送器、DPE1 = 1 ->线路1无传输、 IS = 1 ->线路1为接收器。 让我们执行以下操作:
外观更好。 让我们试一下。
无:
为什么? 让我们再次检查寄存器:
是的、驱动程序似乎改写了更改...
有人能确认我的理解是否正确吗?
您好!
D0或 D1可用作 MOSI 或 MISO、没有这样的限制。 您可以尝试将 D1更改为输出、将 D0更改为输入、看看您是否能够看到线路上的任何数据。
此致
Tarun Mukesh
我知道我可以用 MISO 代替 MOSI、并且我已经为测试进行了尝试。 我得到了工作输出:
但这对我来说不是解决方案、因为我正在研究最终产品。 之前、我们从 R5内核管理 SPI、现在我们想尝试在 Linux 中实现这一点、但在 Linux 下似乎无法更改 D0和 D1的行为。 这似乎是驱动程序本身的问题。 TI 能否更新驱动程序?或者您是否知道我们是否能够自己更新?
似乎我不是第一个谁有这种问题 https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1032526/tda4vm-what-s-the-pin-definition-for-spi-miso-mosi
、因为我正在开发最终产品。 之前我们从 R5内核管理 SPI、现在我们想尝试在 Linux 中实现该操作、但在 Linux 下似乎无法更改 D0和 D1[/QUOT]的行为我不完全了解背景:
ti、windir-d0-out-D1-in 标志
ti、windir-d0-out-D1-in:
说明:
选择 D0引脚作为输出、选择 D1作为输入。 默认为 D0
作为输入、D1作为输出。
类型:布尔这是您要找的吗?
-基尔西
我在查看源代码是因为我想尝试解决这个问题、发现:
我已将其添加到设备树中
是的、这是、它是有效的。