小弟最近在学VXWORKS,由于调试TRUEFFS一直有问题,所以就想能不能有办法不用从网络上或则TRUEFFS上下载VXWORKS和APP,直接把BOOTROM,VXWORKS,APP三个合在一起(当然有TRUEFFS更好,能实现VXWORKS和APP程序动态更新),经过几天的实验,终于OK了,现把过程贴出来,请大家指点。
(1)修改BSP,准备一个适合自己板子的BSP程序(在makefile文件中MACH_EXTRA加上附加的驱动目标文件如MACH_EXTRA = motFecEnd.obj sysTffs.o这样才能把他们加到BOOTROM中)。
(2)建立一个bootable工程,选择BSP驱动(改过的),工程建好了。
(3)加入应用程序,最后修改 usrAppInit.c 中的usrAppInit加入自己的主过程如:
void usrAppInit (void)
{
#ifdef USER_APPL_INIT
USER_APPL_INIT; /* for backwards compatibility */
#endif
/* add application specific code here */
progStar();
}
(4)对VXWORKS组件进行适当的增减,做到满足需要,又不奢侈。
(5)现在就来设置bootrom+vxworks+app的下载包的创建,在workspase窗口中选择build 栏,可以看到我们建立的工程名,它下面还有default,default_rom,default_romresident,default_romcompress几种类型,这是选择VXWORKS的文件类型(压缩,不压缩)以及在那里执行(ROM,RAM,ROM-RAM),根据本身的情况(空间和性能比)选择一种,把他设置为active build,接着双击它,会弹出一个对话框,选择rule页,选择一种文件格式,比如:vxWorks_rom.hex,然后,重新编译工程,在工程目录下会生成一个目录(根据设置的不同,不一样)default_rom,里面生成一个文件vxWorks_rom.hex,他就是bootrom+vxworks+app三者合一的文件,把他写到FLASH中,系统就直接启动bootrom,vxworks,app无须用FTP或则TRUEFFS下载image。而且,APP应用程序线程也会自动执行。
以上是我个人在学习中的一点结果,错误之处请大家指出。
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |