计算机应用 | 古代文学 | 市场营销 | 生命科学 | 交通物流 | 财务管理 | 历史学 | 毕业 | 哲学 | 政治 | 财税 | 经济 | 金融 | 审计 | 法学 | 护理学 | 国际经济与贸易
计算机软件 | 新闻传播 | 电子商务 | 土木工程 | 临床医学 | 旅游管理 | 建筑学 | 文学 | 化学 | 数学 | 物理 | 地理 | 理工 | 生命 | 文化 | 企业管理 | 电子信息工程
计算机网络 | 语言文学 | 信息安全 | 工程力学 | 工商管理 | 经济管理 | 计算机 | 机电 | 材料 | 医学 | 药学 | 会计 | 硕士 | 法律 | MBA
现当代文学 | 英美文学 | 通讯工程 | 网络工程 | 行政管理 | 公共管理 | 自动化 | 艺术 | 音乐 | 舞蹈 | 美术 | 本科 | 教育 | 英语 |

Bootrom功能改进经验谈(2)

2016-11-23 01:00
导读:再次,在文件bootConfig.cr Bootrom操作接口函数bootCmdLoop()中增加新命令“u”(update的编写)。 switch(*(pLine )){ …… case 'u'; /*更新Bootrom*/ …… /*下载更新代码并

再次,在文件bootConfig.cr Bootrom操作接口函数bootCmdLoop()中增加新命令“u”(update的编写)。

switch(*(pLine )){

……

case 'u'; /*更新Bootrom*/

…… /*下载更新代码并更新*/

break;

……

}

“u”命令的实现流程如图3。除了flashUpdate()之外,其它函数都由VxWorks本身提供。如果更新挫败,则改变JP设置,从备份Bootrom启动,再次更新Bootrom或运行应用软件。

2 增加重启功能

VxWorks的Bootrom用户命令缺少重启功能,给调试和实际应用带来诸多不便。与Bootrom在线更新方法相同,增加这项功能其实并不难,只要在函数bootCmdLoop()中增加新命令“r”(reset的缩写),在命令中调用系统重启函数sysReboot()即可。SysReboot()由设计师根据系统的不同自行编写。

Switch(*(pLine )){

……

case 'r'; /*重启系统*/

sysReboot();

break;

……

}

举一反三,还可以根据需要在Bootrom中增加许多自己的命令

上一篇:C8051F与80C51系列单片机的不同初始化 下一篇:没有了