欢迎来到天天文库
浏览记录
ID:15984700
大小:76.50 KB
页数:7页
时间:2018-08-06
《基于nucleusplus的嵌入式系统的软件设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、基于NucleusPLUS的嵌入式系统的软件设计本文介绍了离子迁移谱仪的工作机理、软件系统设计以及嵌入式实时多任务操作系统(RTOS)NucleusPLUS,重点介绍后者在离子迁移谱仪中的具体实现。 引言 现今社会,毒品走私比较猖獗,对人民的生命财产、社会稳定构成了一定的威胁,同时大气监测以及对有毒气体的监控也是刻不容缓的。所开发的离子迁移谱仪,是一种利用IMS(离子迁移谱技术)的专用探测仪,它在确定的温度、气压、电场条件下,通过精确测定离子在电场作用下穿过固定距离的迁移时间,来认定被测可疑物质中是否具有某些化学成分的分子,并对某
2、些特殊的化学物质能够发出报警信息,从而可用来检测毒品及有毒气体。 该系统的工作原理如下:通过细节匹配,对离化后物质的等离子图的波峰位置(即物质的迁移时间)的提取来鉴定物质的具体成分。系统的原理框图如图1所示。 图1 系统原理框图 离子迁移谱仪需要读取实时数据,并作分析、处理,要求每25ms处理1000个离子信号数据,具有一定的实时性。同时,它还需对离子管内的温度、气压、电压等参数进行读取、控制。设备分析时,要求能迅速地判断出物质的成分(不超过20秒),而此过程中,涉及到大量的实时数据处理。可见离子迁移谱仪嵌入式系
3、统对容量和速度要求较高,不仅要实时数据处理,还要对多个参数进行控制。为了保证系统的可靠性,提高开发效率,在离子迁移谱仪中必须引入嵌入式实时操作系统。 嵌入式RTOS选择 可用于嵌入式系统软件开发的操作系统很多,但关键是要选择一个适合的嵌入式实时操作系统。在离子迁移谱仪实时系统的设计中,我们对嵌入式RTOS的要求如下: (1)实时性 使用时,必须保证进程调用和处理的快速性,因为检测的样品信息需及时分析处理。 (2)稳定性 作为系统设计的软件平台,需要具有相当的稳定性。从而保证离子迁移谱
4、仪检测系统即使在多变的外部环境下如气压、温度等,也能够正确执行预定的动作。 (3)内核规模较小 由于整个系统的硬件资源有限(我们配备了2M的FLASH),因此源代码必须足够的小,以便写入存储器,提高运行效率。 综合考虑各个因素,我们选择了嵌入式实时操作系统NucleusPLUS。NucleusPLUS是美国著名RTOS厂商ATI(AcceleratedTechnologyInc)公司,为实时嵌入式应用而设计的一个抢先式多任务操作系统内核。其95%的代码是用ANSIC写成的,非常便于移植并支持大多数类型的处理器。
5、NucleusPLUS是一组C函数库,应用程序代码与核心函数连接在一起,生成一个目标代码,下载到目标板的RAM中或直接烧录到目标板的ROM中执行。在典型的目标环境中,NucleusPLUS核心代码区一般不超过20K字节大小,内核规模非常小。 NucleusPLUS的特点 NucleusPLUS内核的系统结构 NucleusPLUS的系统结构如图2所示。NucleusPLUS内核的主要目的是管理实时任务的竞争运行,为应用提供各种便利,快速响应外部事件,实现实时性。NucleusPLUS为系统开发提供以下支持:多任务管理,
6、任务之间可以按照优先级和时间片方式来共享CPU资源,通过邮箱、队列和管道进行通信,任务之间的同步和互斥通过信号量、事件组和信号进行;NucleusPLUS提供动态和分区内存两种存储器管理机制,还提供定时器来处理周期性事件及任务的睡眠和挂起超时。NucleusPLUS将这些机制称之为软件组件,它为每一个软件组件提供了一系列的系统调用,任务与NucleusPLUS的交互是在系统调用的界面上进行的。 从图2可以看出,利用NucleusPLUS开发平台,用户只需编写任务代码和中断服务程序代码,在任务代码和中断服务程序代码中利用系统调用实现和Nu
7、cleusPLUS的交互,由NucleusPLUS来调度多个任务并行执行,实现CPU的共享。由于NucleusPLUS根据优先级和时间片方式来共享CPU资源,所以只要任务和中断服务程序的优先级设置得当,系统的实时性就能保证。 图2 NucleusPLUS系统结构 多任务管理 NucleusPLUS实时操作系统中的任务(task)相当于分时操作系统中的进程。在NucleusPLUS操作系统中,任务可划分为5种基本状态:运行状态、就绪状态、挂起状态、终止状态和完成状态,具体见表1所述。 表1 任务的五种
8、状态 各个任务之中,只能有一个任务处于运行状态;处于挂起状态的任务可以被某些系统调用或事件激发而转到就绪状态;
此文档下载收益归作者所有