vxworks基础培训解读课件

上传人:des****85 文档编号:315564209 上传时间:2022-06-21 格式:PPT 页数:48 大小:462.50KB
返回 下载 相关 举报
vxworks基础培训解读课件_第1页
第1页 / 共48页
vxworks基础培训解读课件_第2页
第2页 / 共48页
vxworks基础培训解读课件_第3页
第3页 / 共48页
vxworks基础培训解读课件_第4页
第4页 / 共48页
vxworks基础培训解读课件_第5页
第5页 / 共48页
点击查看更多>>
资源描述

《vxworks基础培训解读课件》由会员分享,可在线阅读,更多相关《vxworks基础培训解读课件(48页珍藏版)》请在金锄头文库上搜索。

1、烽火烽火烽火烽火科技科技科技科技Vxworks嵌入式编程基础邓国旭烽火烽火烽火烽火科技科技科技科技实时嵌入式系统嵌入式系统:由CPU控制,即自带CPU相对于常见的pc而言,不对用户提供开发环境,用户与系统交互的唯一接口就是系统提供给用户的应用;提供功能通常带有针对性,大多为专用系统;手机,医疗设备,微波炉,mp3实时嵌入式系统:实时性:任务切换时间、抢占时间、中断等待时间、信号量延迟时间、死锁解脱时间、任务间消息传递延迟、数据报吞吐量小型化、可裁剪:系统资源有限强稳定性:一旦运行不需要人过多干预固化代码:操作系统和应用软件代码固化在嵌入式系统ROM中弱交互性:工作过程不需人干预烽火烽火烽火烽火

2、科技科技科技科技嵌入式系统开发交叉编译:在某一体系结构的宿主机上为另一体系结构的目标板编译可运行的目标代码。即编译与运行不在同一地方。宿主机(host):编写代码和编译目标机(target):调试和执行程序烽火烽火烽火烽火科技科技科技科技VxWorksVxWorks:美国风河公司(WindRiverSystem)推出的一种嵌入式实时操作系统。强实时性、微内核设计、可裁剪、可移植、高可靠VxWorks系统功能:WindKernelANSIC/POSIXI/O系统文件系统TCP/IP网络协议栈BSP开发包:提供BSP模块、驱动程序模板和BSP测试工具包WDB(WindDebugAgent):支持交

3、叉调试烽火烽火烽火烽火科技科技科技科技BSPBSP(BoardSupportPackage)开发嵌入式应用时系统开发商提供的各种驱动支持库VxWorks:OS的驱动程序VxWorks提供的大部分功能模块与硬件无关,为使VxWorks能运行于不同的处理器体系结构上,必须在功能模块与硬件之间加入一层软件,并对这层软件规定标准接口,这层软件即为BSP提供对硬件进行的描述性操作提供对目标板的初始化、中断管理以及一些简单的驱动程序最好的情况下,OS与驱动程序的移植只需要更换相应平台下的BSP支撑库TornadoBSPDevelopersKitforVxWorks烽火烽火烽火烽火科技科技科技科技VxWor

4、ks系统结构烽火烽火烽火烽火科技科技科技科技Tornado集成开发环境Tornado:基于VxWorks操作系统的嵌入式软件集成开发环境。给嵌入式系统开发人员提供了一个不受目标机资源限制的超级开发和调试环境。Tornado包含以下三部分:运行在宿主机和目标机上的强有力的交叉开发工具和实用程序;文本编辑器GNU和DiabC/C+编译器调试工具:WindShell,Browser,WindViewVxSim系统模拟器:VxWorks提供的在实验与测试环境下仿真VxWorks目标机的程序,无需硬件的支持运行在目标机上的高性能、可裁剪的实时操作系统VxWorks;即为编译生成的目标机上可执行代码镜像(

5、image),内含os连接宿主机和目标机的多种通讯方式,如:以太网,串口线,ICE或ROM仿真器等。烽火烽火烽火烽火科技科技科技科技使用Tornado创建工程创建工程.exeWorkSpace&WorkProject每一个工程都需要有一个WorkSpace来保存一些相关的环境变量;BootableVsDownable:前者表明建立一个新的VxWorks操作系统,该工程是基于某个BSP生成的镜像,它包含了必须的VxWorks的内核、组件以及BSP,并且应用程序可以静态包含在工程中,也可以静态链接已编译好的应用工程模块。开发者可以根据自己的需求进行适当的配置,添加、删除VxWorks的组件,设置所

