This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

C6748 OMAP L138 芯片 MMCSD接口初始化与读写操作

Other Parts Discussed in Thread: OMAP-L138

现在我找到的C6748(OMAP L138)MMCSD接口驱动实例程序一共有以下三套:

1 \evmc6748_v1-1\tests\experimenter\mmcsd

2 C6748_StarterWare_1_20_04_01

3 \OMAP-L138_FlashAndBootUtils_2_40\OMAP-L138\CCS\SDMMCWriter

其中:

1 配置过程在MMCSD时钟配置上有问题,见论坛内帖子“C6748 OMAP138 MMCSD 初始化与读操作“;

2 C6748_StarterWare_1_20_04_01仅提供了下层寄存器操作的函数实现与接口,但是对具体MMCSD接口配置流程与细节无对应实现;

3 有具体配置流程与读写测试实现;

本人在使用\OMAP-L138_FlashAndBootUtils_2_40\OMAP-L138\CCS\SDMMCWriter的过程中发现下面的问题:不论是单独调用接口SDMMC_MEM_readBytes和SDMMC_MEM_writeBytes进行连续读写操作,或者以上述两个接口作为FAT32文件系统diskio.c中disk_read与disk_write具体存储介质读写接口,都会出现异常。异常现象分别为:

1 SDMMC_MEM_readBytes执行时经常会在所调用的函数“SDMMC_readNWords”中进入死循环状态,具体语句与情况如下图红色圈定语句,等不到任何有效或异常状态,即status一直为0;

2 SDMMC_MEM_writeBytes执行时经常会在所调用的函数“SDMMC_writeNWords”中进入异常状态:TOUTRS Response time-out event.即下图中status读出的值为0x10;

3 在SDMMC_MEM_readBytes与SDMMC_MEM_writeBytes函数开始位置添加延时函数后可缓解上述两类问题,但是严重降低了实际读写带宽。

 

请问有人遇到过类似现象,或者有什么细节本人没有注意到?