APP下载

一种USB接口的数据采集卡的设计

2015-10-18林宏泉秦会斌杭州电子科技大学新型材料与器件研究所浙江杭州310018

网络安全与数据管理 2015年12期
关键词:枚举描述符采集卡

林宏泉,秦会斌(杭州电子科技大学 新型材料与器件研究所,浙江 杭州310018)

一种USB接口的数据采集卡的设计

林宏泉,秦会斌(杭州电子科技大学新型材料与器件研究所,浙江杭州310018)

随着电子信息技术和计算机技术的高速发展,数据采集应用越来越广泛。提出了一种基于USB接口的数据采集卡的设计解决方案。采用PIC16F886单片机为主控制芯片,PDIUSBD12为USB的接口芯片。给出了采集卡的设计整体框图,并介绍了采集卡的硬件电路设计以及固件程序设计。所设计的USB接口的数据采集卡电路简单、性能稳定,支持即插即用。

数据采集;USB接口;PIC16F886;PDIUSBD12

0 引言

工业生产和科研领域往往都需要对重要数据进行采集,为提高产品质量、降低成本提供信息和手段[1]。随着计算机外部设备的普及,微机技术和电子信息技术的快速发展不断对数据采集系统提出新的要求。基于传统总线的采集卡存在的安装繁琐、传输速率低、可挂载的设备少等问题,制约着数据采集系统的发展。由于USB总线在支持即插即用、数据传输快、性价比高等方面具有优势,本文提出了一种USB接口数据采集卡的设计,有效地解决了传统总线面临的问题。

1 采集卡设计整体框图

USB接口的数据采集卡的整体设计框图如图1所示。数据采集卡的硬件电路选择PIC16F886单片机作为主控制芯片,PDIUSBD12芯片作为 USB的接口芯片,A/D转换模块使用单片机内部的10位AD转换模块。

图1 系统的硬件框图

系统的硬件部分需要完成与PC端之间的USB数据通信,PC需要识别插入的USB接口的数据采集卡并完成相关的配置。PC对USB采集卡的识别过程,需要对USB接口的采集卡进行枚举。

2 硬件电路设计

2.1PIC16F886芯片介绍

PIC16F886单片机是Microchip公司推出的支持精简指令集(RISC)的8位嵌入式微控制器[2]。PIC16F886共有 28个引脚,支持PDIP、SOIC和SSOP封装。它具有8 096B的程序存储器和256B的EEPROM数据存储器,有11个通道的10位模数A/D转换器,带有同步异步收发发送接收器USART等。

本文选择此单片机作为本系统硬件设计的主控制器,它具有如下优势:PIC16F886采用的是精简指令集RISC的结构,只有35条指令,程序的执行效率和执行速度大大提高;PIC16F886具有良好的开发环境,支持在线编程,便于单片机的在线调试和开发,减少了开发时间;PIC16F886有8 096 B的程序存储空间,因为USB协议框架移植较大,它可以进行USB协议的单片机固件编程;PIC16F886有28个引脚,分别有PortA(RA0:RA5)、PortB、PortC、PortD共24个,作为I/O端口;另外,有11个通道的10位A/D转换模块,可以作为采集卡的数据采集的通道。

2.2PDIUSBD12芯片介绍

本文的USB接口的数据采集卡设计选择Philips公司的PDIUSBD12芯片作为USB接口芯片,其引脚图如图2所示。

图2 PDIUSBD12的引脚图

PDIUSBD12芯片是一款性价比高的USB接口控制芯片,该芯片提供了标准的外围接口,包括8位的数据并口,可以灵活设计与其他单片机连接,协同处理USB协议和数据交换,缩短了USB的开发周期,减少了开发成本,是USB外围通信电路方案中较为简单和经济的解决方案[3]。它还支持直接存储器寻址的DMA传输,便于高速的数据传输。PDIUSBD12芯片也是符合USB2.0协议的,支持低速和全速模式下的数据传输。PDIUSBD12芯片支持各种USB外设,包括外部存储设备、打印设备、扫描设备等。此外,PDIUSBD12的挂起功耗低可以应用于总线供电的外设,可以满足对USB电源管理的要求。

