你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【猪圈丶嗨情歌的开发分享】SDIO读取SD卡扇区,使用HAL库  

[复制链接]
猪圈丶嗨情歌 发布时间:2015-12-14 08:44
【猪圈丶嗨情歌的开发分享】
6 C4 A+ j( ^( `; F: b( w! v今天给大家带来的是我这几天学习的SDIO,用STM32系列芯片的SDIO读取SD卡的扇区。本人原创。
. S6 f, V2 j- m  ~8 @( q

  ^; y- s2 C  P5 j6 q9 \  X5 h我使用的工具+ e! e; c; q" i, Q9 \* t8 a9 m1 Q
开发平台:正点原子探索者STM32F407开发板9 X/ Q" V9 Y$ Z4 [1 y2 i  Z
硬件:使用了NUCLEO-F446RE开发板的ST-Link作为调试器、SD卡、数据线、开发板的电源适配器、DELL一体机! L/ K7 j6 @0 o) i: a
软件:STM32CubeMX、Keil V5、串口助手& j! K4 s; D! e7 p2 B3 {

- ^3 C: W  j, h4 @8 ?学习的知识点% a- R( ]( v  \( G. |4 Y
1、使用STM32CubeMX配置SDIO, ]/ T" g, L7 R: b% Q
2、在Keil中初始化SDIO
$ v- ]1 x9 }: Y: W! v3 B: d3、读取SD卡状态、卡信息
! A3 Z( Q0 k) F" s; l  p3 l' x  C4、sprintf函数的使用
& d4 U5 Q9 n' \7 r

5 ~  `/ W' g7 v共享的资源1 o  o& R$ H9 C! D
完整的工程文件 SDIO.zip (9.16 MB, 下载次数: 2806)

评分

参与人数 1 ST金币 +10 收起 理由
wjandsq + 10 很给力!

查看全部评分

赞 收藏 7 评论21 发布时间:2015-12-14 08:44

举报

21个回答
小科豆 回答时间:2018-5-25 20:47:40
State = SD_TRANSFER_ERROR = 2   /*!< Transfer failed       */
; N. k& G& u8 V5 r* r我代码没修过直接下载到F407的板子,结果报错了。
3 T& X( a3 Q! b4 j, u好像HAL_SD_WideBusOperation_Config(&hsd, SDIO_BUS_WIDE_4B);这个就失败
hpdell 回答时间:2015-12-15 10:20:23
zhangbolily 发表于 2015-12-14 15:41
5 q/ {( F" L) S( y  iSDIO 可以配置中断和DMA的,你可以去看看

& V' i9 H$ A) ?, u( E6 @7 v$ F3 M- q我配置了,貌似没有什么效果,我配置后把sdio的中断、sd-dma的中断全部屏蔽掉,照样可以读写sd卡,不知道是哪个地方没有启动还是怎么回事 ??
猪圈丶嗨情歌 回答时间:2015-12-15 10:41:16
hpdell 发表于 2015-12-15 10:201 M+ e1 ~$ {( F# W0 \/ ~1 A
我配置了,貌似没有什么效果,我配置后把sdio的中断、sd-dma的中断全部屏蔽掉,照样可以读写sd卡,不知道 ...

, d* ^& S) {- R/ ~5 P- G2 a, O不需要配置中断也可以读写SD卡的啊,没有谁说一定要配置中断才可以的
disheng4688 回答时间:2015-12-14 09:40:42
谢谢分享         
hpdell 回答时间:2015-12-14 10:03:53
貌似使用cube MX 产生的sd 代码,没有支持中断与dma 功能啊 ??
那就地方 回答时间:2015-12-14 10:06:57
谢谢楼主分享,支持
猪圈丶嗨情歌 回答时间:2015-12-14 15:41:12
hpdell 发表于 2015-12-14 10:03
. d" H# l1 G5 P貌似使用cube MX 产生的sd 代码,没有支持中断与dma 功能啊 ??
( s, G) S- z$ M1 o" P4 b' c. i: L
SDIO 可以配置中断和DMA的,你可以去看看
yanhaijian 回答时间:2015-12-14 17:57:22
很嗨皮。
wwwhlw 回答时间:2015-12-14 19:19:02
谢谢分享。。。
埃斯提爱慕 回答时间:2015-12-14 19:35:03
提示: 作者被禁止或删除 内容自动屏蔽
adlu 回答时间:2015-12-23 17:30:16
图文并茂,步骤详尽,不错!学习!
hpdell 回答时间:2016-1-13 11:43:25
zhangbolily 发表于 2015-12-15 10:41
9 @) K* J$ T; K" d不需要配置中断也可以读写SD卡的啊,没有谁说一定要配置中断才可以的

8 S6 _% M, @9 I* }! G没有中断的话,那就是查询法了啊,感觉查询法比较占用资源了啊
adlu 回答时间:2016-3-26 13:26:26
hpdell 发表于 2016-1-13 11:43
" f; {8 z7 `% A0 a' S没有中断的话,那就是查询法了啊,感觉查询法比较占用资源了啊
  W2 y$ i: J7 G* a" w' F1 w) o
我也很想知道怎么样才能配置SDIO使用DMA方式。
power568 回答时间:2016-3-26 15:43:40
谢谢分享...
蕉阳_ven 回答时间:2016-4-16 16:42:25
hpdell 发表于 2016-1-13 11:43
3 T* i. Y. W; |9 m! U# ~没有中断的话,那就是查询法了啊,感觉查询法比较占用资源了啊
+ s8 Z( Z; |) L9 K+ @$ D
不开DMA中断好像只是DMA传输完后没有中断而已,DMA一样会运作。HAL_SD_ReadBlocks_DMA()里有开DMA请求
12下一页

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版