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.

[参考译文] CC3235MODSF:SPI 读取了不正确的数据

Guru**** 1129500 points
Other Parts Discussed in Thread: CC3235MODSF
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1211040/cc3235modsf-spi-reads-incorrect-data

器件型号:CC3235MODSF

您好!

我正在尝试将 KX134连接到 CC3235MODSF Launchpad。 我能够成功发送和接收一个字节的数据。

我在读取7个字节时收到了错误的数据。 我将在第3个和第5个字节中获得错误的值 FF。

SPI 代码

SPI_Handle masterSpi;
SPI_Params spiParams;
SPI_PARAMS_INIT (&spiParams);
spiParams.frameFormat = SPI_POL0_PHA0;
spiParams.bitrate = 250000;
spiParams.dataSize = 8;
spiParams.transferCallbackFxn = NULL;
spiParams.transferMode = SPI_MODE_BLOCKING;
masterSpi = SPI_open (CONFIG_SPI_MASTER、&spiParams);

translBuffer[0]= 0x88;
translBuffer[1]= 0x00;
translBuffer[2]= 0x00;
translBuffer[3]= 0x00;
translBuffer[4]= 0x00;
translBuffer[5]= 0x00;
translBuffer[6]= 0x00;
transaction.txBuf =(void *) translBuffer;
transaction.rxBuf =(void *) receiveBuffer;
transaction.count = 7;
SPI_TRANSMIT (masterSpi、&TRANSACTION);

我比较了  Arduino  和 CC3235之间的数据包

SPI 读取工作一(Arduino):

SPI 无法正常工作(CC3235)

我看到 MOSI 引脚发送0x00值并且不会像 Arduino 那样进入零之间的高电平状态

您能帮助我解决这个问题吗?  

此致、

罗伯特

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您发送编修,我们的专家会尽快进行调查并回复。

    Shlomi.

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    请仔细阅读我们的硬件内容:

    https://www.ti.com/tool/SIMPLELINK-WIFI-DESIGN-REVIEWS

      

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Kobi:

    感谢您的回复。 我遇到了与下面的海报相同的问题。

    https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1017315/tms320f28379d-spi-mosi-idle-state-condition

    我已经在 MOSI 引脚上添加了5k 下拉电阻器、但它不起作用。

    我使用了开发板、并按如下所示通过试验电路板线连接了引脚。

    CC3235MOD Launchpad  -   KX134开发板

    P08 (CS)   =========== > CS     

    P05 (SLK)  =========== >    SCLK

    P06 (MISO)===========  >    SDO

    P07 (MOSI)  =========== > SDI    

    请告诉我您的建议。

    此致、

    罗伯特

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嘿、Robert、

    Arduino 板上很可能存在上拉电阻器、因为当我预计 I/O 为三态时、信号在空闲状态期间会变为高电平。 我真的不明白 MOSI 上下拉的目的、也不明白字节间的高电平状态如何对通信产生影响。 逻辑分析仪甚至对它们进行相同的解码。 对我来说、从设备发送回了完全不同的数据。

    在数字信号上使用跳线时、增加的电感可能会导致信号完整性问题。 使用示波器来观察这段通信可能会很好。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Dylan:

    您的权利。 SPI 正在发送正确的数据。 我没有转换二进制补码值。

    问题已解决。 非常感谢您提供的宝贵意见。

    此致、

    罗伯特