PDIUSBD12芯片使用8位并行的数据口与外部的PIC16F886主控制器连接,支持5V的逻辑电平;内置电压调整器,可以选择使用3.3V和5V的电源为设备供电;内置PLL锁相环,外部时钟频率使用6MHz;具有软连接和数据指示灯功能,能够模拟USB的断开连接,并通过指示灯反馈;此外还包括了模拟收发器、串行搜索引擎、存储器管理单元和DMA接口等。

2.3USB接口电路

图3USB接口电路

图3所示为PIC16F886主控制器与PDIUSBD12的USB接口芯片的电路连接图。从图中可知,PDIUSBD12的8位数据并口与PIC16F886的PORTC引脚相连接,A0引脚与MCU的RA4连接,WR_N和RD_N脚分别与MCU的RB5和RB4连接,INT_N脚与MCU的RB0连接,ALE、CS_N和SUSPEND引脚接地。通过PIC16F886的一个IO口RA4与PDIUSBD12的A0引脚连接,来设置8位的数据并口是命令地址还是数据地址,A0为低电平,则为数据地址;A0为高电平,则为命令地址。通过PIC16F886的两个IO口,RB4和RB5与PDIUSBD12的读写选通引脚连接,模拟数据和命令的读写时序,进行数据的交换。此外,PDIUSBD12的外部晶振频率选择4MHz;D+与D-引脚与USBA型接口的D+和D-数据线对应连接;3.3V电压调整输出端口接地,使用5V电源供电;CLKOUT和DMREQ引脚不使用,悬空。当USB设备上电之后,PWR的LED电源指示灯会一直亮着。在USB设备的枚举过程中,USB的数据流指示灯会间歇闪烁,直到成功枚举和配置之后,会常亮。USB接口的数据采集卡的采集通道使用了PIC16F886其中的8个通道,分别为ADC0~ADC7。

2.4PCB图

图4所示为USB采集卡的PCB图,其中PCB图利用Altium Designer绘画。

图4 USB数据采集卡PCB图

3 固件程序设计

单片机PIC16F886的固件程序设计的主要内容包括了对单片机参数和PDIUSBD12端点模式的初始化程序、USB设备枚举过程中与PDIUSBD12之间的数据交换程序、数据采集程序。固件编程的目的是为了让PC端的USB主机识别USB接口的数据采集卡,并知道USB接口的数据采集卡的类型和功能,完成数据的采集、处理和传输。主控制器PIC16F886需要协同USB接口芯片PDIUSBD12完成数据采集卡的枚举,对此需要单片机进行固件程序编程[4],将USB接口的数据采集卡的相关描述符信息报告给PC端的USB主机,实现PC端与采集卡之间的USB通信,来为USB接口的数据采集卡的枚举提供底层的软件支撑,这是在USB接口的数据采集卡的软件设计中必要的环节。

在USB系统初始化之后,PC端的USB主机开始控制传输过程,需要对USB接口的数据采集卡进行枚举,PC端的USB主机获取描述符和设置地址的流程图,如图5所示。

获取描述符的程序类似,下面以获取设备描述符为例,给出获取设备描述符部分程序[5]:

图5 获取描述符和设置地址流程图

//按sendDataSize大小发送pBuffer中的数据

A design of USB interface of data acquisition card

Lin Hongquan,Qin Huibin
(Institute of Electronic Device and Application,Hangzhou Dianzi University,Hangzhou 310018,China)

With the rapid development of electronics and information technology and computer technology,applications of data acquisition become more and more wide.A design of USB interface of data acquisition card is proposed in this paper.The PIC16F886 microcontroller is selected as the main control chip and the PDIUSBD12 chip is selected as the USB interface chip.The design of the overall block diagram of the acquisition card is described.Also the hardware circuit design of the card and the firmware programming design of the card are introduced.USB interface of data acquisition card designed in this paper is simple and stable,and supports Plug and Play.

data acquisition;USB interface;PIC16F886;PDIUSBD12

TP360.2

A

1674-7720(2015)12-0027-03

猜你喜欢

枚举描述符采集卡
基于理解性教学的信息技术教学案例研究
高精度AD采集卡性能测试及评价方法研究
基于结构信息的异源遥感图像局部特征描述符研究
基于AKAZE的BOLD掩码描述符的匹配算法的研究
血液采集卡存储装置的设计与应用
数组在处理枚举无规律数据中的应用
基于深度学习的局部描述符
面向数控机床的多通道传感数据采集卡设计
并行高速采样在地震物理模拟采集中的应用
特征联合和旋转不变空间分割联合的局部图像描述符