各位大神:
我有个关于UBL启动自己裸机程序的困扰.请各位大神帮忙.我自己做的板子,CPU是OMAPL138,自己先做了个简单的测试程序,LED灯闪烁(代码运行在DDR2里).我先没有使用UBL.只是将这个测试程序用AISGEN封装了下,再用NANDWriter下载到NAND,然后选择Nand启动,上电后,没有任何异常,LED灯正常闪烁.UART2打印进入程序如下:
.但是我现在需要加UBL启动自己的裸机程序问题就来了.我首先使用的是官方的UBL,UBL的.out的程序由AISGEN封装,由于在AISGEN做了所需要的所有初始化(包括NAND,DDR2,UART,GPIO等等),我屏蔽了UBL源程序的DEVICE_init()函数,只保留了UART2的初始化程序,DEVICE_NANDInit程序.并且在此处增加了测试DDR2读写的代码,即写入128个数,再读出来,不相等就打印出来并且whle(1);卡在那里.然后我把这个封装好的UBL.BIN用NANDWriter下载到了目标板上.再把那个测试程序的也用NANDWriter下载到了目标板上.选择Nand启动,上电后打印如下:
这个测试程序的入口也是正确的地址.与UBL打印的地址也是一样的,为什么没有启动呢?请各位大神指点迷津啊,小弟不胜感激啊!