⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 00000001.htm

📁 关于embedded的文章
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<HTML><HEAD>  <TITLE>武汉白云黄鹤站∶精华区</TITLE></HEAD><BODY><CENTER><H1>武汉白云黄鹤站∶精华区</H1></CENTER>发信人:&nbsp;dot&nbsp;(爱吃萝卜和青菜),&nbsp;信区:&nbsp;Embedded&nbsp;<BR>标&nbsp;&nbsp;题:&nbsp;打通VxWorks调试环境&nbsp;Step&nbsp;by&nbsp;Step&nbsp;<BR>发信站:&nbsp;武汉白云黄鹤站&nbsp;(2002年12月31日15:18:22&nbsp;星期二),&nbsp;站内信件&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>打通VxWorks调试环境&nbsp;Step&nbsp;by&nbsp;Step&nbsp;<BR>&nbsp;<BR>dot&nbsp;&lt;<A HREF="mailto:anonymou@163.com>">anonymou@163.com></A>&nbsp;<BR>Dec&nbsp;31,&nbsp;2002&nbsp;<BR>版权所有&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;<BR>修订记录&nbsp;<BR>日期&nbsp;修订版本&nbsp;描述&nbsp;作者&nbsp;<BR>2002-12-20&nbsp;1.0&nbsp;初稿&nbsp;&nbsp;<BR>2002-12-31&nbsp;1.1&nbsp;调换了3.4和3.5两节的位置,即把配置BSP放在添加新工程之前;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;增加了4&nbsp;串口控制台的配置方法。&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;<BR>&nbsp;<BR>1&nbsp;引言&nbsp;<BR>1.1&nbsp;编写目的&nbsp;<BR>概要说明如何建立使用Tornado开发、调试VxWorks的环境(X86版本)。&nbsp;<BR>1.2&nbsp;背景&nbsp;<BR>1.3&nbsp;定义&nbsp;<BR>n&nbsp;HOST:主机,运行Tornado集成环境,FTP&nbsp;Server,Target&nbsp;Server,以及编辑、build&nbsp;<BR>工程、下载目标文件的各种软件工具;&nbsp;<BR>n&nbsp;TARGET:目标机,HOST产生的vxWorks映像运行的位置,对于X86版本来说也是一台PC&nbsp;<BR>;&nbsp;<BR>n&nbsp;TORNADO:C:\Tornado,安装Tornado的路径;&nbsp;<BR>n&nbsp;BSPNAME:C:\Tornado\target\config\pc486,BSP的路径,本例中我们选择pc486;&nbsp;<BR>n&nbsp;PROJECT:C:\Tornado\proj\Project2,我们自己创建的工程的路径;&nbsp;<BR>n&nbsp;BIN:C:\Tornado\host\x86-win32\bin,Tornado的可执行程序的路径;&nbsp;<BR>n&nbsp;HOME:C:\Tornado\host\x86-win32\bin,FTP用户的根目录。&nbsp;<BR>&nbsp;<BR>1.4&nbsp;参考资料&nbsp;<BR>n&nbsp;Tornado&nbsp;User’s&nbsp;Guide&nbsp;(Windows&nbsp;Version),&nbsp;2.0,&nbsp;Edition&nbsp;1&nbsp;<BR>n&nbsp;VxWorks&nbsp;Programmer’s&nbsp;Guide,&nbsp;5.4,&nbsp;Edition&nbsp;1&nbsp;<BR>2&nbsp;总体描述&nbsp;<BR>2.1&nbsp;硬件环境&nbsp;<BR>&nbsp;&nbsp;<BR>HOST与TARGET通过以太网互连,并且位于同一网段;同时,串口通过直连电缆(NULL&nbsp;&nbsp;<BR>Modem&nbsp;Cable)连接。目标机配置有软盘驱动器,网卡为3com&nbsp;3c905B.&nbsp;&nbsp;<BR>&nbsp;<BR>2.2&nbsp;软件环境&nbsp;<BR>主机操作系统为Windows&nbsp;2000简体中文专业版(SP3);安装Tornado&nbsp;Version&nbsp;2.0和Win&nbsp;<BR>2k补丁。&nbsp;<BR>(CD&nbsp;No.&nbsp;TDK-12835-ZC-01&nbsp;&amp;&nbsp;TDK-13127-ZC-00,&nbsp;T2&nbsp;LM&nbsp;for&nbsp;x86)&nbsp;<BR>&nbsp;<BR>2.3&nbsp;预览&nbsp;<BR>在VxWorks调试环境中,HOST与TARGET之间连接的方式有多种,比如串口和网络;引导TA&nbsp;<BR>RGET的方式也有多种,当然对X86平台来说最简单的是软盘引导了。在本文档中我们以网&nbsp;<BR>络连接、软盘引导为例,建立起调试环境。主要步骤包括:&nbsp;<BR>n&nbsp;HOST上启动FTP&nbsp;Server,&nbsp;<BR>n&nbsp;配置BSP&nbsp;<BR>n&nbsp;创建可以引导TARGET的Boot&nbsp;ROM,&nbsp;<BR>n&nbsp;制作引导盘(软盘),&nbsp;<BR>n&nbsp;用软盘引导TARGET,&nbsp;<BR>n&nbsp;TARGET通过网络连接从HOST下载vxWorks映像文件,&nbsp;<BR>n&nbsp;TARGET运行vxWorks,&nbsp;<BR>n&nbsp;HOST上启动Target&nbsp;Server连接Target&nbsp;Agent,&nbsp;<BR>成功建立调试环境之后,就可以在HOST生成目标模块,下载到TARGET运行,并通过Torna&nbsp;<BR>do集成环境进行调试。&nbsp;<BR>&nbsp;<BR>注意:本文档中所描述的对于某些选项的选择并不一定是绝对的,只是一个行之有效的&nbsp;<BR>实例,仅供参考。&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>3&nbsp;详细步骤&nbsp;<BR>3.1&nbsp;获得IP地址和网卡类型&nbsp;<BR>首先要知道HOST和TARGET的IP地址以及TARGET安装的网卡类型。&nbsp;<BR>在本例中,HOST的IP是10.10.0.150,TARGET的IP是10.10.0.151。TARGET的IP地址只要&nbsp;<BR>不跟其他机子冲突即可(正常情况下可以通过你们的网管得到),因为目前TARGET并没&nbsp;<BR>有安装任何操作系统,所以这个IP地址无从配置,只是在后面的配置文件中会用到。&nbsp;<BR>网卡类型是一个十分重要的问题。为了减少麻烦,最好选择VxWorks缺省支持的网卡类型&nbsp;<BR>,否则可能还要添加网卡驱动程序。不知道哪里有这样一个所支持的网卡列表,但是在&nbsp;<BR>不同BSP的BSPNAME/config.h文件中可以看出一些眉目。比如pc486/config.h中有如下定&nbsp;<BR>义:&nbsp;<BR>&nbsp;<BR>#undef&nbsp;INCLUDE_ULTRA&nbsp;&nbsp;/*&nbsp;include&nbsp;SMC&nbsp;Elite16&nbsp;Ultra&nbsp;interface&nbsp;*/&nbsp;<BR>#undef&nbsp;INCLUDE_ENE&nbsp;&nbsp;/*&nbsp;include&nbsp;Eagle/Novell&nbsp;NE2000&nbsp;interface&nbsp;*/&nbsp;<BR>#undef&nbsp;INCLUDE_ELT&nbsp;&nbsp;/*&nbsp;include&nbsp;3COM&nbsp;EtherLink&nbsp;III&nbsp;interface&nbsp;*/&nbsp;<BR>#undef&nbsp;INCLUDE_ESMC&nbsp;&nbsp;/*&nbsp;include&nbsp;SMC&nbsp;91c9x&nbsp;Ethernet&nbsp;interface&nbsp;*/&nbsp;<BR>#define&nbsp;INCLUDE_FEI&nbsp;&nbsp;/*&nbsp;include&nbsp;Intel&nbsp;Ether&nbsp;Express&nbsp;PRO100B&nbsp;PCI&nbsp;*/&nbsp;<BR>#define&nbsp;INCLUDE_SLIP&nbsp;&nbsp;/*&nbsp;include&nbsp;serial&nbsp;line&nbsp;interface&nbsp;*/&nbsp;<BR>#define&nbsp;SLIP_TTY&nbsp;1&nbsp;/*&nbsp;serial&nbsp;line&nbsp;IP&nbsp;channel&nbsp;COM2&nbsp;*/&nbsp;<BR>#undef&nbsp;INCLUDE_ELC&nbsp;&nbsp;/*&nbsp;include&nbsp;SMC&nbsp;Elite16&nbsp;interface&nbsp;*/&nbsp;<BR>#undef&nbsp;INCLUDE_EEX&nbsp;&nbsp;/*&nbsp;include&nbsp;INTEL&nbsp;EtherExpress&nbsp;interface&nbsp;*/&nbsp;<BR>#undef&nbsp;INCLUDE_EEX32&nbsp;&nbsp;/*&nbsp;include&nbsp;INTEL&nbsp;EtherExpress&nbsp;flash&nbsp;32&nbsp;*/&nbsp;<BR>#undef&nbsp;INCLUDE_EX&nbsp;&nbsp;/*&nbsp;include&nbsp;Excelan&nbsp;Ethernet&nbsp;interface&nbsp;*/&nbsp;<BR>#undef&nbsp;INCLUDE_ENP&nbsp;&nbsp;/*&nbsp;include&nbsp;CMC&nbsp;Ethernet&nbsp;interface*/&nbsp;<BR>#undef&nbsp;INCLUDE_SM_NET&nbsp;&nbsp;/*&nbsp;include&nbsp;backplane&nbsp;net&nbsp;interface&nbsp;*/&nbsp;<BR>#undef&nbsp;INCLUDE_SM_SEQ_ADDR&nbsp;/*&nbsp;shared&nbsp;memory&nbsp;network&nbsp;auto&nbsp;address&nbsp;setup&nbsp;*/&nbsp;<BR>#undef&nbsp;&nbsp;INCLUDE_EL_3C90X_END&nbsp;&nbsp;&nbsp;&nbsp;/*&nbsp;3com&nbsp;fast&nbsp;etherLink&nbsp;XL&nbsp;PCI&nbsp;*/&nbsp;<BR>#undef&nbsp;&nbsp;INCLUDE_LN_97X_END&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/*&nbsp;AMD&nbsp;79C972&nbsp;END&nbsp;DRIVER&nbsp;*/&nbsp;<BR>&nbsp;<BR>从注释中可以看出,NE2000、3COM&nbsp;3C509、3COM&nbsp;3C90X、Intel&nbsp;EtherExpress&nbsp;PRO100B&nbsp;<BR>等网卡是VxWorks所支持的,同时也是比较常见的,可以说是初次配置VxWorks的比较好&nbsp;<BR>的选择。&nbsp;<BR>本例中我们使用了一块3COM&nbsp;3C905B网卡(3com&nbsp;Fast&nbsp;EtherLink&nbsp;XL&nbsp;PCI)。事实证明能&nbsp;<BR>够很好地支持。&nbsp;<BR>其实也不是所有的3COM网卡都支持,有一篇网友的帖子显示,3C905-TX的网卡就给他带&nbsp;<BR>来了很大的麻烦,换了3C905-BT才好,好像3C905-FX也是可以的。&nbsp;<BR>&nbsp;<BR>3.2&nbsp;修改hosts文件&nbsp;<BR>在文件&nbsp;<BR>c:\winnt\system32\drivers\etc\hosts&nbsp;<BR>中添加如下行:&nbsp;<BR>10.10.0.150&nbsp;xmdong&nbsp;<BR>10.10.0.151&nbsp;target&nbsp;<BR>&nbsp;<BR>3.3&nbsp;FTP服务器&nbsp;<BR>Tornado自带了一个FTP服务器软件WFTPD。当HOST是WIN32平台时,TARGET通过网络连接&nbsp;<BR>只能用FTP协议从HOST下载vxWorks映像文件。&nbsp;<BR>打开FTP&nbsp;Server。&nbsp;<BR>选中Security&nbsp;&gt;&nbsp;Users/Rights…菜单,在添加新用户对话框中:&nbsp;<BR>User&nbsp;Name:&nbsp;target,&nbsp;<BR>Password:&nbsp;target,&nbsp;<BR>Home&nbsp;Directory:&nbsp;这里我设置为BIN,你也可以设置为其他路径,记住你的设置。后面DE&nbsp;<BR>FAULT_BOOT_LINE中定义的vxWorks文件路径,就是以HOME为根目录的相对路径。建议将v&nbsp;<BR>xWorks文件复制到HOME目录下面,这样vxWorks文件的路径最短。&nbsp;<BR>&nbsp;<BR>另外,你可以通过Logging&nbsp;&gt;&nbsp;Log&nbsp;Options…菜单,选中那些可选项目,来观察FTP过程&nbsp;<BR>中的问题。&nbsp;<BR>配置好之后,启动FTP&nbsp;Server。&nbsp;<BR>&nbsp;<BR>3.4&nbsp;配置BSP&nbsp;<BR>配置BSP的工作是通过修改config.h文件完成的。这一步比较关键。&nbsp;<BR>打开BSPNAME/config.h文件。&nbsp;<BR>在文件的108行左右,会有对不同CPU的DEFAULT_BOOT_LINE定义语句,它描述了引导参数&nbsp;<BR>,定义正确之后所制作的Boot&nbsp;ROM软盘才能正常引导TARGET机子。&nbsp;<BR>根据我们的配置,这里应该修改为:&nbsp;<BR>#elif&nbsp;(CPU&nbsp;==&nbsp;I80486)&nbsp;<BR>#define&nbsp;DEFAULT_BOOT_LINE&nbsp;\&nbsp;<BR>&nbsp;&quot;elPci(0,0)xmdong:vxWorks&nbsp;\&nbsp;<BR>&nbsp;&nbsp;h=10.10.0.150&nbsp;e=10.10.0.151&nbsp;u=target&nbsp;pw=target&nbsp;tn=target&quot;&nbsp;<BR>参数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;参数值&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;描述&nbsp;<BR>Boot&nbsp;device&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;elPci&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3COM&nbsp;3C905B网卡&nbsp;<BR>Processor&nbsp;number&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(0,0)&nbsp;&nbsp;<BR>Host&nbsp;name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xmdong&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;主机名&nbsp;<BR>File&nbsp;name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;vxWorks&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;VxWorks&nbsp;Image&nbsp;文件路径名&nbsp;<BR>Host&nbsp;inet&nbsp;(h)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;10.10.0.150&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;主机网络接口地址&nbsp;<BR>Inet&nbsp;on&nbsp;Ethernet&nbsp;(e)&nbsp;&nbsp;&nbsp;&nbsp;10.10.0.151&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;目标机网络接口地址&nbsp;<BR>User&nbsp;(u)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;target&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FTP用户名&nbsp;<BR>Password&nbsp;(pw)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;target&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FTP密码&nbsp;<BR>Target&nbsp;name&nbsp;(tn)&nbsp;target&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;目标机名称&nbsp;<BR>有关引导参数的详细描述,请参考Tornado&nbsp;User’s&nbsp;Guide之&nbsp;2.5.4&nbsp;Description&nbsp;of&nbsp;&nbsp;<BR>Boot&nbsp;Parameters。&nbsp;<BR>BSP中缺省包含了对Intel&nbsp;Ether&nbsp;Express&nbsp;PRO100&nbsp;网卡的支持,而我们用的是3C905B网&nbsp;<BR>卡,因此要去掉原来的定义,添加对我们的网卡的支持:&nbsp;<BR>#undef&nbsp;INCLUDE_FEI&nbsp;<BR>#define&nbsp;INCLUDE_EL_3C90X_END&nbsp;/*&nbsp;for&nbsp;our&nbsp;3COM&nbsp;3C905B&nbsp;NIC&nbsp;*/&nbsp;<BR>&nbsp;<BR>3.5&nbsp;新工程&nbsp;<BR>然后在Tornado中新建一个工程。选择“Create&nbsp;a&nbsp;bootable&nbsp;VxWorks&nbsp;image”,OK。&nbsp;<BR>&nbsp;&nbsp;<BR>n&nbsp;Step&nbsp;1&nbsp;<BR>Name:&nbsp;Project2&nbsp;<BR>Location:&nbsp;C:\Tornado\proj\Project2&nbsp;(以后我们提到PROJECT就是指这个路径)&nbsp;<BR>Workspace:&nbsp;Add&nbsp;to&nbsp;current&nbsp;Workspace&nbsp;<BR>n&nbsp;Step&nbsp;2&nbsp;<BR>Would&nbsp;you&nbsp;like&nbsp;to&nbsp;base&nbsp;your&nbsp;project&nbsp;on:&nbsp;A&nbsp;BSP,&nbsp;pc486&nbsp;(也就是我们说的BSPNAME&nbsp;<BR>)&nbsp;<BR>n&nbsp;Step&nbsp;3&nbsp;<BR>Finish&nbsp;<BR>&nbsp;<BR>3.6&nbsp;Build工程&nbsp;<BR>在Tornado环境的Workspace窗口中,选中前面新建的工程PROJECT,从鼠标右键弹出菜单&nbsp;<BR>中执行ReBuild&nbsp;All&nbsp;(VxWorks)。&nbsp;<BR>&nbsp;&nbsp;<BR>Build&nbsp;Output窗口显示了build的过程。成功之后,生成PROJECT/default/vxWorks映像&nbsp;<BR>文件。&nbsp;<BR>将文件PROJECT/default/vxWorks复制到BIN目录。因为在前面配置FTP服务器的过程中,&nbsp;<BR>我们将BIN目录配置为FTP用户target的HOME目录。如果你将PROJECT/default目录配置为&nbsp;<BR>HOME目录,就可以省去这个复制操作。&nbsp;<BR>&nbsp;<BR>3.7&nbsp;Boot&nbsp;ROM&nbsp;<BR>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -