新手上路
- 积分
- 20
- 金钱
- 20
- 注册时间
- 2016-5-31
- 在线时间
- 4 小时
|
1金钱
最近在调一个程序,sdio fatfs,sd卡是4G的手机上用的那种。参考的程序是原子的寄存器版的程序,sd的硬件和战舰v3一样,现在的情况是这样的:
1、无法使用jlink进行调试,一旦进入debug模式sd卡的初始化是成功的,但是f_mount返回的错误是FR_NO_FILESYSTEM。在添加fatfs和sd卡驱动之前都是可以进行调试的。jlink我使用的是三线的。
2、每次查看实验结果都是通过给板子断电,然后再上电看液晶屏上的输出信息(调试的时候我设置了很多打印执行结果的语句)。通过断电、上电的方式可以进行sd卡的读取,包括mount,readdir,open,write这些都是没有问题的。
我做过的程序改动(移植原子的程序时做过的改动):
1、硬件方面,我用的是stm32f103ze,引脚有上拉电阻10k,sd卡电源那里使用104滤波。
2、在原子程序的寄存器版的基础上,修改#define SDIO_TRANSFER_CLK_DIV 0x0c//速度变慢一些(这个速度我是自己试的,大家都是使用哪种速度可以分享下)
3、fatfs这里,去掉了长文件名支持,#define _USE_LFN 0
4、没有外部ram。程序中去掉了响应的语句。
请问:
1、有没有遇到sd卡必须重新上电才能正常使用的情况?一般来说出现这种情况的原因有哪些。
2、jlink上有个复位引脚,这个我没有接。请问,接这个引脚复位和重新烧写程序复位是一样的吗?
3、问题暂时这么多。谢谢
|
|