小弟最近在学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应用程序线程也会自动执行。
以上是我个人在学习中的一点结果,错误之处请大家指出。
有奖活动 | |
---|---|
“我踩过的那些坑”主题活动——第002期 | |
【EEPW电子工程师创研计划】技术变现通道已开启~ | |
发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】 | |
【EEPW在线】E起听工程师的声音! | |
高校联络员开始招募啦!有惊喜!! | |
【工程师专属福利】每天30秒,积分轻松拿!EEPW宠粉打卡计划启动! | |
送您一块开发板,2025年“我要开发板活动”又开始了! | |
打赏了!打赏了!打赏了! |