中级会员
- 积分
- 345
- 金钱
- 345
- 注册时间
- 2016-12-5
- 在线时间
- 57 小时
|
20金钱
本帖最后由 dai410257573 于 2022-9-7 18:31 编辑
vitis2019版本,运行的是裸机程序。硬件信息中加载了QFLASH \ ETH0 \ SD1(emmc) \DDR3
BSP包中,添加了LWIP 和 xilff(fatfs)文件系统
程序执行逻辑 初始化运行lwip,运行timer,4S后挂载EMMC,然后在运行while(1);这样程序就已经执行起来了。
问题描述:在线下载,通过JTAG启动,EMMC能挂载成功,能够对EMMC读写操作。设置的EMMC的盘符是"0:/"
固化到QFLASH后,上电启动,EMMC不能成功挂载,程序也不在运行。经过检查,
在
f_mount()-> find_volume()->disk_initialize()->XSdPs_CfgInitialize()->XSdPs_Change_ClkFreq()里面,有一个while循环
具体寄存器的定义如下
程序运行在这了,导致不再往下执行,不知道为啥没时钟
根据上述的情况,我把硬件信息中的emmc换成了SD卡,同样的程序,因为SD卡和EMMC的驱动程序是一样的,所以没有跟改代码,这样,挂载SD卡,也是可以运行的,能够正常的对SD卡进行读写。
求大神指点
|
最佳答案
查看完整内容[请看2#楼]
我把XSA文件拿出来,重新建了一个工程,把之前的C/H文件全部复制过来,这样子就OK了。。。不知道是哪个配置的问题。
|