新手上路
- 积分
- 22
- 金钱
- 22
- 注册时间
- 2018-7-12
- 在线时间
- 6 小时
|

楼主 |
发表于 2019-9-5 08:48:48
|
显示全部楼层
static void EXAMPLE_SPIMasterInit(void)
{
spi_master_config_t masterConfig = {0};
uint32_t srcFreq = 0U;
/* configuration from using SPI_MasterGetDefaultConfig():
* userConfig->enableLoopback = false;
* userConfig->enableMaster = true;
* userConfig->polarity = kSPI_ClockPolarityActiveHigh;
* userConfig->phase = kSPI_ClockPhaseFirstEdge;
* userConfig->direction = kSPI_MsbFirst;
* userConfig->baudRate_Bps = 500000U;
* userConfig->dataWidth = kSPI_Data8Bits;
* userConfig->sselNum = kSPI_Ssel0Assert;
* userConfig->sselPol = kSPI_SpolActiveAllLow;
*/
SPI_MasterGetDefaultConfig(&masterConfig);
masterConfig.baudRate_Bps = EXAMPLE_SPI_MASTER_BAUDRATE;
masterConfig.sselNumber = EXAMPLE_SPI_MASTER_SSEL;
masterConfig.clockPhase = kSPI_ClockPhaseSecondEdge; //改为第二个跳变沿采样
masterConfig.sselPolarity = kSPI_Spol0ActiveHigh;
srcFreq = EXAMPLE_SPI_MASTER_CLK_FREQ;
SPI_MasterInit(EXAMPLE_SPI_MASTER, &masterConfig, srcFreq);
}
static uint32_t SPI1_ReadWriteByte(uint16_t TxData) //数据类型改了,非中断类型的传输
{
while(!(SPI_GetStatusFlags(EXAMPLE_SPI_MASTER) & kSPI_TxReadyFlag));
SPI_WriteData(EXAMPLE_SPI_MASTER, TxData);
// SPI_EnableInterrupts(EXAMPLE_SPI_MASTER, kSPI_RxReadyInterruptEnable);
while(!(SPI_GetStatusFlags(EXAMPLE_SPI_MASTER) & kSPI_RxReadyFlag));
return SPI_ReadData(EXAMPLE_SPI_MASTER);
} |
|