Vxworks工程移植到SylixOS应用笔记

1.适用范围

该应用笔记适用帮助用户在RealEvo-IDE开发环境中移植Vxworks应用程序,并部署到SylixOS操作系统上运行,使用到的开发工具为RealEvo-IDE集成开发环境。

2.准备工作
2.1 环境准备
在使用之前,须安装有翼辉信息开发的集成开发套件,由于系统上安装的防火墙软件或者杀毒软件,可能会影响到集成开发软件的使用,因此,在使用本套件前请关闭计算机上的windows防火墙以及杀毒软件。
因后续操作需要在模拟器上进行展示,所以在进行后续章节操作前,请完成mini2440模拟器的配置并启动,具体配置步骤请参考图 2 1中《mini2440模拟器配置启动》。
2.2 资源准备
请通过邮件或U盘拷贝方式从翼辉信息获取ide3.0_vxworks_demo.rar压缩包文件。压缩包包含文件如图 2-1所示。

图 2 1工程资源文件

解压后的vxworks_prj是基于Tornado2.2的vxworks工程, Vxworks版本为5.5。vxworks_prj的目录结构如图 2-2所示:

图2-2 vxworks_prj目录结构

首先,这里只需将图2-2中的“demo.c”源文件拷贝到vxworks_src目录下即可,然后将vxworks_src和vxworks_base两个工程文件保存到指定路径(不包含中文路径)下。如E:\workspace路径下,本文档以该路径作为工程存放路径。
3.原理概述
VxWorks也是一款符合 POSIX 标准的实时操作系统(这一点同 SylixOS 完全相同),因此对于POSIX应用程序开发两款操作系统没有太大的区别,基本可以完全兼容( SylixOS对POSIX标准的兼容度要高于VxWorks),另外SylixOS为了使 VxWorks 开发者能够更快地适应 SylixOS 的程序开发,提供了一套VxWorks 兼容接口。
由于对于VxWorks的应用程序来说,任何函数接口都可以作为程序的入口,但是SylixOS应用程序的入口是main(),所以进行VxWorks应用程序移植的时候,需要增加main函数,通过main函数调用的方式运行VxWorks应用程序。
本文档所提供的VxWorks应用程序主要功能是利用二进制信号量实现两个任务的同步。
4.技术实现
4.1 导入base工程
双击打开RealEvo-IDE软件,选择菜单“File→Import”,弹出界面如图4-1所示:

图4-1选择导入工程类型

进入下一步后,弹出界面如图 4-2所示:

图 4-2导入vxworks_base工程

点击“Finish”后,vxworks_base工程的就导入完成了。
4.2新建vxworks_app工程并配置
4.2.1新建vxworks_app工程
选择新建工程类型,操作如图 4-3所示:

图 4-3选择新建App工程

选择新建工程类型后,弹出设置工程名界面如图4-4所示:

图4-4 设置工程名

进入下一步后,配置vxworks_app工程的SylixOS Base,操作如图4-5所示:

图4-5 设置SylixOS Base工程

点击“Finish”,vxworks_app工程的创建就完成了。
4.2.2配置vxworks_app工程
选中“vxworks_app”点击右键,弹出选项菜单,操作如图4-6所示:

图4-6 进入工程属性设置

点击“Properities”后,进行设备配置,操作如图4-7所示:

图4-7 配置设备IP

点击“Apply”后,需要继续设置app工程所需动态库,操作如图4-8所示:

图4-8设置app工程所需动态库

点击“Apply”后,需要继续设置app工程的头文件路径,操作如图4-9所示:

图4-9 设置app工程头文件路径

点击“OK”后,vxworks_app的配置就完成了。
4.3 导入vxworks源文件
4.3.1移除app工程原有源文件

选中 “vxworks_app.c”,点击右键,操作如图4-10所示:

图4-10 移除原有源文件

点击“Delete”后,弹出如图4-11所示界面:

图4-11 确认删除

点击“OK”,完成原有源文件的删除。

4.3.2 导入提供的vxworks源文件
选中“src”,点击右键,弹出如图4-12所示界面:

图4-12 选择导入

点击“Import”后,弹出如图4-13所示界面:

图4-13 选择导入类型

点击“Next”,弹出如图4-14所示界面:

图4-14 选择导入的文件

点击“确定”,操作如图4-15所示:

图4-15 完成vxworks源文件的导入

点击“Finish”,vxworks源文件的导入就完成了。
4.4 工程编译并上传
4.4.1 增加main入口
导入“vxworks_app.c”后,增加main函数入口,操作如图4-16所示:

图4-16 增加main入口函数

4.4.2 工程编译
选中“vxworks _app”工程,点击 完成工程编译,操作如图4-17所示:

图4-17编译vxworks _app工程

4.4.3工程上传
选中“vxworks_app”工程,点击右键选择“SylixOS→Upload(Alt+D)”即可完成  vxworks_app工程的上传。操作如图4-18所示:

图4-18上传vxworks _app工程

4.5 模拟器上运行应用程序
进入SylixOS Shell运行已上传演示程序,操作如图 4-19所示

图 4-19运行程序

运行后,出现打印结果,说明应用程序已经在mini2440虚拟机上正常运行。

时间: 2024-11-08 22:20:58

Vxworks工程移植到SylixOS应用笔记的相关文章

sylixos标准工程移植到Lite版本

