在 TC399 电路板上,只有 spi 模式 1 能正常工作,在模式 0 和 2 中中断根本不会发生。 仅通过配置这两个参数来定义模式:
clockPolarity = SpiIf_ClockPolarity_idleLow/SpiIf_ClockPolarity_idleHigh;
shiftClock = SpiIf_ShiftClock_shiftTransmitDataOnLeadingEdge/SpiIf_ShiftClock_shiftTransmitDataOnTrailingEdge;
还是有其他需要调整的地方?
在 SPI_CPU_1_KIT_TC397_TFT 示例中,QSPI2 模块是主站,QSPI3 模块是从站,这是一个传递函数:
void transferData(void)
{
while(IfxQspi_SpiSlave_getStatus( g_qspi.spiSlave) == SpiIf_Status_busy ||
IfxQspi_SpiMaster_getStatus( g_qspi.spiMasterChannel) == SpiIf_Status_busy)
{ /* Wait until the previous communication has finished, if any */
}
/* 指示 SPI 从站接收长度已定义的数据流 */
IfxQspi_SpiSlave_exchange( g_qspi.spiSlave、 NULL_PTR, g_qspi.spiBuffers.spiSlaveRxBuffer[0]、 spi_buffer_size);
/* 通过 SPI Master 发送数据流 */
IfxQspi_SpiMaster_exchange( g_qspi.spiMasterChannel、 g_qspi.spiBuffers.spiMasterTxBuffer[0]、 null_ptr,spi_buffer_size);
verifyData();
} |