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.

[参考译文] CC2541:能否在运行时更改 UxGCR-CPHA

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/592597/cc2541-can-i-change-uxgcr-cpha-in-runtime

器件型号:CC2541
主题中讨论的其他器件: TRF7963ATRF7960ACC2540

您好、TI 专家、

我尝试通过 CC2541控制 TRF7963A。 根据数据表、它必须 在写入阶段后切换 SCLK 极性、以实现正确的读取操作。 示例代码(MSP430)如下所示

spi_sendByte (* pui8Buffer);

#IF (TRF79xxA_VERSION == 60)
UCB0CTL1 |= UCSWRST;
UCB0CTL0 &=~Ω UCCKPH;//读取的开关时钟极性(TRF7960A)
UCB0CTL1 &=~UCSWRST;
#endif

while (ui8长度-->0)

*pui8Buffer = SPI_receiveByte();
pui8Buffer++;

while (UCB0STAT 和 UCBUSY)

#IF (TRF79xxA_VERSION == 60)
UCB0CTL0 |= UCCKPH;//切换时钟极性返回
#endif

我的问题是:MSP430可以执行 SPI 软复位来实现新的"时钟极性"。 CC2541呢? 我可以像这样更改它吗? 谢谢

spi_sendByte (* pui8Buffer);

#IF (TRF79xxA_VERSION == 60)
U1GCR |= 0x40;
#endif

while (ui8长度-->0)

*pui8Buffer = SPI_receiveByte();
pui8Buffer++;

#IF (TRF79xxA_VERSION == 60)
U1GCR &=~0x40;//切换时钟极性返回
#endif

 

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

    就我所说的、只要 USART 模块、你就可以对控制寄存器进行更改、以获得所需的结果。

    我也会将您的请求转发给 CC2540专家。

    此致、
    反叛分子