微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > uCOS-II在车载GPS移动终端中的应用

uCOS-II在车载GPS移动终端中的应用

时间:04-13 来源:微计算机信息 点击:

uCOS-II在车载GPS移动终端中的应用

一、             统概述

目前市场上的商用嵌入式系统产品,如Vxwork、PSOS和Windows CE等已经十分成熟,提供有力的开发和调试工具,但开发成本昂贵,而uCOS-II是一种多任务实时操作系统,内核源代码公开,短小精干,移植性较强,非常适用于一些小型系统开发。本系统描述了如何将uCOS-II移植应用到MCS51系列单片机上,并论述了如何把它实际应用到“嵌入式设备—车载GPS”系统中。

1、  uCOS-II简介

实时嵌入式操作系统uCOS-II是基于优先级的抢占式实时多任务操作系统,包含了实时内核、任务管理、时间管理、任务间通信同步(信号量,邮箱,消息队列)和内存管理等功能。绝大部分代码用C语言写成,与硬件相关部分用汇编语言编写,而且它的源代码是公开免费的。

uCOS-II是面向中小型嵌入式系统的,包含全部功能模块的内核大约为10K,如果经过裁减只保留核心代码,则可压缩到3K左右。RAM的占用量与系统中的任务数有关,任务的堆栈要占用大量的RAM空间,堆栈的大小取决于任务的局部变量、缓冲区大小及可能的中断嵌套层数。应用程序的时间精度由系统时钟节拍决定,uCOS-II需要用户提供周期性的时钟信号源,用于实现时间延时和确认超时,一般时钟节拍应在10到100HZ之间(最大精度为10ms),因为uCOS-II在每一个节拍都要检查有没有更高优先级的任务在等待执行,若有,就要进行任务切换,所以时钟节拍率越高,系统的额外负荷就越重。

2、系统的设计目标

本车载移动终端主要完成以下这些控制功能:

(1)位置及相关信息传送,包括实时请求发送、等时间间隔发送、等距离发送,传送方式包括GPRS方式和短信方式,由于用GPRS方式进行数据通讯按流量记费,每1K字节2-3分钱,费用相对短信低很多,因此本系统采用GPRS为主,短信为辅的通讯方式。

(2)报警功能,分以下几部分:

A、特定区域报警功能:设定报警特定区域后(如控制中心规定的行驶任务区域),当车辆驶出设定区域时,监控中心向车载单元报警,并及时记录车辆的实时位置信息。

B、紧急报警功能:当车辆遇到抢劫、交通事故等紧急情况时,司机可以通过紧急求救按钮向控制中心发出求救信号,并上传车辆定位数据。

C、防盗报警功能:当车辆设为防盗状态时,任何对车辆的非法移动,车载单元会自动报警并上传车辆定位数据。

D、掉电报警功能:当车载单元主电源掉电(或被人为切断)时,车载单元会自动报警并上传车辆定位数据。

E、能自动报警与手动报警相结合:系统支持手动的单键报警和智能设备产生的自动报警功能。单键人工报警需要司机进行快速隐蔽的单键操作快速报警。自动报警如智能非法移动报警,系统自动产生报警信息并发送到监控中心,并保存报警数据,监控中心的人员可以根据需要采取措施。

(3)电源监控功能,实时监控备用电源,如果发现电量不够,将自动切换到充电模式,直到电量充足后自动切断充电模式。

3、  系统的功能块

系统结构图如图1所示,有外向内可分三层:硬件电路层、任务层、操作系统层。

图1 系统结构图

二、硬件电路层设计

本系统的移动终端主要包括以下四个部分组成:GPS模块、GPRS模块、手柄、单片机控制模块,其大致功能分述如下:

(1)       GPS模块——用于卫星定位数据的采集,采集时间间隔可设定,最小间隔为1秒采集一次。

(2)       GPRS通信模块——用于实现GPRS数据的收发、短信息收发和语音通话功能。

(3)       手柄——用于语音通话。

(4)       单片机控制模块——用于控制GPS、GPRS模块的数据接收、发送、语音通话控制、短信息收发、电源监测管理和对汽车进行控油控电等功能。

三、任务层的设计

1、系统任务层组成及其优先权设置

系统任务层并行存在以下六个任务:监视任务、按键处理任务、摘挂机任务、GPRS任务、短消息任务、串口接收任务。每个任务均有以下三部分组成:应用程序、任务堆栈以及任务控制块。其中只有应用程序被烧入ROM,而任务本身则被置于RAM,待系统运行时再建立。任务堆栈用以存储CPU寄存器内容。当某任务由运行态变为其它状态时,CPU寄存器内容压入相应任务堆栈,反之则将相应任务堆栈内容置入CPU寄存器。作为系统中定义的一个数据结构,任务控制块的内容包括任务堆栈的地址、任务当前状态、任务优先权等。操

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top