6、选组件的运行参数等。后者顾名思义,应用模块可以以静态链接的方式编译至VxWorks镜像工程中,还可以在VxWorks运行之后,通过网络将将应用模块(.out格式)下载到目标板,并与VxWorks镜像进行链接。在单独对某个模块进行调试时,我们常常会用到这种动态链接的方法。烽火烽火烽火烽火科技科技科技科技VxSim的HelloWorld(一)烽火烽火烽火烽火科技科技科技科技VxSim的HelloWorld(二)选择ABSP(板级支持包)在下拉菜单中选择simpc打开文件usrAppInit.c(它的函数usrAppInit是应用的入口点),添加HelloWorld打印语句,保存文件。烽火烽火烽火烽

7、火科技科技科技科技VxSim的HelloWorld(三)烽火烽火烽火烽火科技科技科技科技VxSim的HelloWorld(四)最后:查看新弹出的对话框(VxWorksSimulator),_,可以看到输出的HelloWorld此时,还会弹出了一个VxSimLaunch的界面,这是主机用来连接目标机的。点击OK。如果正确安装Tornado并配置正确的话,此时桌面右下角会出现的图标(如果出现问题,会出现的图标),点击它可以看到TargetServer是否正常工作。烽火烽火烽火烽火科技科技科技科技Tornado工具CrossWind:源程序(C或C+以及汇编程序等)的调试工具Browser:可对系统

8、对象(任务、消息队列、信号量等)和存储器使用情况进行观察的浏览器。可以方便地监视用户的目标系统。Browser汇总了应用进程,内存消耗和一个目标内存的映射。通过Browser,用户可以观察信号量、消息队列、内存分配、看门狗计时器、堆栈使用情况、目标CPU使用率、对象模块结构和符号表以及每个任务的详细信息。WindShell:提供从宿主机到目标机之间的一个命令shell。允许用户调用内存中的应用程序模块或是VxWorks模块中的任何例程。WindView:非常出色的系统可视诊断和分析工具。可非常容易地观察各任务,中断程序之间的相互作用。VxSim:快速原型仿真器。可在硬件设备未完成之前,在宿主机

9、上对应用程序进行仿真分析。烽火烽火烽火烽火科技科技科技科技VxWorks程序设计任务(Task)在VxWorks中,任务是一段独立运行的程序,类似于Linux中的进程。从系统的角度看,任务是竞争系统资源的最小运行单元。任务可以使用或等待CPU、I/O设备及内存空间等系统资源,并独立于其他任务。VxWorks实时内核Wind提供了基本的多任务环境,因此当系统运行多个任务时,从表面上看多个任务正在同时执行,而实际上系统内核是根据某一调度策略让它们交替运行。系统调度器使用任务控制块(TCB)的数据结构来管理任务调度功能。每一个任务都与一个TCB关联。TCB包括了任务的当前状态、优先级、要等待的事件或

10、资源、任务码的起始地址、初始堆栈指针等信息。任务编程:任务创建taskSpawn、任务删除taskDelete、任务控制taskSuspend/taskDelay等WindShell允许用户调用内存中的应用程序模块或是VxWorks模块中的任何例程烽火烽火烽火烽火科技科技科技科技创建任务在usrAppInit函数中添加函数userMain(),作为自己应用程序的入口函数。编写一个C文件(uesr.c),内容如下:烽火烽火烽火烽火科技科技科技科技编译代码及运行选择AddFiles,添加uesr.c到工程中:编译并启动:烽火烽火烽火烽火科技科技科技科技启动WindShell在Launch工具栏中选

