主题中讨论的其他器件: HALCOGEN
尊敬的所有人。
我正在尝试在 TMS570LS3137开发套件上测试 SPI4。
但是、SPI4未包含在开发套件手册中。
甚至没有在板上进行标记。
因此、我在 Halcogen 中查看了"Mux"选项卡并找到了 SPI4端口。 您能否检查其是否正确?
(K18) SPI4_CLK
(U1) SPI4_CS0
(v6) SPI4_SOMI
(W5) SPI4_SIMO
此致、
IBLEE
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.
尊敬的所有人。
我正在尝试在 TMS570LS3137开发套件上测试 SPI4。
但是、SPI4未包含在开发套件手册中。
甚至没有在板上进行标记。
因此、我在 Halcogen 中查看了"Mux"选项卡并找到了 SPI4端口。 您能否检查其是否正确?
(K18) SPI4_CLK
(U1) SPI4_CS0
(v6) SPI4_SOMI
(W5) SPI4_SIMO
此致、
IBLEE
您好、IBLEE:
Unknown 说:(K18) SPI4_CLK
(U1) SPI4_CS0
(v6) SPI4_SOMI
(W5) SPI4_SIMO
是的、这些引脚正确。
我将会解释如何在开发套件上测试 SPI4。

如果您验证原理图、引脚的名称如下:
NHET100 - SPI4CLK
NHET102 - SPI4SIMO
NHET103_W2FCPUENON - SPI4NCS[0]
NHET105 - SPI4SOMI
注意:SPI4CLK 的名称有误、它被命名为 SPI2CLK 而不是 SPI4CLK。
如果您验证上述引脚、它们会端接至 J11连接器。

NHET100 - J11 (38)
NHET102 - J11 (40)
NHET103_W2FCPUENON - J11 (39)
NHET105 - J11 (41)
因此、您可以使用上面提到的 J11连接器引脚来测试 SPI4。
在这里、您必须确保最后一件事是 NHET103_W2FCPUENON 这个引脚具有多种功能、并且通过多路信号分离器进行端接。

如您所见、NHET103_W2FCPUENON 用作 OHCI_SPEED1和 W2FC_PUENON_OHCI_SPEED1 (NHET103)。
在本例中、我们需要 NHET103来测试 SPI、因此在本例中、该 USB_host1_ON 选择行应处于关闭状态。
--
谢谢。此致、
Jagadish。
尊敬的 Jagadish:
我在 Halcogen 的 PINMUX 选项卡中选择了与 SPI4相对应的引脚、如下所示。
(K18)选择 SPI4_CLK
(U1)选择 SPI4_NCS0
(v6)选择 SPI4_SOMI
(W5)选择 SPI4_SIMO
然后我从 J11连接器上与 SPI4对应的引脚拉导线。
HET100、HET103、HET105、HET102
我能像这样连接吗?
如果我还有其他需要做的事情、您能告诉我吗?
此致、
IBLEE
尊敬的 Jagadish:
非常感谢您的友好解释。
我使用上述设置测试了 SPI4。
我将开发套件1设置为 SPI4主器件、将开发套件2设置为 SPI4从器件、并连接 SPI4线。
该测试结果表明、从器件顺利接收到了从主器件发送的数据、但从器件发送的数据仅被主器件接收为0x00。
即使您使用示波器拍摄 MOSI 引脚的照片、也无法看到从器件发送的数据...
我应该如何调试它?
可以帮帮我吗?
此致、
IBLEE
您好、IBLEE:
即使您用示波器拍摄 MOSI 引脚的照片,也无法看到从设备发送的数据...
不是 SOMI 吗? 您说从器件在主器件右侧发送的数据无法正确接收?
您能否发送您的主从项目进行验证?
尊敬的 Jagadish:
噢! 我说这是错的。 我用示波器选择的引脚是 MISO (HET105)引脚。
我无法向您发送主/从项目源。
我开发的工程是 SafeRTOS 的已移植源、我开发的工程是创建任务并将 GIO 引脚注册为 IRQ 以在发生 IRQ 时启用 SPI 读取/写入的源。 我的老板说、出于安全原因、这无法共享。
如果您无法共享来源、您将无法再提供帮助、对吧?
此致、
IBLEE
您好、IBLEE:
您能否请在下面的 SPI 从器件示例中进行一次验证、并根据一次验证 HALCoGen 配置。

--
谢谢。此致、
Jagadish。
尊敬的 Jagadish:
我做了更多的测试。
目前、在从主设备向从设备发送数据时、系统正常接收数据、因此在从主设备向从设备发送数据时、我使用示波器拍摄了波形的照片。
但我看到了一些奇怪的东西。 能否检查一下是否正确?
CLK、CS0和 SIMO 显示正常波形、但 SOMI (HET105)波形移动与 CS0完全一样。
随附照片的黄色为 SOMI (HET105),蓝色为 CS0 (HET103)。

像这样进行移动是正确的吗?
此致、
IBLEE
您好、IBLEE:
(+) RM46L852:基于 ARM 的微控制器-内部论坛-基于 Arm 的微控制器-内部论坛-基于 Arm 的微控制器-内部- TI E2E 支持论坛
最近、在上面的线程中、我刚刚创建了 SPI-Master 和 Slave 代码、并进行了测试、没有任何问题。 如果可能、您能否也参考一下。
--
谢谢。此致、
Jagadish。
您好、IBLEE:
我已将主题转换为 PDF:
以下 是我在上面的主题中附加的项目:
e2e.ti.com/.../6675.SPI_5F00_MASTER_5F00_TEST_5F00_LC4357.zip
e2e.ti.com/.../SPI_5F00_Slave_5F00_TEST_5F00_RM46.zip
--
谢谢。此致、
Jagadish。
尊敬的 Jagadish:
您在 Halcogen 和我共享的源之间的区别在于启用了时钟极性、并且 SPI 从器件中使用的引脚是上拉的。
在源代码中、除了 CS_HOLD 值为 FLASE 之外、我找不到任何区别。
目前、即使波特率提高到3M、与 SPI3和5的通信也没有问题、但如果 SPI4的波特率提高到3M、接收到的值会在中间随机破碎。 (使用1M 时、3天内没有问题)
HET 驱动器也已启用、因此我正在进行调试、想象 HET 驱动器和 SPI4的 SOMI 引脚之间是否存在干扰。
分享我的当前情况。
此致、
IBLEE
您好、IBLEE:
您在 Halcogen 共享的源与我共享的源之间的区别在于时钟极性已启用,而 SPI 从器件中使用的引脚为上拉。
在源代码中、除了 CS_HOLD 值为 FLASE 之外、我找不到任何区别。
我启用了时钟极性、因为相应的客户说、启用时钟极性时会出现问题。 我在主机和从机两端启用了时钟极性、并对其进行了测试。 但在您的情况下、可能不需要。
目前,即使波特率提高到3M,与 SPI3和5的通信也没有问题,但如果 SPI4的波特率提高到3M,接收到的值会在中间随机中断。 (使用1M 时,3天内没有问题)
我的建议是、您为什么不使用 SPI4创建一个新的最简单的工程、并确保不使用任何其他外设、这样可让您了解 SPI4是如何工作的。 SPI 应该能够以25MHz 的频率工作、而不会出现任何问题。
--
谢谢。此致、
Jagadish。