微波EDA网,见证研发工程师的成长!
首页 > 射频和无线通信 > 射频无线通信文库 > 基于Android的GPRS的车载通信终端设计方案

基于Android的GPRS的车载通信终端设计方案

时间:09-10 来源:互联网 点击:

摘 要:随着车联网技术的不断发展和应用,GPRS日臻普及和嵌入式系统的崛起,车辆网通信终端变得越来越智能化。

  采用Android操作系统和MD231GPRS模块,以S3C6410嵌入式处理器为核心,设计了一个基于车辆故障参数的GPRS远程传输的通信终端,能实现数据的处理、远程传输。通过通信终端能对车辆状态进行实时监控,出现故障时,可以根据故障数据进行准确的修理,减少车辆的抛锚时间。

  关键词:Android;GPRS;ARM;通信终端

  0 引 言

  随着通信技术的发展,通信终端由单一的通话工具变成信息综合处理平台,成为办公、野外作业重要工具。

  随着半导体制作工艺的发展和芯片设计水平的进步,微处理器的性能大幅度地提高,ARM(Advanced RISCMachines)以其体积小、低功耗、低成本、高性能的特点逐渐在工业、无线通信、网络消费电子等领域占据主流。

  其中,在无线通信领域85%的无线通信设备采用了ARM 技术。另外,Android是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统,它开放性好,功能扩展性强,并可集成Google应用。

  车辆故障远程监控是一个实时的过程,当有故障数据出现就通过GPRS发送到监控中心,同时监控中心给终端发送相应的执行命令,减少汽车抛锚时间。本文中使用了讯研通信息技术有限公司的MD231GPRS模块和三星公司的S3C6410芯片。

  1 系统总体设计

  终端由ARM11?1 eZ芯片模块通过串口线控制GPRS模块的数据收发,连接到移动公司的GPRS网络,再连接到远程的计算机监控中心,从而实现远程的数据传输功能。

  系统总体设计包括硬件设计和软件设计。硬件部分包括处理器的选型、Android内核移植等等,主要是为软件部分搭建环境。软件部分基于Java环境在Eclipse下编程,完成GPRS的数据传输功能。系统的总体设计流程如图1所示。

  图1 总体设计流程

  2 系统硬件设计

  2.1 系统硬件结构

  本终端硬件由GPRS模块和ARM11芯片处理模块组成。由于Android系统对硬件的要求及经济考虑,处理器选择为ARM11,内核版本选择为Android-Kernel-2.6.36,Android操作系统版本为Android-2.3.

  ARM11芯片模块主要由S3C6410A 处理器、256MDDR RAM 内存、1GB NAND FLASH 存储器、串口、7寸LCD显示器组成,NAND FLASH存储器用于存放已调试好的应用程序和嵌入式Android操作系统,串口用于调试系统及与终端设备进行通信,7寸LCD液晶显示屏用于显示系统信息和相关的状态。目前,GPRS技术比较成熟,GPRS模块选择实惠型MD321模块。

  GRPS模块外围有电源、天线和串口线,其中,串口线用于与ARM11处理器进行通信,能完成数据传输、短信收发、语音等系统框图如图2所示[1].

  图2 系统硬件结构框图

  2.2 Android操作系统移植

  有了ARM11的硬件,就可以进行Android操作系统的移植。Android基于Linux内核,Google提供的内核源代码中除了Linux部分外,有很大一部分是与虚拟处理器Qemu和模拟硬件平台Goldfish相关。所以欲将Android移植到实际的硬件平台上,需要编译出一个适合目标平台运行的系统内核。

  在这里,电脑虚拟机上安装的是Ubuntu系统,用于Uboot移植和Android 内核裁剪和编译,并在Ubuntu 上安装交叉编译器arm-none-linuxgnueabi-gcc.

  2.2.1 Uboot移植

  下载U-boot源码,在解压文件夹里,删除与该硬件版本无关的文件。在board目录下建立Mini6410文件夹,把smdk6400目录下的所有文件都拷贝到Mini6410目录下,并建立自己的配置文件Mini6410.h,配置MakeFile文件;修改start.S文件、添加nand.c文件和修改Mini6410.h,使其支持从NAND FLASH 启动;在Mini6410.h里,对网卡DM9000A、默认下载地址、环境变量等进行配置;修改网卡驱动。最后编译Uboot生成Uboot.bin二进制文件[2].

  2.2.2 Android内核的移植

  下载Android内核源码,进入解压的Kernel.git文件夹。修改common-smdk.c文件中的NAND FLASH使其为4个分区,分别为BootLoader区,内核区,文件系统区,其他区;更改MakeFile文件中目标体系结构ARCH为ARM 和交叉编译工具CROSS_COMPILE为arm-none-linux-gnueabi-;从Android SDK模拟器提取。config配置文件;配置内核,选中与S3C6410有关的选项;从其他Linux 内核中拷贝DM9000.h 和DM9000.c文件,并将两个文件拷贝到内核代码目录中,修改相应的配置文件,配置内核支持DM9000A 网卡;编辑mach-smdk6410.c中LCD 驱动使其为7寸LCD,拷贝KConfig中相关内容和文件到新内核,并添加相应的代码,修改devs.h文件,然后对内核进行配置选择ADC和触摸屏选项。最后编译内核生成zImage文件[3].

  2.2.3 Android文件系统的制作

下载Android源码并编译并生成out文件

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

网站地图

Top