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.
尊敬的:
当我使用 TMS320F280049时、我发现 SPIA 引脚没有输出。 我已经设置 了 SPICLKA 和 SPICLKA 引脚
我找到 GPIO16(SPISIMOA)引脚无信号、GPIO56(SPICLKA) ANGPIO57(SPISTEA)有信号。 我的代码如下所示。 请帮助检查。
空 InitSpiaGpio()
{
EALLOW;
//
//为所选引脚启用内部上拉
//
//用户可以启用或禁用上拉。
//这将启用指定引脚的上拉电阻。
//注释掉其他不需要的行。
//
GpioCtrlRegs.GPAPUD.bit.GPIO16 = 0;//启用 GPIO16上的上拉电阻器(SPISIMOA)
GpioCtrlRegs.GPAPUD.bit.GPIO17 = 0;//启用 GPIO17上的上拉电阻器(SPISOMIA)
GpioCtrlRegs.GPBPUD.bit.GPIO56 = 0;//启用 GPIO56上的上拉电阻器(SPICLKA)
GpioCtrlRegs.GPBPUD.bit.GPIO57 = 0;//启用 GPIO57上的上拉电阻器(SPISTEA)
//
//仅将所选引脚的限定条件设置为异步
//
//这将为所选引脚选择异步(无限定条件)。
//注释掉其他不需要的行。
//
GpioCtrlRegs.GPAQSEL2.bit.GPIO16=3;//异步输入 GPIO16 (SPISIMOA)
GpioCtrlRegs.GPAQSEL2.bit.GPIO17 = 3;//异步输入 GPIO17 (SPISOMIA)
GpioCtrlRegs.GPBQSEL2.bit.GPIO56 = 3;//异步输入 GPIO56 (SPICLKA) SJD
GpioCtrlRegs.GPBQSEL2.bit.GPIO57 = 3;//异步输入 GPIO57 (SPISTEA) SJD
//
//使用 GPIO 寄存器配置 SPI-A 引脚
//
//这指定哪些可能的 GPIO 引脚将是 SPI 功能
//引脚。
//注释掉其他不需要的行。
//
GpioCtrlRegs.GPAMUX2.bit.GPIO16=1;//将 GPIO16配置为 SPISIMOA
GpioCtrlRegs.GPAMUX2.bit.GPIO17 = 1;//将 GPIO17配置为 SPISOMIA
GpioCtrlRegs.GPBMUX2.bit.GPIO56 = 1;//将 GPIO56配置为 SPICLKA
GpioCtrlRegs.GPBMUX2.bit.GPIO57=1;//将 GPIO57配置为 SPISTEA
EDIS;
}
您好!
在您的代码中、我仍然找不到 SPI 初始化代码。 它仅配置 SPI 引脚和 DMA 模块。 我将使用一些基本配置来配置 SPI 模块、并尝试在控制卡上运行。
同时、您是否了解了 C2000ware 中提供的示例? C2000 driverlib 提供了一些可用于配置 SPI 模块的基本 API 函数。 有一个示例展示了 SPI 与 DMA 的用法。
示例可在文件夹中找到 driverlib\f28004x\examples\SPI
这将为您提供一个良好的起点。
此致、
Veena