OpenEdv-开源电子网

标题: Flash 进行SPI通信时 用逻辑分析仪抓不到数据 [打印本页]

作者: nan    时间: 2014-2-24 23:22
标题: Flash 进行SPI通信时 用逻辑分析仪抓不到数据

const u8 TEXT_Buffer[]={"a1c"};
#define SIZE sizeof(TEXT_Buffer)

if(key==KEY_UP)//KEY_UP°???,????W25Q64
{
LCD_Fill(0,170,239,319,WHITE);//????°???    
  LCD_ShowString(60,170,200,16,16,"Start Write W25Q64....");
SPI_Flash_Write((u8*)TEXT_Buffer,0,SIZE); //????????100?????·??????,????SIZE?¤????????
LCD_ShowString(60,170,200,16,16,"W25Q64 Write Finished!"); //?á???????ê??
}
if(key==KEY_DOWN)//KEY_DOWN°???,????×?·?????????
{
 
LCD_ShowString(60,170,200,16,16,"Start Read W25Q64.... ");
SPI_Flash_Read(datatemp,0,SIZE); //????????100?????·??????,????SIZE??×???
LCD_ShowString(60,170,200,16,16,"The Data Readed Is:  "); //?á???????ê??
LCD_ShowString(60,190,200,16,16,datatemp); //??????????×?·???
}

SPI 模式是3
软件可以进行正常通信,但就是用逻辑分析仪去看它的数据时显示不正确
我是从0地址开始的  按下按键但逻辑分析仪显示:

(, 下载次数: 7)

逻辑分析仪设置正确  我想问一下 为什么不是从0开始



作者: 正点原子    时间: 2014-2-24 23:25
你的逻辑分析仪够快吧?
速度调低点试试了.
作者: nan    时间: 2014-2-24 23:36
够慢了还是不行
(, 下载次数: 7)
(, 下载次数: 10)

而且按一下按键 出来的数据都不一样



作者: 正点原子    时间: 2014-2-24 23:40
回复【3楼】nan:
---------------------------------
你的逻辑分析仪多少带宽的啊?
另外,SPI频率多少?
作者: nan    时间: 2014-2-24 23:50
带宽是24M
 SPI 是 SPI2_SetSpeed(0);//设置18M 时时钟,
void SPI2_SetSpeed(u8 SpeedSet)
{
SpeedSet&=0X07; //?
SPI2->CR1&=0XFFC7; 
SPI2->CR1|=SpeedSet<<3; //
SPI2->CR1|=1<<6; //  

作者: 八度空间    时间: 2014-2-25 08:49
回复【5楼】nan:
---------------------------------
将SPI的时钟调低一点看下。一般你将片选管脚CS作为开始抓数据依据即可(下降沿触发,分析仪上)




欢迎光临 OpenEdv-开源电子网 (http://47.111.11.73/) Powered by Discuz! X3.4