使用支持BBB的startware 2.0.1.1库,用BeagleBone里的bootloader代码。把读SD的mmc0相应的配置替换成mmc1口,读取EMMC。
配置完mmc1的clk,cmd引脚功能模式为mmc时,cmd引脚就跳变成了2.5V。引脚有接上拉是3.3V。用万用表和示波器均测试,上拉电阻电源端是3.3V,cmd引脚端为2.5V。如下图,上拉电源实际测试为3.3V,R50两端,一端3.3V,一端2.5V。
当发送完CMD0命令后,再以CMD1命令,参数0X40FF8000初始化emmc后,无响应命令。实测有波形,AM335主机发送时序时,cmd引脚输出波形能达到3.3V,emmc芯片回复时序时,波形都是2.5V的。应该是emmc芯片返回的波形电平是2.5V,AM335采集不到有效响应。
也就是只有AM335发数据期间是3.3V,空闲状态,接收数据的时候都是2.5V。
板子是基于OSD335-RED在开发板,自带的mmc1的uboot启动是正常的。cmd引脚抓取的双向波形,均为3.3V。所以硬件应该没问题。
是否有寄存器配置不对导致这种情况,裸机调试emmc1不成功。还请高手解答。
user4894142:
Nancy Wang:
回复 user4894142:
请使用processor SDK中的例程测试一下。
software-dl.ti.com/…/index_FDS.html
eMMC Usage:
software-dl.ti.com/…/Device_Drivers.html