stm32的spi读写只能在一个函数里完成吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了stm32的spi读写只能在一个函数里完成吗?相关的知识,希望对你有一定的参考价值。

网上的例程全是读和写一个函数完成的,我把他们改了一下,改成2个函数,一个读一个写,但是就不对了。改的时候基本原封不动的分成2个,是不是不能分开呢?u8 SPI2_Write(u8 data) u8 retry=0; while((SPI2->SR&0X02)==0) //等待数据发送完 retry++; if(retry>=0XFE)return 0; SPI2->DR=data; //data是要发送的数据 return 0;u8 SPI2_Read(void) u8 retry=0; while((SPI2->SR&0X01)==0) //等待数据接收完 retry++; if(retry>=0XFE)return 0; return SPI2->DR; //data是接收到的数据

参考技术A 是的,它必须是先发送一个数据把接受到的数据从移位寄存器中移出来 参考技术B 因为读的时候需要提供时钟,你用逻辑分析仪看就知道怎么回事。 参考技术C 不分

以上是关于stm32的spi读写只能在一个函数里完成吗?的主要内容,如果未能解决你的问题,请参考以下文章

STM32 在 V3.0的库中调试SPI设备时怎样把读写八位数值到指定的内存地址,用哪个库中的函数???

STM32入门开发: 介绍SPI总线读写W25Q64(FLASH)(硬件+模拟时序)

STM32入门开发: 介绍SPI总线读写W25Q64(FLASH)(硬件+模拟时序)

嵌入式用STM32F103完成对SD卡的数据读取

STM32学习笔记(16)——(SPI续)读写串行Flash

STM32+MFRC522完成IC卡号读取密码修改数据读写