初中生
最后登录1970-1-1
在线时间 小时
注册时间2016-7-18
|
程序没有飞啊 各种功能都正常 而且你注意观察 片选也是正常的,每次屌用SPI函数 就会开关一次片选 两图是一致的 只是时间缩短了,因为SPI时钟 的一段长低电平没有了
同时测试了20多快板子 有的一天 有的一周 都会出这个问题。 我的感觉是
void SPI1_write_byte(int8u data)
{
while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);//μè′y·¢Ëí¼Ä′æÆ÷¿Õ
SPI_I2S_SendData(SPI1, data); //·¢Ëíò»¸ö×Ö½ú
while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);//μè′y½óêÕ¼Ä′æÆ÷óDD§
SPI_I2S_ReceiveData(SPI1); //·μ»Øò»¸ö×Ö½ú
}
这个while 等的标志一直是reset 导致的
|
-
这个是正常的 一次片选操作3次SPI寄存器 有三组数据
-
异常的 时钟信号中间没有低电平
|