通过bin文件形式实现EBOOT的读取、LOGO

出处:互联网    发布于:2011-09-04 16:17:39

  BOOTLOADER的主要作用是将操作系统运行时映像加载到内存,并跳转到OS的启动程序处。它的这一作用跟前一篇介绍的NBOOT的作用完全一致。BOOTLOADER获取运行时映像(一般对应的文件名为NK)一般有两种方法。它可以通过有线连接的方式象网络(Ethernet)﹑USB或串口从外部NK。它可以从本地的存储器(Flash﹑Hard)中加载NK。同城通过Ethernet操作系统映像故将其称为EBOOT。在开发的过程中使用EBOOT,可以提高开发率。通过使用EBOOT,你可以很快的NK到目标设备中。一般的WINCE系统都是在EBOOT阶段初始化LCD,所以要想显示自己的LOGO就需要在EBOOT阶段将LOGO内容显示出来,读取LOGO的方式可以和从存储器中读取NK一样而利用Flash编程工具或者通过JTAG则很慢。在一些产品终发布时,EBOOT是可以去掉的,但也有一些则必须包括BOOTLOADER像X86平台就是如此。  ﹑

  在EBOOT阶段LOGO保存到FLASH中可以采用bin文件的方式,bin文件中的内容可以参考eboot.bin和nk.bin。

  根据\WINCE500\PUBLIC\COMMON\OAK\DRIVERS\ETHDBG\BLCOMMON下blcommon.c文件中各函数分析eboot.bin文件的结构:

  Eboot.bin的前7个字节("B000FF\x0A")用来判断是否为WINCE的bin文件,接下边分别是4字节映像的起始地址dwImageStart、4字节映像大小dwImageLength,接着分别是4字节接收地址dwRecAddr、4字节接收长度dwRecLen、4字节接收检验和dwRecChk,接下来是eboot.nb0压缩后的数据,即eboot运行时的数据,查看eboot.bin文件dwRecLen值为4,即根据dwRecChk后边的4字节数据得到dwRecChk,VerifyChecksum()函数是将这4字节数据相加得到dwRecChk。

  Offset          0   1   2   3   4   5   6   7    8   9   A   B   C   D   E   F

  00000000   42 30 30 30 46 46 0A 00  80 03 80 88 20 07 00 00  

  00000010   80 03 80 04 00 00 00 E2  01 00 00 9B 5C 01 EA 40  

  00000020   80 03 80 08 00 00 00 F1  02 00 00 45 43 45 43 F0  

  00000030   67 0A 80 48 80 03 80 04  00 00 00 DD 01 00 00 F0  

  9B 5C 01 EA 正好是我的eboot.nb0的起始4个字节。

 

   所以只要将图片的24位数据再加上前边的结构就可以生成一个bin文件,便可以通过USB或者Ethernet并被eboot正确识别并处理。



  

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

OEM清单文件: OEM清单文件
*公司名:
*联系人:
*手机号码:
QQ:
有效期:

扫码下载APP,
一键连接广大的电子世界。

在线人工客服

买家服务:
卖家服务:
技术客服:

0571-85317607

网站技术支持

13606545031

客服在线时间周一至周五
9:00-17:30

关注官方微信号,
第一时间获取资讯。

建议反馈

联系人:

联系方式:

按住滑块,拖拽到最右边
>>
感谢您向阿库提出的宝贵意见,您的参与是维库提升服务的动力!意见一经采纳,将有感恩红包奉上哦!