毫无钻牛之意!张先生!请帮忙看下代码,附上图说明.请帮指出错误
/*初始化SPI */ CS = 1; SPI1C1 = 0x00; SPI1C2 = 0x00; //-------------------------------------------- // BUSclk = 4MHz // SPIClk = 4M/2/2 = 1MHz SPI1BR = 0x10; //-------------------------------------------- // SPE = 1 使用SPI接口 // MSTR = 1 SPI为主模式 // CPHA=0,CPOL=0 时钟线平常为低电平,接收数据时在SPICLK的上 // 升沿读取数据 // LSBFE=1,低位先传 SPI1C1 = 0x51; (void)(SPI1S == 0); CS = 1;
/*向SPI发送数据 */ CS = 0; //temp = SPI1S; while (!SPI1S_SPTEF); SPI1D = port; while (!SPI1S_SPTEF); //temp = SPI1S; SPI1D = sendData; while (!SPI1S_SPTEF); CS = 1; // 此刻SPIEF已为1,如果置高CS那么如图所示. // 数据还没有完全发送完,CS就变为高电平
|