这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » FPGA » FPGA SD卡驱动调试问题记录

共2条 1/1 1 跳转至

FPGA SD卡驱动调试问题记录

助工
2019-12-08 18:03:27     打赏

最近调试了SD卡,遇到了一些小问题,记录一下,分享一下。

1.    SD卡 卡槽旁边的一个小开关

我们平时见过的SD卡都是小的SD卡,可以放在手机上的。现在大多数的开发板上也是小的SD卡的卡槽,插入后,正好可以使用。但是如果想要用PC向里存储一定的东西,还是需要一个读卡器。读卡器有USB型的,同时也有一个大大的SD卡卡槽,就是扩展成为一个大的SD卡。大的SD卡在笔记本上有专门的插槽(笔者的有)。但是在SD卡卡槽的一侧有一个小的开关,这个小的开关是一个写保护开关。一般情况下,以金属接触点向上为正方向。向上推,是可读写。向下推是,是只读。这个在某些U盘上也有。

FPGA SD卡驱动调试问题记录

如果PC写不进去,说是被写保护。先不要怀疑SD卡(U盘)坏了,首先考虑这个硬件写保护。

原理是:这个开关是一个机械性的开关,如果里面两个金属触点接触,就可以写。否则,不能写。

2.     SD卡的区分

SD,SDHC,SDXC这三个都是SD卡,以容量区分。在进行地址读写,有一定的区别。

SD卡,按照字节地址去写(一般情况)。SDHC,SDXC卡,按照扇区地址进行读写(一般情况)。按照扇区还是字节地址和驱动协议也有一定的关系。

一个扇区的大小为512字节。

3.    SD读取不对的问题

我们可以用控制器进行读写SD卡,地址就是按照自己的设计就可以。

很多时候,我们需要用PC将一些数据放入到SD卡,然后通过控制器进行读取。读取时,需要知道数据存储的地址。利用winhex软件可以查到数据存放的地址。我们用控制器进行读写SD卡,利用winhex软件查到的地址,有时读出来的数据不正确。

经过不断的查找资料,发现利用winhxe软件查询数据存放地址时,可以有两个地址:物理地址和逻辑地址。winhex软件直接显示的逻辑地址。

控制器直接进行SD卡读写时,是按照物理地址进行读写的。所以需要利用winhex中的逻辑地址。

winhex显示逻辑地址一般在winhex软件的右下侧。

希望对遇到同样问题的学习者有用,有什么不对的地方,恳请大佬们指出。




工程师
2019-12-08 18:11:44     打赏
2楼

我也遇到过这个问题


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]