11、择,这时候就可以看到shell的界面:输入i命令,回车,即可以查看到我们起的任务tTick的有关信息:烽火烽火烽火烽火科技科技科技科技WindShell常用命令i:显示所有的任务信息Tt():显示一个任务的函数栈的调用状态Ti():显示一个任务的tcb信息Sp():启动一个任务Ts():挂起一个任务Tr():恢复一个任务Td():删除某个任务memShow:显示系统内存信息checkStack:查看指定或所有任务的堆栈大小和使用率烽火烽火烽火烽火科技科技科技科技Tornado中Host与target通信TargetServer以进程的形式(tgtsvr.exe)运行在Windows主机上,而T

12、argetAgent则以VxWorks的一个任务(tWdbTask)运行在目标机上,两者通常使用网络进行通讯,但也可以使用其他通讯方式。TargetServe与TargetAgent间使用WDB(WindDebug)协议进行通信,这就好比一座桥梁,将目标机与主机上的Tornado开发工具联系在一起。烽火烽火烽火烽火科技科技科技科技开发板开发嵌入式程序操作系统的制作与下载修改Config.h制作BSP及bootrom制作操作系统配置FTPServer启动超级终端引导和下载操作系统应用程序的编制和调试烽火烽火烽火烽火科技科技科技科技操作系统的制作与下载修改Config.hVxWorks的缺省配置参

13、数由tornadotargetconfigall目录中的configAll.h决定,如第528行开始通信路径的配置对于某一目标板特定的配置参数,如ads860,使用tornadotargetconfig下相应目录中的config.h,下面以ads860板为例如果没有相应目录,可定制,如建立8240目录,其文件代码由BSP开发人员编写烽火烽火烽火烽火科技科技科技科技操作系统的制作与下载修改Config.hconfig.h首先定义BSP版本,然后includeconfigAll.h缺省下载调试口为10M网口,对应代码为#undefFADS_860T如改用100M网口下载调试,将该行改为#defin

14、eFADS_860T烽火烽火烽火烽火科技科技科技科技操作系统的制作与下载修改Config.h10M网口使用cpm(0,0),100M网口使用motfec(0,0)host:后跟VxWorks操作系统在主机的存放路径,h指主机IP地址,e指目标板IP地址,u指用户名,pwd指密码实例:使用10M网口,VxWorks在主机D:,主机地址10.16.17.1,目标板地址10.16.17.2,账号及密码均为tornado,其代码为:“cpm(0,0)host:d:/vxWorksh=10.16.17.1e=10.16.17.2u=tornadopwd=tornado”烽火烽火烽火烽火科技科技科技科技操

15、作系统的制作与下载修改Config.h如采用串口调试,可增加下列代码#undefWDB_COMM_TYPE#defineWDB_COMM_TYPEWDB_COMM_SERIAL#undefWDB_TTY_CHANNEL#defineWDB_TTY_CHANNEL0#undefCONSOLE_BAUD_RATE#defineCONSOLE_BAUD_RATE115200#undefWDB_TTY_DEV_NAME#defineWDB_TTY_DEV_NAME/tyCo/0#undefWDB_TTY_BAUD#defineWDB_TTY_BAUD115200/*defaultbaudrate*/烽

16、火烽火烽火烽火科技科技科技科技操作系统的制作与下载Buildbootrom修改BSP后,应生成对应的bootrom在Tornado中选Build-BuildBootROMBSP可选择ads860Image一般选择bootrom.hex,仿真时选择bootrom_uncmp烽火烽火烽火烽火科技科技科技科技操作系统的制作与下载烧制bootrom目的:将build成功的bootrom烧制到Flash中FADS860板通过配套的ADI卡烧制按照ADI卡相应的8bug程序中的readme,安装ADI卡在DOS方式下键入:mpc8bugxy烽火烽火烽火烽火科技科技科技科技操作系统的制作与下载验证bootrom连接主机与目标板的串口线启动和配置FTPServer(方法后面介绍)选择Tornado2-VxWorksCOM1/COM2,启动超级终端超级终端中选文件-属性-配置,设置正确的目标板波特率目标板上电,检查终端是否能正确回显,显示参数与BSP配置是否一致烽火烽火烽火烽火科技科技科技科技操作系统的制作与下载创建操作系统工程选File-NewProject-CreateabootableVxWork

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号