1、概述
VxWorks操作系统的集成环境叫Tornado。Tornado集成环境提供了高效明晰的图形化的实时应用开发平台,它包括一套完整的面向嵌入式系统的开发和调测工具。
它主要由以下几部分组成:
1.1 VxWorks高性能的实时操作系统;
1.2 应用编译工具;
1.3 交互开发工具;
2、Tornado集成环境的各组件功能
2.1 Tornado开发环境
Tornado是集成了编辑器、编译器、调试器于一体的高度集成的窗口环境,同样也可以从Shell窗口下发命令和浏览。
2.2 WindConfig:Tornado系统配置
通过WindConfig可选择需要的组件组成VxWorks实时环境,并生成板级支持包BSP的配置。通过修改config.h可以实现WindConfig的所有功能,并且,可以实现WindConfig不能实现的功能。
2.3 WindSh:Tornado外壳
WindSh是一个驻留在主机内的C语言解释器,通过它可运行下载到目标机上的所有函数,包括VxWorks和应用函数。Tornado外壳还能解释常规的工具命令语言TCL。WindSh不仅可以解释几乎所有的C语言表达式,而且可以实现所有的调试功能。
它主要有以下调试功能:
下载软件模块;删除软件模块;产生任务;删除任务;设置断点;删除断点;运行、单步、继续执行程序; 查看内存、寄存器、变量;修改内存、寄存器、变量;查看任务列表、内存使用情况、CPU利用率;查看特定的对象(任务、信号量、消息队列、内存分区、类);复位目标机。
2.4 浏览器
Tornado浏览器可查看内存分配情况、任务列表、CPU利用率、系统目标(如任务、消息队列、信号量等)。这些信息可周期性地进行更新。
2.5 CrossWind:源码级调试器
源码级调试器CrossWind提供了图形和命令行方式来调试,可进行指定任务或系统级断点设置、单步执行、异常处理。有些功能如修改内存、寄存器、变量的值通过菜单操作是无法实现的,需要在WindSh中执行原语操作实现。
2.6 驻留主机的目标服务器
目标服务器管理主机与目标机的通信,所有与目标机的交互工具都通过目标服务器,它也管理主机上的目标机符号表,提供目标模块的加载和卸载。
2.7 Tornado注册器
所有目标服务器注册其提供的服务在注册器中。注册器映射用户定义的目标名到目标服务器网络地址。
2.8 VxWorks
Tornado集成了VxWorks操作系统。
2.9 目标代理程序
目标代理程序是一个驻留在目标机中的联系Tornado工具和目标机系统的组件。一般来说,目标代理程序往往是不可见的。
3、MPC750/MCPN750上bootrom的制作
MPC750/MCPN750上的 bootrom用于初始化MPC750/MCPN750的硬件,通过网口加载 VxWorks 的内核映象。因为MPC750/MCPN750的bootrom已经制作,如果没有特殊需要,不需重新制作bootrom。
制作MPC750/MCPN750上 bootrom的步骤:
3.1 在Tornado集成环境下,使用菜单命令Project > Make MCP750/MCPN750 > Comman Targets > clean删除以前生成的bootrom文件,使用菜单命令Project > Make MCP750/MCPN750 > Comman Targets > bootrom.hex生成bootrom文件。生成的bootrom文件在相应的BSP目录中,如MCP750为<tornado>\target\config\mcp750
3.2 使用elftobin < bootRom > mcp750.bin 生成mcp750.bin 文件
3.3 启动TFTP服务器tftpd32.exe,设置下载文件(mcp750.bin)的目录
3.4 用PPCBug启动目标系统
3.5 运行并配置超级终端。配置:9600bps波特率、8位数据位、1位停止位、无校验位、无流量控制。
3.6 在超级终端中,使用niot命令修改客户(目标机)IP地址和服务器(主机)IP地址
3.7 使用niop命令设置加载的文件名(mcp750.bin)
3.8 使用pflash 4000:FFF00 ff000100命令写FLASH B。
4、启动软盘启动目标机
- 目标机启动软盘用于启动目标机,通过网口使用Ftp协议从主机下载VxWorks映象。在X86平台上,一般使用启动软盘来启动目标机。
4.1 启动盘的制作
在实时应用系统的开发调测阶段,往往采用以PC机作为目标机来调测程序。主机PC和目标机PC之间可采取串口或是网口进行联结。由于大多数目标已配有网卡,网络联结成为最简单快速的连接方式。串口联结虽通信速率不高,也有它自己的优点,系统级任务调试(如中断服务程序ISR)需使通信方式工作在Polled 模式,网口联结就不支持,因此可以裁剪掉系统中网络部分,以使VxWorks系统更小,满足目标板的内存约束。下面分别对这两种通信方式下目标机VxWorks系统启动盘的制作作一简要介绍(以PC机为目标系统)。
4.1.1 串口通信时目标机VxWorks系统启动盘的制作步骤:
(1) 修改通用配置文件\\Tornado\target\config\pc486\config.h。在config.h文件中 加入以下宏定义:
#define INCLUDE_WDB
#define INCLUDE_WDB_TTY_TEST
#undef WDB_COMM_TYPE
#define WDB_COMM_TYPE WDB_COMM_SERIAL /*定义通信方式为串口联结*/
#define WDB_TTY_CHANNEL 1 /*通道号*/
#define WDB_TTY_BAUD 9600 /*串口速率,可设置至38400*/
#define WDB_TTY_DEV_NAME "tyCo/1"
#define CONSOLE_TTY 0
#define DEFAULT_BOOT_LINE "fd=0,0(0,0)hostname:/fd0/vxWorks \ h=主机ip e=目标机ip u=主机上的登录用户名"
(2) 在Tornado集成环境中执行菜单命令Project > Make PC486 > Common Targets > clean删除以前生成的文件,执行菜单命令Project > Make PC486 > Boot Rom Targets > bootrom_uncmp编译链接生成bootrom_uncmp ;再选择VxWorks Target,编译生成vxworks;
(3) 拷贝\\Tornado\target\config\pc486\bootrom_uncmp至\\Tornado\host\bin下
(4) 重命名文件bootrom_uncmp为bootrom;
(5) 准备一张已格式化的空盘插入软驱;
(6) 在目录\\Tornado\host\bin下执行命令 mkboot a: bootrom;
(7)拷贝\\Tornado\target\config\pc486\VxWorks至软盘;
(8) 将系统制作盘插入目标机软驱,加电启动目标机即载入VxWorkst系统。
4.1.2 网口通信时目标机VxWorks系统启动盘的制作步骤:
(1) 配置目标机网卡,设置其中断号和输入输出范围(I/O地址);
(2) 修改通用配置文件\\Tornado\target\config\pc486\config.h 。
针对不同的网卡,其名称不同,如NE2000及其兼容网卡为ENE,3COM以太网卡为ELT,Intel网卡为EEX。在config.h文件中修改相应网卡类型(如网卡为3COM网卡)的定义部分:
#define IO_ADRS_ELT 网卡I/O地址
#define INT_LVL_ELT 网卡中断号
并且修改#define DEFAULT_BOOT_LINE的定义:
#define DEFAULT_BOOT_LINE \
"elt(0,0)主机标识名:C:\\tornado\\target\\config\\pc486\\vxWorks h=主机IP \e=目标机IP u=登录用户名 pw=口令 tn=目标机名"
例如:DEFAULT_BOOT_LINE宏定义,使缺省配置符合自己的调试环境
#define DEFAULT_BOOT_LINE \
"ene(0,0)host:c:/tornado/target/config/pc486/vxWorks h=129.9.75.39 \ e=129.9.49.7 u=x86 pw=x86 tn=x86"
其中:
ene(0,0) /* 启动设备为网卡 */
host /* 主机标识,可以任意填写,不影响启动过程 */
c:\tornado\target\config\pc486\vxWorks /*需要从主机加载的映象*/
h=129.9.75.39 /* 主机的IP地址 */
e=129.9.49.7 /* 目标机的IP地址 */
u=x86 /* 用户名,主机的Ftp服务器必须有相应的同名用户 */
pw=x86 /* 密码,必须与主机的Ftp服务器相应的同名用户的密码相同*/
tn=x86 /*目标名,可以任意设置,不影响启动过程*/
(3) 主机信息的确定(可无)
主机操作系统Win95安装目录下有一文件hosts.sam,向其中加入:主机IP 主机名,目标机IP 目标机名 。
(4) 在Tornado集成环境中点取Project菜单,选取Make PC486,选择Common Target,先进行clean操作;再选择Boot Rom Target,进行bootrom_uncmp操作;再选择VxWorks Target,进行vxworks操作;
(5) 拷贝\\Tornado\target\config\pc486\bootrom_uncmp至\\Tornado\host\bin下
(6) 重命名文件bootrom_uncmp为bootrom;
(7) 准备一张已格式化的空盘插入软驱;
(8) 在目录\\Tornado\host\bin下执行命令 mkboot a: bootrom ;
(9) 启动Tornado组件FTP Server,在WFTPD窗口中选择菜单Security中的User/right ...,在其弹出窗口中选择New User...,根据提示信息输入登录用户名和口令,并且要指定下载文件vxWorks所在根目录;还必选取主菜单Logging中Log options,使Enable Logging、Gets 、Logins 、Commands 、Warnings能;
(10) 将系统制作盘插入目标机软驱,加电启动目标机即通过FTP方式从主机下载VxWorks系统。
更多内容请看PCdog.com--VoIP VOIP协议专题
