STM32F103xxx的官方SDIO驱动移植,终于搞定了

2019-10-15 20:42发布

最近闲了就玩玩STM32的SDIO驱动去了,小有收获

之前移植的是http://www.openedv.com/posts/list/25845.htm这个版本的,发现bug特多,很不正常的那个,头大

后面移植了官方的V4.5.0这个版本,搞定了,建议大伙们想玩这个的话移植这个靠谱一点,呵呵,不过还是有个bug的,对照SD卡的相关资料也很容易找出来,主要就是在读写block函数里面要设置block大小命令CMD16,要不然很容易死在DMA检测上面(如果用DMA控制传输的话)

呵呵,发此帖庆祝一下,嘿嘿

附件是源代码,学习原子的做法,增加
SD_Error SD_ReadDisk(uint8_t *readbuff, uint32_t sector, uint16_t cnt);    //读取磁盘SD_Error SD_WriteDisk(uint8_t *writebuff, uint32_t sector, uint16_t cnt);    //写入磁盘

这两个函数,方便操作,呵呵


卡结构体中SDCardInfo.CardCapacity(卡的容量单位修改为MB)要想得到字节为单位的请将SDCardInfo.CardCapacity<<20即可















友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
49条回答
miaoguoqiang
1楼-- · 2019-10-20 05:09
MDK5也是编译不过去,源代码有多出错误的地方。有部分源文件书写错误,有的是#include的地方少了一个下划线,还有就是my_fat.c没有添加到工程中。还有个就是楼主注释了两个的函数,旁边写了两个错误的函数。以上修改后编译能够通过。
八度空间
2楼-- · 2019-10-20 09:57
回复【32楼】miaoguoqiang:
---------------------------------
能截图看下你修改的地方么?
miaoguoqiang
3楼-- · 2019-10-20 14:39
回复【33楼】Badu_Space:
---------------------------------
上几个图










八度空间
4楼-- · 2019-10-20 19:38
回复【34楼】miaoguoqiang:
---------------------------------
你说的这些都不是很大的问题,自己修改一下即可,因为调试的过程中写法不一样造成的,还请谅解
miaoguoqiang
5楼-- · 2019-10-20 19:55
 精彩回答 2  元偷偷看……
八度空间
6楼-- · 2019-10-21 00:00
回复【36楼】miaoguoqiang:
---------------------------------
你说的这个是我第一次写的函数形参位置不一样的,后面为了统一,方便移植修改最少的代码了而修改过的

一周热门 更多>