完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
问题1:cubemx中SDIO选择4 bit wide bus模式,时钟频率45Mhz。生成相关工程文件。 代码如图,只是跑hal库封装好的两个基本函数,出现的问题是在调试的时候接受数据数组sdbuf[0].arr[512] 中接受到了16个数据。
。学生对于sd读写不是特别清楚,想请教下这个是什么原因,把写数据改成8个,接受数组有12个数据。 FATFS问题会另外发帖 |
|
相关推荐
12个回答
|
|
补充:当sd卡完成读写以后,将sd卡通过sd的u盘插入电脑,会要求你格式化。
最佳答案
|
|
|
|
SD卡应该是在写的时候给写错数据导致需要格式化。读写这个都是有标准的命令,楼主看一下例程中SD卡的初始化过程。
|
|
|
|
hal库应该都已经帮你初始化完成了,看了例程也只是直接调用封装好的HAL_SD_Read,Write等这些函数 |
|
|
|
HAL库初始化完成,但是对于SD卡的操作还是需要的。楼主可以把你的工程传上来,我们看一下缺少哪些文件。
|
|
|
|
就是cubemx选择SDIO 生成就好了,直接用封装好函数,我看例程也是这样,你需要我压缩下给你,麻烦你了! |
|
|
|
|
|
谢谢分享
|
|
|
|
看代码你这样的操作是属于SD卡直接读写。使用文件系统是要初始化SD卡的。下图是我找的HAL初始化SD卡的过程。注意看SD_GoIdleState这个函数。
|
|
|
|
直接操作SD卡扇区,可能会导致SD卡文件系统的破坏。
http://www.stmcu.org/module/forum/thread-607767-1-1.html 可参考:STM32Cube学习之十四:SDIO FATFS.pdf |
|
|
|
吕少大大 发表于 2018-8-18 08:11 你这个我看过,但是好像有点过时了,我按照你的操作,就是IDE用的是IAR,按照你的操作来完全不可行。一直卡在f_open下面。怎么都过不去 |
|
|
|
吕少大大 发表于 2018-8-18 08:11 刚准备就这个问题发帖子询问,你刚好提及了,麻烦你帮忙看下,谢谢!我用IAR生成的时候USER这个文件下面多了fatfs.c,bsp_driver_sd.c 。还有就是你pdf提及的sd_diskio.c 里面的函数hal官方应该已经该过了,可能你需要更新下。dma只要cubemx里面设置好,都会自动帮你修改号 |
|
|
|
你写SD卡的数据,改写掉了FatFS文件系统的相关数据,所以插到电脑上,电脑检测不出来文件系统,所以需要格式化
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
1016 浏览 0 评论
如何解决MPU-9250与STM32通讯时,出现HAL_ERROR = 0x01U
787 浏览 1 评论
hal库中i2c卡死在HAL_I2C_Master_Transmit
1174 浏览 1 评论
LL库F030进行3个串口收发,2个串口为232,一个为485,长时间后,会出现串口1停止运行,另外两个正常,只有重启复原
1643 浏览 1 评论
544 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-10 14:41 , Processed in 0.669139 second(s), Total 63, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号