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.

[参考译文] TM4C1294NCPDT:TM4C1294NCPDT:可以将 SPI 速度设置为17MHz。

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1381184/tm4c1294ncpdt-tm4c1294ncpdt-can-be-set-spi-speed-as-17mhz

器件型号:TM4C1294NCPDT

工具与软件:

尊敬的支持团队:

在 TM4C1294NCPDT 微控制器中、SPI 速度可设置为精确的17MHz。 是可能的。 当我们尝试时。 它不起作用。


void ConfigureSPI (uint32_t 时钟)

uint32_t trashbin[1]={0};

SysCtlPeripheralEnable (SYSCTL_PERIPH_SSI0);

SysCtlPeripheralEnable (SYSCTL_PERIPH_GPIOA);

GPIOPinConfigure (GPIO_PA2_SSI0CLK);// PA2 - SSI0CLK
// GPIOPinConfigure (GPIO_PA3_SSI0FSS);// PA3 - SSI0Fss
GPIOPinConfigure (GPIO_PA4_SSI0XDAT0);// PA4 - SSI0TX
GPIOPinConfigure (GPIO_PA5_SSI0XDAT1);// PA5 - SSI0RX

GPIOPinTypeSSI (GPIO_PORTA_BASE、GPIO_PIN_5 | GPIO_PIN_4 | GPIO_PIN_2);

SSIConfigSetExpClk (SSI0_BASE、时钟、SSI_FRF_MOTO_MODE_1、SSI_MODE_MASTER、17000000、 8);

SSIEnable (SSI0_BASE);
while (SSIDataGetNonBlocking (SSI0_BASE、&trashbin[0])

}
}

请做必要的,

谢谢。此致、

A. Ajith Kumar

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

    您的 SYSCLK 是什么? SPI 速度是使用 SSICPSR:CPSDVSR 和 SSICR0:SCR 基于整数除法生成的[参考 TRM (SPMS433B)第17.3.1]、因此 SYSCLK 需要是17MHz 的某个倍数。

    (可用的最快 ALTCLK 为 PIOSC (= 16MHz)、所以您不能从中获得17MHz。)