Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
SDIO
代码分享,stm32f407的sdio驱动。
发布于 2014-11-27 20:06:38 浏览:3894
订阅该版
做文件系统的时候下载了ST的SDIO驱动,感觉不是很好用,后来又在网上找了一份注释非常全的,并且对卡的兼容性也很好,然后又在这个基础上做了些修改,现在分享给各位。 几点说明: 1,官方的程序读写SD全是以字节寻址,既然用了SD卡就要用文件系统,用文件系统都是以扇区寻址,所以官方的程序这点不太合理,以字节寻址32位地址也只能支持4G以下的卡。所以在原来的程序中增加了两个函数: ```SD_Error SD_LBA_ReadBlocks(uint8_t *readbuff, uint32_t BlockAddr, uint32_t NumberOfBlocks); SD_Error SD_LBA_WriteBlocks(uint8_t *writebuff, uint32_t BlockAddr, uint32_t NumberOfBlocks);``` 实际应用中,直接使用这两个函数即可,可以不必去区分是SingleBlock还是MultiBlocks。 2,上面两个函数向SD发送命令没用用官方的命令函数,这个问题处理的比较直接,所以上面的函数效率很不错,assert_param也是没有的,所以尽量保证你的程序其它地方没有问题了再使用这两个函数比较好。 3,对于从SD卡中读到的数据,不可能总是以32位的方式来处理,以字节方式处理的情况恐怕还多一些,可官方和程序却不理会这个实际应用中的问题,全部以WORD方来对齐,所于DMA读写处又做了如下修改: ```/*DMA_InitStructure.DMA_BufferSize = BufferSize / 4;*/ DMA_InitStructure.DMA_BufferSize = BufferSize; /*DMA_InitStructure.DMA_MemoryDataSize = DMA_MemoryDataSize_Word;*/ DMA_InitStructure.DMA_MemoryDataSize = DMA_MemoryDataSize_Byte;``` 注释掉的是原官方的,下面是修改后的。这样修改后,在处理数据时,就不用再考虑必须以WORD对齐的问题。 同样对于DMATX也是要按照上面的方式修改。 完整版的程序在这里 [url]http://pan.baidu.com/s/1ntJXbfj[/url]
查看更多
5
个回答
默认排序
按发布时间排序
HVVJ_8045
2020-07-22
这家伙很懒,什么也没写!
您好,程序在哪里呢。
aozima
2014-11-27
调网络不抓包,调I2C等时序不上逻辑分析仪,就像电工不用万用表!
外设是32位的,改成字节真的不会有问题?很神奇!
dzahz
2014-11-27
这家伙很懒,什么也没写!
这个是测试过的,确实没有问题,自己也做了音频播放的实验,mp3,flac播放都很正常,如果是WORD对齐方式,那么播放FLAC就必须另外处理非WORD对齐的问题。 这个程序对卡的兼容性表现也不错,我手上有各种容量品牌的卡总共6种都能正常初始化,读0扇区的测试也能通过。就是一个张不知名口品牌的2G卡,挂载文件系统不成功,还没去研究为什么。其它的都正常。
Mr.Ray
2016-01-13
这家伙很懒,什么也没写!
成功挂载2G 内存卡 谢谢!
Tianqf
2018-01-18
这家伙很懒,什么也没写!
大神求指教,这个怎么用啊。。。
撰写答案
登录
注册新账号
关注者
1
被浏览
3.9k
关于作者
dzahz
这家伙很懒,什么也没写!
提问
7
回答
30
被采纳
0
关注TA
发私信
相关问题
1
求个在STM32F103 RTT上使用SDIO接口的例子
2
是否能增加一个 SDIO AP61xx 的驱动呢
3
sdio和fsmc驱动lcd冲突
4
发现了sdio_unregister_driver里的一个bug
5
用sdio框架驱动过w8801(wifi模块)的坛友请进(已解决)
6
关于rt-thread系统sdio驱动框架使用
7
问题请教,关于在rt-thread中调试RT1052中调试sdio wifi模块
8
【文件系统学习】+海中陆地+RT-Thread文件系统学习挂载SDIO...
9
sdio驱动是怎么使用的?也没有文档和例程啊
10
rt-thread中如何添加对AP6181的支持
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
五分钟玩转RT-Thread新社区
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
6
国产MCU移植系列教程汇总,欢迎查看!
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
RS485驱动包的使用
2
当做一件事,坚持到第二十年 ——Open-SkyEye强势回归!
3
stm32f407zgt6新建工程
4
【github】rt-thread BSP 目录所有支持开发板整理展示
5
使用 D1s (RDC2022 纪念版) 连接 thingspeak
热门标签
RT-Thread Studio
串口
LWIP
SPI
Env
AT
FinSH
ART-Pi
Bootloader
CAN总线
Hardfault
文件系统
USB
DMA
RT-Thread
线程
stm32
RT-Thread Nano
SCons
MQTT
ESP8266
ota
packages_软件包
UART
rtthread
RTC
freemodbus
I2C
flash
cubemx
W5500
rt-smart
定时器
FAL
PWM
ADC
BSP
SDIO
msh
AB32VG1
Debug
C++_cpp
socket
SFUD
中断
编译报错
MicroPython
keil
LVGL
dfs
本月问答贡献
出出啊
1424
个答案
315
次被采纳
小小李sunny
1327
个答案
262
次被采纳
crystal266
490
个答案
144
次被采纳
whj467467222
1210
个答案
141
次被采纳
张世争
581
个答案
131
次被采纳
本月文章贡献
出出啊
4
篇文章
4
次点赞
小小李sunny
1
篇文章
1
次点赞
crystal266
1
篇文章
1
次点赞
whj467467222
2
篇文章
2
次点赞
张世争
1
篇文章
1
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部