大家好,
请教一个问题,在TMS570单片机中将选用SPI1CS0,SPI1SOMI,SPI1SIMO,SPI1CLK四根线与外围存储设备通讯,在配置的时候将他们设置为功能引脚,SPIENA配置为GIO,初始化后调用spiTransmitData函数,结果CS信号始终为高,SPICLK一直为低,这是哪里出了问题?主要代码如下:
void main(void)
{
spiDAT1_t dataconfig1_t;
spiInit();
while(1)
{
dataconfig1_t.CS_HOLD = FALSE;
dataconfig1_t.WDEL = TRUE;
dataconfig1_t.DFSEL = SPI_FMT_0;
dataconfig1_t.CSNR = 0xFE;
spiTransmitData(spiREG1,&dataconfig1_t,2,TX_Data_Master);//Write Enable
for(i=0;i<50000;i++)
{
j=i*3;
j=j/3;
}
}
试了好久还是无法拉低片选信号,配置寄存器spiREG1->PC5 |=0x01也无法拉低。如果将CS作为GIO配置来拉低,应该是不能做片选信号的吧?
gaoyang9992006:
是不是存在上拉电阻将其拉高了。检查一下是不是存在这样的寄存器,另外检查一下电路。