5480|12

90

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

关于烧写nk.nb0到nandflash后启动失败的问题 [复制链接]

用PB将这个工程编译的nk.bin烧到板子上能正常启动,然后我就在config.bib里添加这三行:
ROMSTART=80067000
ROMWIDTH=32
ROMSIZE=00b00000

编译后生成的nk.nb0有12M(nk.bin是10M),用SAMBA烧到nandflash后启动系统,老卡死在这一句:
Launching windows CE image by jumping at address 0x20068000

原先正常启动nk.bin时EBOOT的相关配置如下:
Physical Start Address : (0x80067000)
Starting ip : (0x80068000)
Total ROM size : (0xa028a4)

我烧完nk.nb0后更改为:
Physical Start Address : (0x80067000)
Starting ip : (0x80068000)
Total ROM size : (0xb00000)


感觉都没问题了,但老是不成功,试过经nk.nb0改到16M也没用,大家指点一下~~

完整的config.bib如下:
MEMORY

;   Name     Start     Size      Type
;   -------  --------  --------  ----
    BLDR     80000000  00058000  RESERVED
    DRVGLOB  80058000  00001000  RESERVED
    EMACBUF  80059000  0000E000  RESERVED
    NK       80067000  01000000  RAMIMAGE
    RAM      81067000  02EA7000  RAM      ; 47.56 MB
       
CONFIG

    AUTOSIZE=ON
    KERNELFIXUPS=ON


; @CESYSGEN IF !NK_NKNOCOMP
   COMPRESSION=ON
; @CESYSGEN ENDIF !NK_NKNOCOMP
; @CESYSGEN IF NK_NKNOCOMP
   COMPRESSION=OFF
; @CESYSGEN ENDIF NK_NKNOCOMP

IF IMGPROFILER   
    PROFILE=ON
ELSE
    PROFILE=OFF
ENDIF


; ROMFLAGS is a bitmask of options for the kernel
;   ROMFLAGS    0x0001      Disallow Paging
;   ROMFLAGS    0x0002      Not all KMode
;   ROMFLAGS    0x0010      Trust Module only

IF IMGTRUSTROMONLY
    IF IMGNOTALLKMODE
       ROMFLAGS=12
    ELSE
       ROMFLAGS=10
    ENDIF
ELSE
    IF IMGNOTALLKMODE
       ROMFLAGS=02
    ELSE
       ROMFLAGS=00
    ENDIF
ENDIF

FSRAMPERCENT=0x40404040

   
ROMSTART=80067000
ROMWIDTH=32
ROMSIZE=00b00000

最新回复

首先要保证你跳转到的那个位置的数据与NB0的数据一致才行, 前边几个字节:B0 C2 00 EA 00 00 00 00  之类的数据首先要对。           详情 回复 发表于 2009-11-25 13:53
点赞 关注

回复
举报

74

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
你可以在跳转之前读取一下要跳转的地址数据,打印几个字节,看看与NB0的是否一致,最好是看看NB0都哪里有数据,多读取相应地址数据看看。
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
恩,谢谢楼上的,我打印那个地址的值看看
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

4
 
额,我打印了0x20068000开始的50个地址数据,都是0x2048,估计是下载的地址不对
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

5
 
查找原因并用此方式继续检查是否正确吧。
 
 
 

回复

83

帖子

0

TA的资源

一粒金砂(初级)

6
 
会不会是在上NK的时候 物理地址错误 ?
 
 
 

回复

63

帖子

0

TA的资源

禁止发言

7
 
我打印了0x20068000开始的50个地址数据,都是0x2048???
NK的问题。
没有遇到这样的问题,关注中!!!
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

8
 
没有仔细看你的bib,但是有一个地方好像有问题:
ROMSIZE=00b00000和NK      80067000  01000000  RAMIMAGE 两者大小没有对应上
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

9
 
确认下你下载的是.bin还是.nb0呀??
 
 
 

回复

61

帖子

0

TA的资源

一粒金砂(初级)

10
 
引用 7 楼 guopeixin 的回复:
没有仔细看你的bib,但是有一个地方好像有问题:
ROMSIZE=00b00000和NK? ? ? 80067000? 01000000? RAMIMAGE 两者大小没有对应上


我试过ROMSIZE=1000000也是一样的
 
 
 

回复

62

帖子

0

TA的资源

一粒金砂(初级)

11
 
引用 8 楼 xuefeng_baggio 的回复:
确认下你下载的是.bin还是.nb0呀??


谢谢,我下的是.nb0的
 
 
 

回复

84

帖子

0

TA的资源

一粒金砂(初级)

12
 
引用 5 楼 nx427 的回复:
会不会是在上NK的时候 物理地址错误 ?


我也觉得,所以正好学习一下Bootloader
 
 
 

回复

85

帖子

0

TA的资源

一粒金砂(初级)

13
 
首先要保证你跳转到的那个位置的数据与NB0的数据一致才行,
前边几个字节:B0 C2 00 EA 00 00 00 00  之类的数据首先要对。         
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表