摘要:提出一种基于嵌入式Linux系统的远程数据采集的设计方案,采用ARM9体系结构的嵌入式处理芯片S3C2410X作为系统的控制芯片、高实时性的嵌入式Linux多任务实时操作系统和Qt/Embedded图形用户界面,具有友好的人机接口和远程监控等优点。
1 引言
数据的采集和传输是工业和军事领域的一项关键技术。传统数据采集系统采用以单片机 为核心的设计模式,系统的精确度和运算能力有限,人机交互界面不够直观友好、信息量小, 并且数据传输距离、数据存储容量和实时分析能力都有限。本文设计的嵌入式数据采集系统 采用嵌入式实时操作系统,具有采集速度快,可扩展功能强,并且能通过网络通信进行远程 监控等优点,具有广阔的应用前景。
2 硬件设计
2.1 硬件描述
系统的基本结构如图 1 所示。该系统由核心处理器模块、数据采集模块、键盘输入模 块、显示模块和外部通信模块等组成。
核心处理器模块由微处理器 S3C2410、NAND FLASH 和 SDRAM 共同构建。S3C2410 是 三星公司的一款基于ARM920T 内核的16/32 位RISC 嵌入式微处理器,主要面向手持设 备以及高性价比,低功耗的应用,运行的频率可以达到203MHz。64M 字节 NAND FLASH 采用的是K9F1208,可以兼容16M,32M 或128M 字节。64M 字节的SDRAM 由两片 K4S561632 组成,工作在32 位模式下,可以满足嵌入式系统运行的要求。
2.2 数据采集模块设计
S3C2410 内核中集成了8 路10 位的模数转换器,但考虑到10 位的精度偏低,所以数据 采集模块使用了一个8 路16 位模数转换芯片ADS8344。该芯片是8 路16 位的带异步串行 口的模数转换器,在5V 的工作电压和IOOK 的工作频率的条件下转换器的功耗是10mW, 参考电压的范围是从500mV 到工作电压VCC,提供的输入电压的范围是从0V 到参考电压。
ADS8344 和S3C2410 连接,虽然S3C2410X 具有117 个通用的IO 接口,但绝大部分的 IO 线都有第二功能,所以在选择S3C2410 和ADS8344 连接的时候,本文用通用IO 口的第 二功能来表述连线。ADS8344 与S3C2410 的连线情况如图2 所示。
在 ADS8344 与S3C2410 的连接图中,S3C2410 的连接端都是通用的IO 信号。S3C2410 的IICSCL 接ADS8344 的片选信号,低电平有效。S3C2410 的nCD_SD 信号接ADS8344 的 数据输入信号Din,当片选信号是低电平时,数据将在DCLK 的上升沿被锁存。S3C2410 的 WP_SD 信号接ADS8344 的串行数据输出信号Dout,当片选信号是低电平时,数据将在 DCLK 的上升沿被锁存。S3C2410 的SDDATA3 信号接ADS8344 的忙信号BUSY。S3C2410 的IICSDA 信号接ADS8344 的DCLK 信号,最大的转换频率可达100K[2]。
2.3 网络接口设计
系统采用 Cirrus 公司的CS8900 网络接口芯片。CS8900 以太网接口芯片的内部集成 RAM、10BASE-T 收发滤波器,它提供8 位和16 位两种接口,我们选用16 位模式,网卡芯 片复位默认工作方式为I/O 连接,寄存器的默认基址是300H[1]。因为CS8900 占用了S3C2410 的片选线nGCS3,则CS8900 寄存器的基址空间为0X6000000+300H。CS8900 与S3C2410 的 连接如图3 所示。
来源:维库开发网