搜索
bottom↓
回复: 16

AT SAME70 使用QSPI往W25芯片里面写数据,发送一个字实际...

[复制链接]

出0入0汤圆

发表于 2019-1-12 14:16:58 | 显示全部楼层 |阅读模式
大家好,请教一个问题,最近使用atmel SAM E70这款芯片。使用atmel start导出的QSPI的驱动。操作W25Q128 flash,发现读数据正常,但是写数据不正常。使用逻辑分析仪,抓取波形,发现写数据的过程只写一个字节,也会发八个字节的数据出去,就是由于附带的多余的7个字节数据所以导致写数据出错。如果发多字节则会附带出更多数据。如下图是抓取到的图片,图中A1是时钟,A2是数据,A5是片选,绿色部分是解析的数据,可以看到写使能指令0x06, program指令0x02,地址0X00,0X00,0X00,数据0XAA, 都已经正常发送,但后面跟着的0xff是不正常的。




写数据过程结束之后,读状态的指令如下图,也是正常的。



已经尝试过直导出QSPI,不选择具体的flash型号,然后直接发送数据,抓到的波形是一样的,都会附带多余的7个字节出去。问题已经卡了好几天了,哪位遇到过这个问题,指点一下,非常感谢。。。。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入31汤圆

发表于 2019-1-12 14:59:27 | 显示全部楼层
这个是不是最好先研究手册,再仔细看看底层的代码,碰到用相同CPU的人且都用了QSPI的概率相对较小

出0入0汤圆

发表于 2019-1-12 15:33:21 | 显示全部楼层
QSPI 只有一条数据线??    你用SPI协议解析QSPI数据?      

出250入17汤圆

发表于 2019-1-12 16:35:05 | 显示全部楼层
检查你导出的代码,这个肯定是代码的问题了

出0入0汤圆

 楼主| 发表于 2019-1-12 16:58:12 | 显示全部楼层
zchong 发表于 2019-1-12 14:59
这个是不是最好先研究手册,再仔细看看底层的代码,碰到用相同CPU的人且都用了QSPI的概率相对较小 ...


恩恩,是的,MCU和W25的芯片手册都已经看了好几遍了。之前使用atmel的老版本的库函数有好使的程序,打断点,对比发送数据之前的 QSPI的寄存器,都是一样的,实在是没有办法了,跑到论坛发帖问问大家。

出0入0汤圆

 楼主| 发表于 2019-1-12 17:03:37 | 显示全部楼层
not_at_all 发表于 2019-1-12 15:33
QSPI 只有一条数据线??    你用SPI协议解析QSPI数据?

SPI-flash默认是支持 singel SPI, Dual spi, quad SPI的。在进行QSPI通讯之前是可以通过IFR设置指令,地址,数据的位宽的,我写数据的时候设置的是singel模式。所以可以单根线解析

出0入0汤圆

 楼主| 发表于 2019-1-12 17:05:37 | 显示全部楼层
peteryzm 发表于 2019-1-12 16:35
检查你导出的代码,这个肯定是代码的问题了

昨天联系了原厂的FAE,FAE也在帮忙看了。很奇怪,之前使用atmel的老版本的库函数有好使的程序,打断点,对比发送数据之前的 QSPI的寄存器,都是一样的,可以就是会多出几个字节的数据。

出0入0汤圆

 楼主| 发表于 2019-1-16 14:18:31 | 显示全部楼层
这个问题支持支持反馈他们挂在官网上面的驱动是有问题的,还未定位到原因。

出0入0汤圆

发表于 2019-1-16 16:31:36 | 显示全部楼层
看起来底层驱动代码有问题, 可能漏了instr指令, data_len为8, 也就是说把0x02,0X00,0X00,0X00当成地址, 把剩下的当成写入的数据.

查查       
mem->inst_frame.bm.b_inst_en
mem->inst_frame.bm.b_data_en
mem->inst_frame.bm.b_addr_en
qspid->qspi_buffer.tx_data_size

另外, 我建议直接用官方的s25fl1xx驱动

出0入0汤圆

发表于 2019-1-19 20:14:28 | 显示全部楼层
这是什么逻辑分析仪?界面看去不错

出0入4汤圆

发表于 2019-1-19 23:18:35 来自手机 | 显示全部楼层
楼主,这个芯片必须要用START生成代码吧?

出0入0汤圆

 楼主| 发表于 2019-1-20 10:17:19 | 显示全部楼层
9509238 发表于 2019-1-19 20:14
这是什么逻辑分析仪?界面看去不错

周立功的

出0入0汤圆

 楼主| 发表于 2019-1-20 10:18:10 | 显示全部楼层
zhanyanqiang 发表于 2019-1-19 23:18
楼主,这个芯片必须要用START生成代码吧?

不是的,官方也有以前的库。现在在官网找不到了,托管到Git了。

出0入0汤圆

 楼主| 发表于 2019-1-20 10:22:12 | 显示全部楼层
cheungman 发表于 2019-1-16 16:31
看起来底层驱动代码有问题, 可能漏了instr指令, data_len为8, 也就是说把0x02,0X00,0X00,0X00当成地址,  ...

上周一的时候Atmel官方技术支持反馈他们的驱动确实有问题,他们在修改,到现在也没反馈。我试过在导出代码的时候把SST25去掉,直接生成QSPI的驱动,然后写发送1字节的数据,还是会多发7个字节。

出0入0汤圆

发表于 2019-1-20 10:28:29 来自手机 | 显示全部楼层
难道不能自己按手册写驱动?官方驱动也是按手册写的吧!

出0入0汤圆

 楼主| 发表于 2019-1-20 10:40:34 | 显示全部楼层
lingdianhao 发表于 2019-1-20 10:28
难道不能自己按手册写驱动?官方驱动也是按手册写的吧!

are you kidding me ?这种驱动如果我自己动手写,估计首先跳出来反对的就是我们老大吧!

出0入4汤圆

发表于 2019-1-20 12:48:08 | 显示全部楼层
本帖最后由 zhanyanqiang 于 2019-1-20 12:59 编辑
yanghuanchun 发表于 2019-1-20 10:18
不是的,官方也有以前的库。现在在官网找不到了,托管到Git了。


哎.....
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-24 19:01

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表