加载中,请稍候...
|
|
打通VxWorks调试环境_Step_by_Step
关键词:
打通VxWorks调试环境,Step,by,Step
|
|
简介:/* Generator: eWebEditor */p.MsoNormal, li.MsoNormal, div.MsoNormal {margin:0cm;margin-bottom:.0001pt;text-align:justify;text-justify:inter-ideograph;font-size:10.5pt;font-family:"Times New Roman";}div.Section1 {page:Section1;}/* Generator: eWebEditor */p.MsoNormal, li.MsoNormal, div.MsoNormal {margin:0cm;margin-bottom:.0001pt;text-align:justify;text-justify:inter-ideograph;font-size:10.5pt;font-f... |
品 牌
|
葩星
|
|
产 地
|
中国
|
型 号
|
PXF0265
|
折 扣
|
其他电询
|
|
咨询专家:
|
产品说明:
打通VxWorks调试环境 Step by Step
1 引言 1.1 编写目的 概要说明如何建立使用Tornado开发、调试VxWorks的环境(X86版本)。 1.2 背景 1.3 定义 HOST:主机,运行Tornado集成环境,FTP Server,Target Server,以及编辑、build 工程、下载目标文件的各种软件工具; TARGET:目标机,HOST产生的vxWorks映像运行的位置,对于X86版本来说也是一台PC ; TORNADO:C:Tornado,安装Tornado的路径; BSPNAME:C:Tornado argetconfigpc486,BSP的路径,本例中我们选择pc486; PROJECT:C:TornadoprojProject2,我们自己创建的工程的路径; BIN:C:Tornadohostx86-win32in,Tornado的可执行程序的路径; HOME:C:Tornadohostx86-win32in,FTP用户的根目录。 1.4 参考资料 Tornado User’s Guide (Windows Version), 2.0, Edition 1 VxWorks Programmer’s Guide, 5.4, Edition 1 2 总体描述 2.1 硬件环境 HOST与TARGET通过以太网互连,并且位于同一网段;同时,串口通过直连电缆(NULL Modem Cable)连接。目标机配置有软盘驱动器,网卡为3com 3c905B. 2.2 软件环境 主机操作系统为Windows 2000简体中文专业版(SP3);安装Tornado Version 2.0和Win 2k补丁。 (CD No. TDK-12835-ZC-01 & TDK-13127-ZC-00, T2 LM for x86) 2.3 预览 在VxWorks调试环境中,HOST与TARGET之间连接的方式有多种,比如串口和网络;引导TARGET的方式也有多种,当然对X86平台来说最简单的是软盘引导了。在本文档中我们以网络连接、软盘引导为例,建立起调试环境。主要步骤包括: HOST上启动FTP Server, 配置BSP 创建可以引导TARGET的Boot ROM, 制作引导盘(软盘), 用软盘引导TARGET, TARGET通过网络连接从HOST下载vxWorks映像文件, TARGET运行vxWorks, HOST上启动Target Server连接Target Agent,成功建立调试环境之后,就可以在HOST生成目标模块,下载到TARGET运行,并通过Tornado集成环境进行调试。 注意:本文档中所描述的对于某些选项的选择并不一定是绝对的,只是一个行之有效的实例,仅供参考。 3 详细步骤 3.1 获得IP地址和网卡类型 首先要知道HOST和TARGET的IP地址以及TARGET安装的网卡类型。 在本例中,HOST的IP是10.10.0.150,TARGET的IP是10.10.0.151。TARGET的IP地址只要不跟其他机子冲突即可(正常情况下可以通过你们的网管得到),因为目前TARGET并没有安装任何操作系统,所以这个IP地址无从配置,只是在后面的配置文件中会用到。 网卡类型是一个十分重要的问题。为了减少麻烦,最好选择VxWorks缺省支持的网卡类型,否则可能还要添加网卡驱动程序。不知道哪里有这样一个所支持的网卡列表,但是在不同BSP的BSPNAME/config.h文件中可以看出一些眉目。比如pc486/config.h中有如下定义: #undef INCLUDE_ULTRA /* include SMC Elite16 Ultra interface */ #undef INCLUDE_ENE /* include Eagle/Novell NE2000 interface */ #undef INCLUDE_ELT /* include 3COM EtherLink III interface */ #undef INCLUDE_ESMC /* include SMC 91c9x Ethernet interface */ #define INCLUDE_FEI /* include Intel Ether Express PRO100B PCI */ #define INCLUDE_SLIP /* include serial line interface */ #define SLIP_TTY 1 /* serial line IP channel COM2 */ #undef INCLUDE_ELC /* include SMC Elite16 interface */ #undef INCLUDE_EEX /* include INTEL EtherExpress interface */ #undef INCLUDE_EEX32 /* include INTEL EtherExpress flash 32 */ #undef INCLUDE_EX /* include Excelan Ethernet interface */ #undef INCLUDE_ENP /* include CMC Ethernet interface*/ #undef INCLUDE_SM_NET /* include backplane net interface */ #undef INCLUDE_SM_SEQ_ADDR /* shared memory network auto address setup */ #undef INCLUDE_EL_3C90X_END /* 3com fast etherLink XL PCI */ #undef INCLUDE_LN_97X_END /* AMD 79C972 END DRIVER */ 从注释中可以看出,NE2000、3COM 3C509、3COM 3C90X、Intel EtherExpress PRO100B等网卡是VxWorks所支持的,同时也是比较常见的,可以说是初次配置VxWorks的比较好的选择。 本例中我们使用了一块3COM 3C905B网卡(3com Fast EtherLink XL PCI)。事实证明能够很好地支持。 其实也不是所有的3COM网卡都支持,有一篇网友的帖子显示,3C905-TX的网卡就给他带来了很大的麻烦,换了3C905-BT才好,好像3C905-FX也是可以的。 3.2 修改hosts文件 在文件c:winntsystem32driversetchosts 中添加如下行: 10.10.0.150 xmdong 10.10.0.151 target 3.3 FTP服务器 Tornado自带了一个FTP服务器软件WFTPD。当HOST是WIN32平台时,TARGET通过网络连接,只能用FTP协议从HOST下载vxWorks映像文件。 打开FTP Server,选中Security > Users/Rights…菜单,在添加新用户对话框中: User Name: target, Password: target, Home Directory: 这里我设置为BIN,你也可以设置为其他路径,记住你的设置。后面DEFAULT_BOOT_LINE中定义的vxWorks文件路径,就是以HOME为根目录的相对路径。建议将vxWorks文件复制到HOME目录下面,这样vxWorks文件的路径最短。 另外,你可以通过Logging > Log Options…菜单,选中那些可选项目,来观察FTP过程中的问题。 配置好之后,启动FTP Server。 3.4 配置BSP 配置BSP的工作是通过修改config.h文件完成的。这一步比较关键。 打开BSPNAME/config.h文件。 在文件的108行左右,会有对不同CPU的DEFAULT_BOOT_LINE定义语句,它描述了引导参数,定义正确之后所制作的Boot ROM软盘才能正常引导TARGET机子。 根据我们的配置,这里应该修改为: #elif (CPU == I80486) #define DEFAULT_BOOT_LINE "elPci(0,0)xmdong:vxWorks h=10.10.0.150 e=10.10.0.151 u=target pw=target tn=target" 参数 参数值 描述 Boot device elPci 3COM 3C905B网卡 Processor number (0,0) Host name xmdong 主机名 File name vxWorks VxWorks Image 文件路径名 Host inet (h) 10.10.0.150 主机网络接口地址 Inet on Ethernet (e) 10.10.0.151 目标机网络接口地址 User (u) target FTP用户名 Password (pw) target FTP密码 Target name (tn) target 目标机名称 有关引导参数的详细描述,请参考Tornado User’s Guide之 2.5.4描述 of Boot Parameters。 BSP中缺省包含了对Intel Ether Express PRO100 网卡的支持,而我们用的是3C905B网卡,因此要去掉原来的定义,添加对我们的网卡的支持: #undef INCLUDE_FEI #define INCLUDE_EL_3C90X_END /* for our 3COM 3C905B NIC */ 3.5 新工程 然后在Tornado中新建一个工程。选择“Create a bootable VxWorks image”,OK。 Step 1 Name: Project2 Location: C:TornadoprojProject2 (以后我们提到PROJECT就是指这个路径) Workspace: Add to current Workspace Step 2 Would you like to base your project on: A BSP, pc486 (也就是我们说的BSPNAME ) Step 3 Finish 3.6 Build工程 在Tornado环境的Workspace窗口中,选中前面新建的工程PROJECT,从鼠标右键弹出菜单中执行ReBuild All (VxWorks)。 Build Output窗口显示了build的过程。成功之后,生成PROJECT/default/vxWorks映像文件。将文件PROJECT/default/vxWorks复制到BIN目录。因为在前面配置FTP服务器的过程中,我们将BIN目录配置为FTP用户target的HOME目录。如果你将PROJECT/default目录配置为HOME目录,就可以省去这个复制操作。 3.7 Boot ROM 在Tornado菜单中选择Build > Build Boot ROM… 在弹出对话框中: Select a BSP: pc486 Select an Image to Build: bootrom_uncmp OK. Build Output窗口显示了build的过程。不出意外的话,BSPNAME目录下面会生成bootrom _uncmp文件。 这里选择bootrom也是可以的,其他的没有试过。 3.8 制作引导盘 将上一步生成的文件BSPNAME/bootrom_uncmp复制到BIN目录。 开始 > 运行 > cmd,打开一个命令窗口。 进入BIN目录: C:>cd tornadohostx86-win32in 执行mkboot程序: C:…>mkboot A: bootrom_uncmp 当然别忘了插入一张软盘到HOST的软驱中。你应该看到 VxSys (c) Wind River Systems 1993, Version 1.2 Boot sector installed OK. Copying bootrom_uncmp to a:bootrom.sys... 3.9 引导TARGET 将我们刚才制作的Boot ROM引导软盘插入TARGET的软驱,启动TARGET,开始引导过程。 如果目标机有显示器,应该看到 VxLd1.2 ……………… 同时,TARGET在读取软盘内容,然后兰屏,出现 VxWorks System Boot Copyright 1984-1998 Wind River Systems, Inc. CPU: PC 486 Version: 5.4 BSP version: 1.2/0 Creation date: Dec 30 2002, 16:38:32 Press any key to stop auto-boot... 7 6 5 [VxWorks Boot]: 在 [VxWorks Boot]: 提示符下,有几个常用的命令: 命令 描述 h或者? 帮助,显示可用命令列表 @ 加载并执行文件,相当于L和G 0x108000 (config.h中配置的开始执行的缺省值) P 显示当前引导参数值 C 修改引导参数 L 根据当前引导参数加载文件,但是不执行 G addr 从十六进制地址addr开始执行 如果配置了串口控制台,VxLd 1.2 …… 之后的内容都会在超级终端而不是显示器上面显示。超级终端观察引导过程: 敲入”@”命令下载并运行映像,结果为: [VxWorks Boot]: @ boot device : elPci unit number : 0 processor number : 0 host name : xmdong file name : vxWorks inet on ethernet (e) : 10.10.0.151 host inet (h) : 10.10.0.150 user (u) : target ftp password (pw) : target flags (f) : 0x0 target name (tn) : target Attached TCP/IP interface to elPci0. Attaching network interface lo0... done. Loading... 511328 + 9984 + 32480 Starting at 0x108000... Attached TCP/IP interface to elPci unit 0 Attaching interface lo0...done VxWorks Copyright 1984-1998 Wind River Systems, Inc. CPU: PC 486 VxWorks: 5.4 BSP version: 1.2/0 Creation date: Dec 31 2002 WDB: Ready. 在HOST FTP Server中可以看到通过网络连接下载映像文件的过程(根据Log Options的不同,窗口中显示的信息可能有些不同)。 3.10 Target Sever 选中Tornado菜单 Tools > Target Server > Configure…,出现Configure Target Servers对话框: Target Server: Configuration 1 Target Server Properties: Back End: wdbrpc Core File and Symbols: File “C:Tornadohostx86-win32invxWorks” 其他属性应该不需要改动。 Target Name/Target Address: target Command Line: tgtsvr.exe target -V -B wdbrpc -c C:Tornadohostx86-win32invxWorks OK. 然后再打开Configure Target Severs对话框, 在Target Sever下选中Configuration 1, Launch. 出现target@xmdong Log Console窗口: 3.11 Shell 在Tornado工具条的下拉列表框中选中target@xmdong,然后用”->i”形状的按钮启动一个shell。 4 串口控制台 4.1 什么是串口控制台 串口控制台(Serial Console)是指在Host/Target环境中,通过串口终(Terminal)来做TARGET的标准输入/输出控制台。这样,我们可以完全通过运行于HOST的终端软件来操作TARGET。串口控制台的好处是显而易见的:它可以精简TARGET的硬件,不再需要PC的显示卡、显示器、键盘等设备(本地控制台)。另外,通过终端软件,我们可以更容易地回滚(roll back)查看“滚上去”了的输出信息。 4.2 配置方法 在BSPNAME/config.h 中有这样几句(470行附近): #if TRUE #define INCLUDE_PC_CONSOLE /* KBD and VGA are included */ #endif /* TRUE/FALSE */ 只需要将TRUE改为FALSE即可,也就是说,去掉INCLUDE_PC_CONSOLE的定义。因此,不改动上面3句,而是在后面加上这么一句也是同样的效果: #undef INCLUDE_PC_CONSOLE 除此之外不需要改动什么,但是要注意确认一下BSP中有关串口的设置。下面列出的是config.h和configAll.h中定义的缺省值,如果你使用不同的串口设置,则要做相应的修改。 #define NUM_TTY 2 /* number of tty channels */ #define CONSOLE_TTY 0 /* console channel */ #define CONSOLE_BAUD_RATE 9600 /* console baud rate */ CONSOLE_TTY的值为0或者1分别表示TARGET使用COM1或COM2与HOST连接;CONSOLE_BAUD_R ATE设定了串口的波特率,常用9600bps. 4.3 终端软件 Windows主机常用的终端软件是“超级终端”,注意配置与目标机串口配置相符,也就是说,波特率应该是9600bps, 其他配置一般为8位数据位,1位停止位,无校验位(通常表示为8-N-1)。 另外,“ASCII码设置”对话框一般采用如下设置。 在这种配置下,目标机引导过程中我们可以判断串口是否已经连通:在超级终端串口中敲入一串回车,如果光标有换行,说明串口已经通了;如果光标纹丝不动,则串口
参数资料:
|
打通VxWorks调试环境_Step_by_Step打通VxWorks调试环境,Step,by,Step
|
价格列表:
打通VxWorks调试环境_Step_by_Step打通VxWorks调试环境,Step,by,Step
|
相关产品:
打通VxWorks调试环境_Step_by_Step打通VxWorks调试环境,Step,by,Step
|
|
咨询历史:
|
|