新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 嵌入式多路信号数据采集系统实现方案

嵌入式多路信号数据采集系统实现方案

作者: 时间:2012-03-06 来源:网络 收藏

2.3 GPRS终端

GPRS终端选用的是南京傲屹电子有限公司的AYG285C,它是采用GPRS模块专为工业集成设计的,在温度范围、震动、电磁兼容性和接口多样性等方面均采用特殊设计,保证了恶劣环境下的工作稳定性,基于GPRS公网的数据传输具有通信范围广,传输稳定可靠等特点。通过按键可以进行模块参数设置或者进行网络数据通信,串口波特率在300~115200bps可调,校验位可选:无校验,奇校验,偶校验。支持协议PPP、IP、TCP、UDP、DNS、PING的客户端功能。另外,电源、工作状态有LED指示,方便现场查看MODEM运行情况。

3 软件

3.1 μC/OS2Ⅱ操作

当需要进行多任务处理和调度时,一个实时操作就必不可少。为此系统中采用源码公开的μC/OS2Ⅱ操作系统,它具有执行效率高、占用空间小、实时性能优良以及可扩展性强等特点,最小内核可编译至2K字节。

μC/OS2Ⅱ的移植需要满足以下要求:

1.处理器的C编译器可以产生可重入代码;

2.可以使用C调用进入和退出临界区代码;

3.处理器必须支持硬件中断,并且需要一个定时中断源;

4.处理器需要能够容纳一定数据的硬件堆栈;

5.处理器需要有能够在CPU寄存器与内核和堆栈交换数据的指令。

本系统使用的LPC2134ARM7处理器满足以上所有条件,因此可以对其进行移植。根据μC/OS2Ⅱ的要求,移植μC/OS2Ⅱ到一个LPC2134ARM7体系结构上需要提供2个或3个文件:OSCPU.H(C语言头文件)、OS-CPU-C.C(C程序源文件)及OS-CPU-A.ASM(汇编程序源文件)。

任务中,采用C语言进行编程,但对于系统的初始化,仍然采用汇编来制作启动代码,它可以向量表定义、堆栈初始化、系统变量的初始化、中断系统初始化、I/O初始化、外围初始化、地址映射等操作。

芯片复位后,系统初始化流程如图2所示。

系统初始化流程图

图2 系统初始化流程图

3.2 接口程序及SD卡驱动的

在实时内核下,接口程序读取A/D采样数据的方法通常有三种:程序延时法、ADC转换完毕时产生中断法和程序循环等待的方法。其中循环等待的方法CPU开销小,不需要中断服务,比较适合系统中采用。

循环等待A/D读取数据的伪代码如下:

之间通过串口相连,采集数据先通过开发板串口UART0发送到无线数据终端AYG285C的缓冲区,然后缓冲区将数据打成一个个数据包,通过GPRS网络发送到远程数据处理中心。因此,在μC/OS2Ⅱ下LPC2134的UART底层接口驱动显得尤为重要。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)


评论


相关推荐

技术专区

关闭