OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7974|回复: 21

SD学习问题

[复制链接]

9

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2013-3-10
在线时间
0 小时
发表于 2013-4-11 19:42:47 | 显示全部楼层 |阅读模式

今天开始学习sd卡的内容,刚添加了其驱动c文件(sdio通信)就编译不了了。下为截图:


 


下面这张是编译完跳出来的,貌似是说sdio_sdcard.c无效,需要重建工程。。。
哪边出问题了呢???

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-4-11 20:47:23 | 显示全部楼层
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

9

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2013-3-10
在线时间
0 小时
 楼主| 发表于 2013-4-12 08:31:20 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
我就是用的最新的,昨天下载的拓展例程里面的
回复 支持 反对

使用道具 举报

9

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2013-3-10
在线时间
0 小时
 楼主| 发表于 2013-4-12 09:27:24 | 显示全部楼层

回复【3楼】njutzdhlhq:
---------------------------------
 对比了编译正常的文件,stm32f10x_sdio.c下面的h文件多了两个文件:core_cm3.h/stm32f10x.h

这些h文件是编译的时候自动生成的吗???为什么会不一样?


                           

回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-4-12 10:19:25 | 显示全部楼层
回复【4楼】njutzdhlhq:
---------------------------------
告诉我,例程详细名字,库函数还是寄存器版本?
我直接测试下。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-4-12 10:19:31 | 显示全部楼层
还有编译器版本。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

9

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2013-3-10
在线时间
0 小时
 楼主| 发表于 2013-4-12 11:32:07 | 显示全部楼层

回复【6楼】正点原子:
---------------------------------
我是在库函数上添加的sdio.c文件
keil u4编译
j link下载
                                        

 

DHT11.zip

23.78 MB, 下载次数: 89

回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-4-12 14:39:04 | 显示全部楼层
回复【7楼】njutzdhlhq:
---------------------------------
你这还搞了ucGUI什么的,帮不到你了。
学SD卡,整这么大一个工程,算是前无古人了....
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-4-12 14:39:27 | 显示全部楼层
我编译,提示SIMSUN_35.c找不到,没辙。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

9

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2013-3-10
在线时间
0 小时
 楼主| 发表于 2013-4-12 15:45:44 | 显示全部楼层
回复【9楼】正点原子:
---------------------------------
原子哥,,,那个SIMSUN.c在字库生成器里面,是我做的字库
麻烦你再帮我看看。。。把sdio.c添加进去,看看编译结果。                                        
回复 支持 反对

使用道具 举报

9

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2013-3-10
在线时间
0 小时
 楼主| 发表于 2013-4-13 08:56:55 | 显示全部楼层

回复【9楼】正点原子:
---------------------------------
原子哥,老问题解决了,是例程用的是2.0的库函数版本,我用的是3.5的库函数版本。。。我把STM32f10x_lib_h改成stm32f10x_h后编译又出问题:
MY_NVIC_INIT()、SDIO_IRQChannel未定义。。。对比了一下,是2.0的定义在stm32f10x_nvic_h里面,,,但3.0的定义在哪里呢???misc里面没找到它们的定义啊!!!
 


                                       

 

回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-4-13 10:48:32 | 显示全部楼层
MY_NVIC_INIT是我写的函数,在sys.c里面。
在stm32f10x.h里面SDIO_IRQChannel貌似名字变成了:SDIO_IRQn
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

9

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2013-3-10
在线时间
0 小时
 楼主| 发表于 2013-4-13 11:24:32 | 显示全部楼层
回复【12楼】正点原子:
---------------------------------
找不到耶!!!
原子哥,,,我想先用spi模式。。。如果我要往sd卡里面写一个txt文件(sd卡插到电脑上能用word打开的),mmc_sd.c里貌似没有写txt的函数。
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-4-13 15:05:29 | 显示全部楼层
http://www.openedv.com/posts/list/13558.htm
这里面,mini板的7寸屏例程,加入了fatfs,支持文件创建,你在这个基础上修改一下就好了。建议:去掉图片解码,占用太多RAM了....把Mini板榨干了...
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

9

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2013-3-10
在线时间
0 小时
 楼主| 发表于 2013-4-13 16:13:15 | 显示全部楼层
回复【14楼】正点原子:
---------------------------------
有点复杂,有木有fatfs移植的一些资料?
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-4-13 20:44:14 | 显示全部楼层
这个移植很简单啊。
看看fatfs官网的资料就差不多了
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

9

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2013-3-10
在线时间
0 小时
 楼主| 发表于 2013-4-14 10:36:19 | 显示全部楼层

回复【16楼】正点原子:
---------------------------------
现在的fatfs源码都是库函数3.5之前的版本,移植不了
                                        

原子哥有没有3.5版本的fatfs源码 

回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-4-14 10:52:48 | 显示全部楼层
回复【17楼】njutzdhlhq:
---------------------------------
战舰板的库函数代码。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

9

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2013-3-10
在线时间
0 小时
 楼主| 发表于 2013-4-17 10:47:53 | 显示全部楼层

回复【18楼】正点原子:
---------------------------------
谢谢原子哥 我现在已经能创建txt文件并写了。不过又有新的问题(本人新手,问题比较多,望原子哥不要介意):
下面是我写的代码:
TEM_L = temperature%10;//温度低位
TEM_H = temperature/10;//温度高位
TEM_SD[0] = TEM_H+48;//转换为ASCII
TEM_SD[1] = TEM_L+48;
rc = f_open(&fil, "0:TESTLIU.txt", FA_WRITE);//以写的方式打开文件
f_lseek(&fil,(fil.fptr+TEM_BC));                       //指针往后移TEM_BC(初始化过)位
rc = f_write(&fil, TEM_SD, 2, &bw);                //写TEM_SD[0]、TEM_SD[1]
TEM_BC = TEM_BC+3;                                  //指针后移三位
 f_close(&fil);                                                    //关闭文件
每次循环temperature值更新,写指针都后移三位,下面是运行结果:
                                        


  开始时每两个温度之间都有间隔,过一段时间就没了,,,从图上看貌似是间隔被填充了     。。。检查了好几遍程序,都没找到问题所在。

希望原子哥和各位大神帮俺看看问题出哪儿了???

灰常感谢!!!      

回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-4-17 14:55:06 | 显示全部楼层
应该是超过你的文件大小了,后续用f_lseek,不知道和不合适了.
得验证检查了.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

9

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2013-3-10
在线时间
0 小时
 楼主| 发表于 2013-4-17 15:04:12 | 显示全部楼层
如果超了该怎么改呢???我想写完前一个数据指针后移,如果不用f_lseek怎么解决呢
回复 支持 反对

使用道具 举报

9

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2013-3-10
在线时间
0 小时
 楼主| 发表于 2013-4-17 19:37:26 | 显示全部楼层
回复【20楼】正点原子:
---------------------------------
谢原子哥解答,已经解决了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-21 05:41

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表