基于 Android 平台的 USB 数据采集系统
BMonitorActivity 是接收USB 数据的界面,USB 连接成功后,开始接收数据,并把已接收的数据以文件形式存入 SD 卡中;FileListActivity 是显示已存入SD卡所有文件的列表界面,单击文件进入显示波形界面。除了Acti vity ,该程序还注册了BroadcastReceiver( 广播消息) 来接收系统USB 连接消息的通知。同时各个Activity之间的通信是由Intent 实现的,界面的一些按钮、布局等是由View实现的。
2 LPC2142 前端采集平台设计
本设计前端采用ARM7处理器LPC2142作为硬件开发平台,LPC2142是PHILIPS公司生产的基于支持仿真和嵌入式跟踪的32位ARM7TDMI-S内核的CPU ,带有64kB的高速Flash存储器和16kB 的RAM,最高工作频率能够高达60M Hz。同时集成了A/D 、定时器、串口等资源, 与LPC2132 相比最突出的特点就是内置了USB2.0 Device( 全速) 控制器。该芯片内部资源比较丰富, 特别适用于工业控制等嵌人式系统。该设计总体框图如图4 所示。
图4 系统总体框架
2 . 1 A/D 采集接口
LPC2142 包含2个模-数转换器,提供6/14 路模拟输入,每个通道的转换时间低至2.44vs 。具体特性如下:
10位逐次逼近模数转换器6 或8 个管脚复用为输入脚测量范围:0~3 . 3V单路或多路输入的突发转换模式可选择由输入跳变或定时器匹配信号触发转换2个转换器全部启动命令A/D 转换器的基本时钟由VPB 时钟提供,每个转换器包含一个可编程分频器,可将时钟调整至逐步逼近转换所需的4 . 5MHz 。
2 . 2 LPC2142与USB 模块接口
LPC2142 微控制器内部带有一个USB 设备控制器,该控制器支持32个固定配置的物理端点,并完全兼容USB2. 0 全速规范。该控制器嵌于CPU 芯片内部,这样的集成方式不仅使 USB 设备控制器与 CPU 之间的数据交换可以稳定地达到很高的速度,而且提高了芯片的性价比。USB 接口电路如图 5. LPC2142 的P0.27和P0.26 引脚的第二功能控制 USB 数据的传输。Android USB 主机与LPC2142 USB设备之间的通信完全遵循USB2. 0 全速规范,根据规范建立USB 连接的命令流程如图6 。
图5 USB 接口电路
图6 USB 通信命令
2 . 3 应用
该系统能够成功实现Android3.1平板与LPC2142之间的USB 数据通信,传输速率完全满足USB2. 0 全速规范。与传统数据采集系统相比更具优越性,既拥有Android完美的人机交互界面,又兼具LPC2142USB高速采集的优点,具有很强的实用性。为测试该系统运行正常,利用LPC2142发送一组来自麻省理工的心电数据进行测试,为配合Android支持的USB 传输模式,LPC2142 USB按批量传输方式,一次可传送最大包长度为64字节,Android平板也采用批量传输方式,设置的接收时间与LPC2142 的发送时间一致,接收函数是bulkTransfer (UsbEndpoint endpoint,byte[] buffer,int length ,int timeout) 。为说明测试结果,将接收的数据以文件形式存入数据库与原数据进行对比正确,说明测试结果非常标准,测试波形如图7 所示。
图7 心电信号波形图
3 结语
本文介绍了Android平台的系统构成以及基于Android平台平板电脑USB 应用程序的开发和设计,并将这一应用与AMR 平台紧密结合开发出一种新型数据采集系统,即基于Android平台和AMR平台相结合的USB 数据采集系统。可以看出,Android平板电脑在应用程序开发上已与PC相媲美,而ARM7 处理器LPC2142 具有USB 通用串行总线接口,可以进行高速数据采集的处理,该平台具有良好的实用性, 可应用于需要实时高精度测量电参数的领域,而且方便快捷。相信未来随着 Android 技术的不断发展平板电脑应用程序会越来越丰富,应用领域会越来越广。
参考文献:
[1].LPC2142 datasheethttp://www.dzsc.com/datasheet/LPC2142+_844667.html.
[2].ARM7TDMI-Sdatasheethttp://www.dzsc.com/datasheet/ARM7TDMI-S_1231795.html.
[3].LPC2132 datasheethttp://www.dzsc.com/datasheet/LPC2132+_454526.html.
- 基于Android的VoIP系统的设计与实现(03-28)
- 基于Android的QR码识别系统设计(02-09)
- 基于Android 2.3的多媒体播放器软件解决方案(03-11)
- android平台arm指令学习和调试(11-09)
- 基于Android平台移动导航定位的研究与设计(09-12)
- 基于Android平台与Web服务器的课程管理信息系统(09-12)