完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我现在原子的STM32F429开发板,不带操作系统用SDIO和fatfs文件系统读写SD卡都正常,
现在我加入了FreeRTOS操作系统,只创建了一个任务,用SDIO和fatfs文件系统读写SD卡就不正常。 可以读出SD卡的状态,比如容量,卡类型什么的都能读到。 retSD = f_mount(&SDFatFS, "", 0); if(retSD) { printf(" mount error : %d rn",retSD); Error_Handler(); } else printf(" mount sucess!!! rn"); /*##-2- Create and Open new text file objects with write access ######*/ retSD = f_open(&SDFile, filename, FA_CREATE_ALWAYS | FA_WRITE); if(retSD) printf(" open file error : %drn",retSD); else printf(" open file sucess!!! rn"); 这两个函数执行都是正确的,返回都是FR_OK 但是,我观测到 f_open 函数中 /*-----------------------------------------------------------------------*/ /* Open or Create a File */ /*-----------------------------------------------------------------------*/ FRESULT f_open ( FIL* fp, /* Pointer to the blank file object */ const TCHAR* path, /* Pointer to the file name */ BYTE mode /* Access mode and file open mode flags */ ) { FRESULT res; DIR dj; FATFS *fs; #if !_FS_READONLY DWORD dw, cl, bcs, clst, sc; FSIZE_t ofs; #endif DEF_NAMBUF 上面代码是 ff.c 中 f_open 的一部分源码,其中,有个参数 FATFS *fs 我用ST-LINK调试, 一直运行 f_open中的代码 到源码这个函数 mem_set(fp->buf, 0, _MAX_SS); /* Clear sector buffer */ 前,FATFS *fs参数的值都不是空, 但是运行完这个函数 mem_set(fp->buf, 0, _MAX_SS); /* Clear sector buffer */ 后, FATFS *fs参数就为空了,不知道原因,这个参数是函数的内部参数,外部不可能改变他的值,mem_set这个函数赋值也不是FATFS *fs的地址 。 我在不带 FreeRTOS 的程序中观察了,这个参数在运行完这个函数mem_set(fp->buf, 0, _MAX_SS); /* Clear sector buffer */ 后,是不会变为空的。 请教啊,求助啊,弄了好久了,搞不明白 |
|
相关推荐
3个回答
|
|
帮顶!!
|
|
|
|
有没考虑过是堆栈空间的问题?启动文件堆栈空间设置够不够
|
|
|
|
http://www.openedv.com/forum.php ... p;extra=&page=1
|
|
|
|
只有小组成员才能发言,加入小组>>
691 浏览 1 评论
2118 浏览 5 评论
2433 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2198 浏览 6 评论
2165 浏览 7 评论
使用eim外接fpga可是端口一点反应都没有有没有大哥指点一下啊
317浏览 9评论
300浏览 7评论
请教大神怎样去解决iMX6Q在linux3.0.35内核上做AP失败的问题呢
435浏览 6评论
301浏览 5评论
349浏览 5评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-4-26 10:41 , Processed in 0.880693 second(s), Total 77, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号