1. 操作系统的选择
尽管嵌入式系统有着无比广阔的市场需求和发展前景,但嵌入式系统的发展多年来却经历了一个曲折和痛苦的历程。随着微处理器的产生,价格低廉、结构小巧的CPU和外设连接提供了稳定可靠的硬件架构,那么限制嵌入式系统发展的瓶颈就突出表现在了软件方面。从八十年代末开始,陆续出现了一些嵌入式操作系统,比较著名的有Tornado/VxWorkx、pSOSystem、Neculeus和Windowss CE、QNX、VRTX,以及沸沸扬扬的“女娲计划”,中国人自己的嵌入式操作系统HOPEN和现在谈论最多的嵌入式Linux操作系统等等。可用于嵌入式系统软件开发的操作系统很多,但关键是如何选择一个适合你所开发项目的操作系统,我们认为应该从以下几点进行考虑;
(1) 操作系统提供那些开发工具。有些实时操作系统(RTOS)只支持该系统拱应商的开发工具。也就是说,还必须向操作系统供应商获取编译器、调试器等。而有些操作系统使用广泛且有第三方工具可用,因此,选择的余地比较大。
(2) 操作系统向硬件接口移植的难度。操作系统到硬件的移植是一个重要的问题。它是关系到整个系统能否按期完工的一个关键因素。因此我们要选择那些可移植性程度高的操作系统。从而避免操作系统难以向硬件移植而带来的种种困难,加速系统的开发进度。
(3) 操作系统的内存要求。均衡考虑是否需要额外花钱去购买RAM或EEPROM来迎合操作系统对内存的较大要求。有些操作系统对内存的要求是target dependent。如Tornado/VxWorkx,开发人员能按照应用需求分配所需的资源,而不是为操作系统分配资源。从需要几K字节存储区的嵌入设计到需求更多的操作系统功能的复杂的高端实时应用,开发人员可任意选择多达80种不同的配置。
(4) 开发人员是否熟悉此操作系统及其提供的API。
(5) 操作系统是否有提供硬件的驱动程序,如网卡等。
(6) 操作系统是否具有可剪裁性,即能否根据实际需要进行系统功能的剪裁。有些操作系统具有较强的可剪裁性,如嵌入式Linux、Tornado/VxWorks等等。
(7) 操作系统的实时性。实时性分为:软实时和硬实时。有些嵌入式操作系统只能提供软实时,如WindowsCE。作为微软大名鼎鼎的“维那斯”,Microsoft Windows CE 2.0 是32位, Windows兼容,小内核,可伸缩实时操作系统,满足大部分嵌入式和非嵌入式应用的需要。但不够实时,属于软实时嵌入式操作系统。
2. 编程语言的选择
(1) 通用性。随着微处理器技术的不断发展,其功能越来越具体,种类越来越多,但不同种类的微处理器都有自己专用的汇编语言。这就为系统开发者设置了一个巨大的障碍,使得系统编程更加困难,软件重用无法实现,而高级语言一般和具体机器的硬件结构联系较少,比较流行的高级语言对多数微处理器都有良好的支持,通用性较好
(2) 可移植性程度。由于汇编语言和具体的微处理器密切相关,为某个微处理器设计的程序不能直接移植到另一个不同种类的微处理器上使用,因此,移植性差;而高级语言对所有微处理器都是通用的,因此,程序可以在不同的微处理器上运行,可移植性较好。这是实现软件重用的基础。
(3) 执行效率。一般来说,越是高级的语言,其编译器和开销就越大,应用程序也就越大、越慢。但单纯依靠低级语言,如汇编语言来进行应用程序的开发,带来的问题是编程复杂、开发周期长。因此存在一个开发时间和运行性能间的权衡。
(4) 可维护性。低级语言如汇编语言,可维护性不高。高级语言程序往往是模块化设计,各个模块之间的接口是固定的。因此,当系统出现问题时,可以很快地将问题定位到某个模块内,并尽快得到解决。另外,模块化设计也便于系统功能的扩充和升级。
(5) 基本性能。在嵌入式系统开发过程中使用的语言种类很多,比较广泛应用的高级语言有:Ada、C/C++、Modula-2和JAVA等。Ada语言定义严格,易读易懂,有较丰富的库程序支持,目前在国防、航空、航天等相关领域应用比较广泛,未来仍将在这些领域占有重要地位。C语言具有广泛的库程序支持,目前在嵌入式系统中是应用最广泛的编程语言,在将来很长一段时间内仍将在嵌入式系统应用领域占重要地位。C++是一种面向对象的编程语言,目前在嵌入式系统设计也得到了广泛的应用,如GNU C++。Visual C++,是一种集成开发环境,支持可视化编程,广泛应用于GUI程序开发。但C与C++相比,C++的目标代码往往比较庞大和复杂,在嵌入式系统应用中应充分考虑这一因素。Modula-2定义清晰,支持丰富,具有较好的模块化结构,在教学科研方面有较广泛的应用。虽然该语言的开发应用一直比较平缓,但近两年在欧洲有所复苏。Java语言相对年轻,但有很强的跨平台特性,目前发展势头较为强劲。它的一次编程,到处可用的特性使得它在很多领域倍受欢迎。随着网络技术和嵌入式技术的不断发展,Java及嵌入式Java的应用也将越来越广泛。
3. 开发工具的选择
(1) 系统调试器的功能。系统调试特别是远程调试是一个重要的功能。
(2) 支持库函数。许多开发系统提供大量使用的库函数和模板代码。如大家 比较熟悉的C++编译器就带有标准的模板库,它提供了一套用于定义各种有用的集装、存储、搜寻、排序对象。
(3) 编译器开发商是否持续升级编译器。
(4) 连接程序是否支持所有的文件格式和符号格式。
分享到:
相关推荐
本课程的目的是讲授Windows CE嵌入式操作系统原理。通过本课程的学习,学生将理解嵌入式操作系统的一般性特点,了解Windows CE系统的功能和特性,对Windows CE系统定制开发和应用程序开发有一定的认识。 课程由三...
嵌入式操作系统WINDOWS CE在车载导航系统中的应用.zip
基于widows ce系统的嵌入式GPS导航仪的设计
基于WindowsCE的车载导航系统研究与开发,硕士学位论文,需要用CAJViewer浏览器打开
以天嵌公司的TQ2440开发板和长天科技的GPS GR-87模块构建了系统的硬件平台,在Windows CE 5.0下,使用 Embedded Visual C++ 4.0(EVC4.0)和GIS开发组件MapX Mobile搭建了软件开发 平台,确定了嵌入式车载导航系统的...
着科技化的角度持续加快,迫使有越来越多的人必须在紧凑的时间及...基于 S3C2440A 微处理器和 Win CE 5.0 嵌入式操作系统,设计了一套可靠且实用的嵌入式导航系统,所提供的功能可以满足人们现阶段日常生活的需要。
分析研究嵌入式车载导航信息系统体系结构,以实时多任务嵌入式操作系统Windows CE.NET为嵌入式软件平台,搭建了嵌入式车载导航信息系统的应用环境。以车载导航信息系统的导航电子地图和导航数据库作为重点研究对象。...
从系统的硬件设计、软件设计、交叉编译环境的建立、引导程序的移植、内核的移植、驱动程序的编写和根文件系统的建立等方面实现了系统的设计,建立了在Linux 操作系统下运行的HMS30C7202 嵌入式车载导航装置的软硬件...
达芬奇技术与 Windows Embedded CE 开发环境是机顶盒、数字媒体适配器、VoIP 电话、导航系统以及便携式媒体播放器等应用的常见技术选择。面向 Windows Embedded CE 环境的TI产品针对 TI TMS3
阐述了如何通过器件选型和系统级软硬件设计将其应用到各类嵌入式系统中,着重说明了微型光学手指导航模组的工业测控/仪表仪器应用、Nucleus MTK手机应用、Windows CE/Mobile应用和ARMLinux/Android应用的重要实现...
Microsoft Windows CE的快速反应的嵌入式应用常常被用来管理严格的时间反应。例如,制造过程控制,高速的数据采集设备,电讯交换设备,医用设备,空中“有线”控制,武器发射装备,空间航行和导航,实验室,实验...
这里从硬件、软件两部分入手,简述了嵌入式导航系统的整个设计过程,涉及到S3C2440A,WindowsCE5.0和GPS模块在系统中的实现。该系统的可运用在手持式、车载式卫星导航系统中,使人们日常生活中出行更加便捷,行车...
TI 宣布推出支持 Windows Embedded CE 操作系统的达芬奇软件开发套件 (SDK)。该 SDK支持基于达芬奇技术的TMS320DM6443与TMS320DM6446片上系统(SoC)处理器,可帮助采用Windows Embedded操作系统的开发人员轻松获得 TI...
本文研究基于ARM920T内核的嵌入式微处理器S3C2440和WindowsCE 5.0(简称WindowsCE)的某型军车GPS定位信息的采集与处理。 1 系统硬/软件平台概述 车辆GPS定位信息采集系统的硬件平台结构如图1所示。 该...
本文给出了基于Windows CE的嵌入式车载GPS导航系统的分析、设计及具体实现。系统在城市主要干道上导航效果显着,系统根据GPS模块输出的先前车速信息来估计当前位置,精确度仍有待升级,正尝试用专门的测速模块确定...
以ARM9微处理器S3C2440カ硬件平台核心,WindowsCE嵌入式操作系統软件平台,杓建了微型化、便携的车輌GPS定位信息采集系統。 GPS可提供连续、高精度、实时的时间基准、三维位置、三维速度、整周模糊度等...
个人导航设备(PND)已经成为嵌入式领域的一个新热点,让我们深入探索Windows Embedded CE中为导航设备的开发提供了哪些新功能?GPS中间驱劢程序(GPSID)和Location Framework已经成为导航设备开发者手中的利器,我们...
本文介绍了基于嵌入式处理器AMD Geode$02200的车载导航终端的设计,重点给出了系统的硬件设计方案和硬件结构,介绍了软件设计的总体思路,并对车载导航系统路径优化问题进行了探索。
基于Windows CE的导航系统的设计、电子技术,开发板制作交流
摘 要: 为解决盲用定位模块在嵌入式平台下实现的问题,根据串口通信同步方式实现Windows CE 5.0操作系统下GPS导航数据的提取,并对获得的数据提出一种格式转换的方法。以PXA270嵌入式系统平台实现系统原型,在有限...