【STM32F0开发日志/评测/笔记】+互补PWM波的产生
STM32F030 PB14和PB15无法输出PWM求助
【STM32F030探索套件】序列之五 外部中断
【STM32F0开发日志---二】+ucosii.2.92移植在STM32F030
上传个STM32F0+5110+内部温度传感器的菜鸟实例
【STM32F030探索套件使用问题】STM32F030 SPI方式驱动ST7565LCD失败
求一份STM32F051 I2C驱动LCD 12864的例程
STM32F0 M0 向结构体赋值进入HardFault异常
STM32F0 ADC-DMA方式采集2路数据时出现问题
STM32F030C8T6,TIM16定时慢很多问题?
RE:STM32F0系列SPI问题
回复:STM32F0系列SPI问题
这个是以前用在051R8上的SPI读写函数,可以参考一下
/*******************************************************************************
函数名称:SD_Write_Byte()
功 能:向SPI总线发送一个数据
参 数:无
返回值 :无
********************************************************************************/
void SD_Write_Byte(unsigned char dat)
{
/* 判断发送缓冲是否为空 */
while(SPI_I2S_GetFlagStatus(SD_SPI, SPI_I2S_FLAG_TXE) == RESET);
/* 发送字节 */
SPI_SendData8(SD_SPI, dat);
/* 判断接收缓冲是否为空*/
while(SPI_I2S_GetFlagStatus(SD_SPI, SPI_I2S_FLAG_RXNE) == RESET);
/* flush data read during the write */
SPI_ReceiveData8(SD_SPI);
}
/*******************************************************************************
函数名称:SD_Read_Byte()
功 能:从SPI总线读取一个数据
参 数:无
返回值 :无
*******************************************************************************/
unsigned char SD_Read_Byte(void)
{
unsigned char Data = 0;
/* 判断发送缓冲是否为空 */
while (SPI_I2S_GetFlagStatus(SD_SPI, SPI_I2S_FLAG_TXE) == RESET)
{
}
/* 发送字节 */
SPI_SendData8(SD_SPI, 0xFF);
/* 判断接收缓冲是否为空 */
while (SPI_I2S_GetFlagStatus(SD_SPI, SPI_I2S_FLAG_RXNE) == RESET)
{
}
/* 获取接收到的数据 */
Data = SPI_ReceiveData8(SD_SPI);
return Data;
}