1. 概述     针对低端处理器(如ARM M系列处理器)的开发工作,翼辉信息推出了SylixOS Lite工程版本.SylixOS Lite版本工程属于SylixOS轻量级工程,与标准的SylixOS工程相比裁剪掉部分功能(如GDB调试.虚拟内存管理.动态装载.部分网络功能等).    由于SylixOS Lite版本不支持动态装载,本文档介绍基于SylixOS标准开发环境下的中间件移植到SylixOS Lite版本的方法,如在标准版本下开发内核模块工程.动态库工程移植到Lite版本的方法.

[MFC] VS2013版本MFC工程移植到VC6.0上

:VS虽号称“宇宙最强IDE”,但是有时候安装包太大,动不动就几个G:而且安装好之后也会多出很多几乎很难用到的部分,这对于那些处女座的人如何忍受!本文不是吐槽,而是给出一种在应急场景下,不用安装新版本几个G的IDE,而是将高版本的工程移植到低版本的IDE中,并使其工作和调试的解决方法~ VS2013版本MFC工程移植到VC6.0上 1.场景再现 我最近搞了个ubuntu系统,并在virtualbox中装了个win7用于安装设计PCB和嵌入式集成开发环境Keil.项目需要,得用到我之前写的一个将图

ubuntu12.10 cocos2dx 2.2.1 工程移植到安卓

1.到项目文件的proj.android目录下,编辑build_native.sh文件,指定NDK和cocos2dx路径 export NDK_ROOT=/home/liyuchen/dev/android-ndk-r9d export NDK_MODULE_PATH=/home/liyuchen/dev/cocos2d-x-2.2.1/cocos2dx 2.执行脚本 ./build_native.sh 此处报错多与ndk版本有关 3.在eclipse中(已经配置好android sdk和ndk

移植libnopoll到SylixOS技术笔记

1.开发环境 宿主机:windows 7 集成开发环境:Real-Evo IDE 3.1.5 虚拟机:ubuntu 目标机:mini2440 本篇仅介绍nopoll库的移植过程,包括资源的获取,工程文件的修改以及编译出错处理. 2.Nopoll简介 noPoll 是一个 WebSocket 的开源实现,使用ANSI C 编写,可用于构建纯 WebSocket解决方案和为已有的面向 TCP 的应用程序提供 WebSocket 支持. WebSocket协议本质上是一个基于TCP的协议,它由通信协议

6410移植android4.4.2笔记(持续更新)

如之前的android编译笔记里面描述,目前已经可以编译出armv7-neon的android镜像了,也就是说目前的环境以及aosp可以支持定制android程序了. 昨天晚上在device下面已经粗略的改了一套6410的设备文件.然后仔细看看了,6410的指令集是armv6的,4.4.2的aosp里面好像只有支持v7和v5的,没有直接支持v6.考虑到v5的指令集是可以放在v6的设备上面跑的,于是先尝试把target改成armv5te的进行编译,结果一开始就出错了.明显4.4.2已经不再支持v5

VxWorks的移植和BSP定制过程

BSP(Board Support Package,板级支持包)的作用是针对特殊的硬件平台,为操作系统内核提供操作接口,使操作系统能够独立于底层硬件.对上层应用屏蔽具体硬件,VxWorks的高可移植性就是通过BSP实现的. 本文重点介绍将VxWorks移植到AT91RM9200芯片过程中BSP的定制过程. 1 BSP概念 BSP通常是指针对具体的硬件平台,用户所编写的启动代码和部分设备驱动程序的集合.它所实现的功能包括初始化和驱动部分设备.最基本的BSP仅需要支持处理器复位.初始化.驱动串口和必

Android Eclipse下工程移植到Android Studio详细步骤

重新申请了一台电脑之后,最近开始试着使用Android studio对项目进行开发,安装好studio之后首先要做的就是之前Eclipse上面项目的移植问题,今天尝试了几个不同的项目,顺便参考了不同的网上资料,资料比较多,就想着自己整理一份以备不时之需,开始具体的步骤: 1.Eclipse上要一直项目的输出,选中项目右键 --> Export --> Android --> Generate Gradle build files,接下来Next,选中要移植的项目Finish,项目中如果出

STM32 USB转串口驱动移植到SylixOS中遇到的问题总结

1. 简介         由于客户项目需求,需要在STM32的硬件平台上实现USB转串口的功能,由于ST公司基于STM32硬件平台实现了相应的USB库以方便开发者进行开发,因此,在SylixOS下实现USB转串口功能时对该USB库进行了移植.由于该USB库的实现是基于STM32的裸机代码实现,因此在移植的过程中,不需要做过多的修改.         下面章节主要介绍在移植STM32的USB转串口驱动到SylixOS下遇到的问题以及对应的解决方法.对于其中的有些解决方法在移植STM32其他外设驱

第五章Android移植与驱动读书笔记

本章我们主要学习了Android移植与驱动的关系,设备驱动模块,Linux核心与Android驱动,以及Android驱动的HelloWord这些内容!任何一个计算机系统的运行都是系统中软硬件协作的结果,没有硬件的软件是空中楼阁,而没有软件 的硬件则只是一堆废铁.硬件是底层基础,是所有软件得以运行的平台,代码最终会落实为硬件上的组合 逻辑与时序逻辑:软件则实现了具体应用,它按照各种不同的业务需求而设计,满足了用户的需求.硬件 较固定,软件则很灵活,可以适应各种复杂多变的应用.可以说,计算机系统的