AM1808 DDR的起始地址为0xC000 0000
软件强制从这个地址从新加载,程序就死掉了,如何解决
需要软件进行程序复位操作
Shine:
请问您用的是什么复位操作?看门狗复位?重新加载是代码没有加载进来还是代码加载进来后运行的时候死掉?
yiguang ge:
回复 Shine:
直接进行程序跳转,必须要使用看门狗复位吗?
Tony Tang:
回复 yiguang ge:
yiguang ge直接进行程序跳转
具体的做法代码是如何实现的?
yiguang ge:
回复 Tony Tang:
直接 ((void(*)(void))0xC0000000)(); 从0xC0000000地址进行运行
Tony Tang:
回复 yiguang ge:
那么你的程序是如何放到0xC0000000的?这里是否是工程的入口地址?
yiguang ge:
回复 Tony Tang:
程序从UBL启动后的IPL引导部分是在0xC0000000地址开始的位置
AP部分程序在0xC0100000地址的位置
Tony Tang:
回复 yiguang ge:
如果你能确定放在0xC0000 0000的程序没有问题,那么就是DDR的配置有问题。
DDR能稳定的正确读写吗?