查看相应设备SPI接口的时序,确定从设备要求。
我们的master模式要根据从设备的时序要求来设置参数,才能正常访问设备。
例如这个:
从设备要求,1、时钟空闲时为高电平;2、数据在时钟下降沿跳变,上升沿稳定,第2个沿为数据采样点;3、高位先发送;4、数据长度8位;
所以在CubeMx中应该设置为:
最后增加读写函数:
//SPI2,master模式,读写一个字节操作 //TxData:要写入的字节 //返回值:读取到的字节 uint8_t SPI2_ReadWriteByte(uint8_t TxData) { uint8_t Rxdata; HAL_SPI_TransmitReceive(&hspi2,&TxData,&Rxdata,1, 1000); return Rxdata; //返回收到的数据 }
即SPI文件配置完成。