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.

[参考译文] CCS/MSP430G2553:多字节 SPI 通信

Guru**** 2393725 points
Other Parts Discussed in Thread: SIMPLICITI, MSP430G2553

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/597604/ccs-msp430g2553-multiple-byte-spi-communication

器件型号:MSP430G2553
主题中讨论的其他器件:SimpliciTI

工具/软件:Code Composer Studio

大家好、

我正在尝试通过 SPI 在 launchpad (msp430g2553)和 CC430 (具有射频模块)之间实现兼容性。 我想将我的传感器测量值从 msp430g2553传输到 CC430、而不是将 CC430传输到另一个采用射频 SimpliciTI 协议的 CC430。

简单字节传输最近看起来不错、但我的问题是、当我尝试发送一些字符串时、接收无法判断这是否是新字符串的字符、它仍然是前一字符串的一部分。

我尝试写入类似这样的内容、通过该内容、SPI_Tx 和 SPI_Rx 是1字节事务。 plz 对语法不会太重视。 我想说的是、我是否可以通过 SPI 通信实现 SMPL_Send (data、length)、SMPL_Receive (data、length)等功能? 提前感谢您。

//发送多字节
void SPI_Send (char *msg)
{int i=0;
spi_Tx ('\r');
for (i;i '\n');="" receive="" multiple="" byte="" void="" spi_receive(char="" *msg)="" char="" temp;="" while(spi_rx()="" !="\r" );="" while(1)="" temp="spi_Rx();" if(temp="=" '\n')="" break;="" *msg="temp;" spi_tx(char="" data)="" while(!(ifg2="" &="" uca0txifg));="" tx="" buffer="" ready?="" uca0txbuf="data;" setting="" txbuf="" clears="" the="" txifg="" flag="" uca0rxifg));="" rx="" __delay_cycles(50);="" wait="" for="" an="" character="" return="" uca0rxbuf;="" reading="" rxifg="" spi_rx(void)="" while="" (!(ifg2="" }

此致、

Melo

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您的消息是否始终长度相同、或者是否可以长度相同? 如果消息长度不等、则解决方案完全不同。
    如果只有许多邮件都有预定义的长度、我可以立即向您发送一些示例代码。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好、Nima、

    感谢您的回答、最近只收到了一些长度已知的消息。 您能告诉我您的代码或创意吗?  

    如果您有一些建议可以解决复杂而灵活的问题、请分享您的想法。  

    Melo

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

    e2e.ti.com/.../g2553_5F00_spi_5F00_master.ce2e.ti.com/.../g2553_5F00_spi_5F00_slave.cyes、我拥有的代码适用于主设备和从设备。 您可以使用两个 msp430g2553对其进行测试。

    它有三种类型的消息。 每种类型都有不同的长度。

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

    您好、Nima、很抱歉有一段时间没有响应、我仍然想知道如何在两个器件(1个主器件和1个从器件)之间构建通信、仅使用4引脚模式、并且不使用 ISR。
    我不知道您是否因我发布的代码而获得我的积分、我希望一个器件等待另一个器件发送'/r'、然后接收并保存'/r'和'/n'之间的消息。

    有人告诉我、我使用的 SPI 就像 UART 一样、因此我认为一定有一些我不是很清楚的东西、我不仅是新硬件的、而且对 SPI 也不是很清楚、我认为。

    在 UCAxSTE 引脚的帮助下

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

    SPI 与 UART 有很大不同。 从器件不能只决定向主器件发送数据。 主器件必须 请求数据。 请查看此应用手册: