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.

[参考译文] CC2340R5:CC2340动态更改 SPI。

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1502407/cc2340r5-cc2340-dynamically-changes-spi

器件型号:CC2340R5

工具/软件:

尊敬的 TI 专家:

我有一个使用 SPI 的工程、每分钟读取一次。
读取 SPI 后、将立即执行 SPI_CLOSE、从器件芯片将断电。
此时、如果我没有将这些 SPI 引脚设置为输入下拉电阻、将会产生大约70uA 的漏电流。
因为我在 SPI_CLOSE 之后更改了将 SPI 引脚设置为 GPIO_setConfig (CONFIG_GPIO_SPI_CONTROLLER_SCLK、GPIO_CFG_INPUT_INTERNAL | GPIO_CFG_PULL_DOWN_INTERNAL)的程序。

但下次我要读取 SPI 时、将会遇到 SPI 无法读取的情况。
执行 SPI READ 函数时、我将首先执行 SPI_INIT、然后再执行该函数

SPI_init();
SPI_Params_init(&spiParams);
spiParams.transferTimeout=2000;
spiParams.frameFormat = SPI_POL0_PHA1;//SPI_POL0_PHA1;//weli todo
/* See device-specific technical reference manual for supported speeds */
spiParams.bitRate = 1000000;//125000;//weli todo

usleep(1000*30);
controllerSpi = SPI_open(CONFIG_SPI_CONTROLLER, &spiParams);

为了节省功耗、我需要可以动态切换的 SPI 引脚。
请告诉我该怎么做。