新闻中心

EEPW首页>嵌入式系统>设计应用> 基于嵌入式Linux的远程数据采集系统

基于嵌入式Linux的远程数据采集系统

作者: 时间:2012-12-04 来源:网络 收藏


  在 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 所示。


  3 软件设计

  3.1 系统软件平台配置

  3.1.1 嵌入式的移植

  首先在一台 PC 机上安装系统,从网络上下载交叉编译需要的软件包:linux-2.6.16 内核、gcc-3.4.4 编译器、glibc-2.3.3 编译器、binutils-2.16 工具包和gdb-* 调试器。然后一 步步建立交叉编译环境,根据具体目标平台对与体系结构相关的源码进行必要的修改,对内 核裁减、编译,生成一个内核映象文件。最后将内核及根文件系统烧写到目标平台。

  3.1.2 网络设备驱动程序

  CS8900 驱动程序是本系统的重要组成部分。所有的网络驱动程序都遵循通用的 接口,对每个网络接口都用一个device 数据结构表示,网络设备使用网络接口管理表 dev_base,它是一个device 结构的指针。Linux 网络各层之间的数据传输都通过sk_buff(套 接字缓冲区)完成的,每个sk_buff 包括一些控制方法和一块缓冲区,这个区域存放网络传 输的数据包[3]。内核的驱动程序接口包括:打开函数、关闭函数、探测函数、发送函数、接 收函数、中断处理函数和其它函数;参考CS8900 技术文档,通过编写这样一系列函数来实 现具体的功能。

  3.1.3 Qt/Embedded 开发

  Qt/Embedded 是一个为嵌入式设备上的图形用户接口和应用开发而订做的C++工具开 发包。Qt 的C++类库封装了适应不同操作系统的访问细节,它通常可以运行在多种不同的 处理器上部署的嵌入式Linux 操作系统上。除了类库以外,Qt/Embedded 还包括几个提高开 发速度的工具,使用标准的Qt API,可以熟练的在Windows 和Unix 编程环境里开发应用程 序。下载tmake1.11、Qt/Embedded2.3.7 和Qt2.3.2 for X11 这样几个安装包,根据开发者具体 的开发环境,在Linux 系统的PC 机上建立起Qt/Embedded 开发环境,通过qmake 和Qt designer 这两个工具可以快速的开发出简洁精美的界面。

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


评论


相关推荐

技术专区

关闭