基于USB控制器的大容量数据采集系统设计
- 格式:pdf
- 大小:243.96 KB
- 文档页数:6
20 基于USB控制器的大容量数据采集系统设计 O八一科技
基于USB控制器的大容量数据采集系统设计
高 节
(火控中心电信室 李海彬
成都 61 1731)
摘要:利用uSB控制器控制u盘实现数据采集,支持FAT32R.件系统,方
便与计算机交互;配合数码管,可以实现采集数据的实时显示和指定存储区域内 数据的查看。 关键词:USB CH374数据采集
1 引言
随着对雷达性能要求的不断提高,保存目标点迹数据及航迹数据等,便于事后回放分 析显得越来越重要。传统雷达一般都利用计算机存储数据,但现代雷达有时因实际应用需
要。不便携带计算机,此时采用小型移动设备保存数据的需求就变得日益迫切。U盘作为 移动存储设备,以体积小、速度高、抗震动、通用性强的特点倍受青睐,因此,在雷达数 据采集系统中开发出嵌入式USB主机控制U盘作为数据存储器,将具有良好的实用价值。
2 USB大容量存储设备协议及分析
基于USB的大容量 数据采集系统的设计, 主要是要实现嵌入式
USB主机。要想设计出 能直接读写U盘的嵌入
式USB主机,就必须理 解USB大容量存储设备 协议。目前USB大容量
存储设备结构如图1所 示。 图1中.虚线左边
部分是主机的驱动程序 结构.也是嵌入式USB UFI| 避
USB传输驱动 CBI/13ulk—Only
USB总线 火容鼋存储设备 (USB外设)
UF1/ATA命令处理
USB传输处理I f存储介质接u
USB总线接几 存储介质
(嫂盘,闪存)
图1
USB大容量存储设备结构示意图 O八一科技 基于USB控制器的大容量数据采集系统设计 2l
主机所要实现的。左边最顶层是FAT文件系统层API,用于提供给用户访问存储设备的
方法。U盘中的数据都是以文件格式存储的,FAT32因具有高度兼容性而被广泛应用于移 动存储设备中。
图1虚线左边中间的UFYATA驱动层将应用程序的访问转换成UFI或ATA命令/数据 格式,与外部存储设备之间按照子规范UFI或ATA的定义进行命令/状态/数据的交换;最
底层则是USB传输驱动,负责将上层的UFI/ATA数据发送到USB总线上以及接收从存储 设备返回的状态,数据。CBI/BulkOnly/ATA/UFI是USB Mass Storage类规范中4个独立的子
类规范的简称。前两个子规范定义了数据偷令/状态在USB上的传输方法。BulkOnly传输
规范仅使用Bulk端点传送数据/命令/状态。CBI传输规范则使用Control/Bulk/Interrupt三 种类型的端点进行数据/命令,状态传送。后两个子规范则定义了存储介质的操作命令。A—
TA命令规范用于硬盘,UFI命令规范是针对USB移动存储而制定的。 2.1 USB传输方式
USB(通用串行总线)用于将USB接口的外围设备(device)连接到主机(host),实 现二者之间数据传输的外部总线结构,是一种快速、灵活的总线接口,USB的传输类型有
控制(contro1)、批量(bulk)、中断(interrupt)和同步(synchronous)传输4种,它最大 的特点是易于使用。即插即用。 控制数据用于在USB接入总线时对其进行配置,其他的驱动软件可以根据具体的应
用来选择使用控制传输,这种数据传输不会丢失数据。 典型的批量数据包括像使用打印机或扫描仪时所出现的大数据量的数据,这种批量数 据是连续的,通过在硬件中实现差错检测功能,并且有选择地进行一定的应进重试操作,
可以在硬件层次上保证数据的可靠交换。 由设备自发产生的数据传输是中断数据传输。这类数据传输可以由USB设备在任意
时刻发起,而且USB总线以不低于设备说明的速率进行传输。 同步数据在产生、传送和处理过程中是连续的和实时的。在稳定的同步数据发送和接收
速率中包含了相应的时钟信息,为了保持定时关系,同步数据必须按照接收的速率进行传输。 2.2 FAT32文件系统结构和存储空间的组织原则
FAT是Microsoft推出的文件系统,具有高度的兼容性,有引导扇区、FAT1表、FAT2 表、目录和文件区组成(其中FAT2表是FAT1表的备份)。磁盘的管理是以扇区为单位 的,而移动存储设备则是以块为单位的,FAT将块映射成扇区,原理相同,FAT将磁盘空
间以一定数目的扇区为单位进行划分,这样的单位成为“簇”。通常情况下,每扇区512 字节的原则是不变的,簇的大小一般是2n(n为整数)个扇区的大小。所以以簇为单位而
不以扇区为单位进行磁盘的分配,是因为当区分容量较大时,采用512字节的扇区管理。 会增加FAT表的项数和大文件存取的消耗,使文件系统效率不高。
引导扇区DBR(DOS Boot Record)通常占用分区的第0扇区,共512字节,FAT表
紧随其后。DBR的第一部分是一个x86跳转指令、厂商标志和操作系统版本号,接下来 的从偏移OxOB开始的是一段描述能够使可执行引导代码找到相关参数的消息.通常称之 为BPB。最后是引导程序代码以及扇区结束标志。BPB中记录了扇区大小、簇的扇区数、
保留扇区数、FAT表大小和文件系统类型等重要参数,用于文件的索引和定位计算。
22 基于USB控制器的大容量数据采集系统设计 O八一科技
3嵌入式USB主控制器设计
3.1硬件设计
系统采用rn公司的DSP芯片TMS320LF2407A作为中央处理芯片,选用南京沁恒电 子公司的CH374S作为USB主机控制芯片。
TMS320LF2407A芯片为TMS320C200系列下的一种定点DSP芯片。可被广泛用于控 制、接口转换以及数据采集等领域。
CH374S是一个USB总线的通用接口芯片,支持USB—HOST主机方式和USB—DE.
VICE/SLAVE设备方式,支持低速和全速的控制传输、批量传输、中断传输以及同步,等时 传输。在本地端,CH374S具有8位数据总线和读、写、片选控制线以及中断输出,因此
CH374S作全速USBHOST主机接口时。外围元器件只需要晶振和电容,就可以方便地挂 接到单片机/DSP/MCU/MPU等控制器的系统总线上。
系统设计中CH374S与TMS320LF2407A的连接采用并口方式。部分原理图如图2 所示。 .
图2.1 CH374的并口连接方式
‘=—一 ———:,
Al 5 l /CS 74HC04 lD+ 叫 l - r ∽ U A0 卜、) CH374 0 r r /RD S D. -I - 厶 0 r 、J /WR >
/INT
图2.2 CH374S与TMS320LF2407A的连接框图 U 盘
渎 写 接
口 O八一科技 基于USB控制器的大容量数据采集系统设计 23
在图2.2中.CH374S芯片的/RD和 R分别连接到DSP的读选通输出引脚和写选通 输出引脚。,CS由DSP的A15脚经74HC04取非后驱动。INT输出的中断请求是低电平有
效,连接到DSP的中断输入引脚,DSP使用中断方式获知中断请求。 当WR为高电平并且/CS和/RD及A0都为低电平时.CH374S中的数据通过D7~DO
输出;当/RD为高电平并且/CS和 R及A0都为低电平时,D7~DO上的数据被写入 CH374S芯片中;当/RD为高电平并且/CS和/WR都为低电平而A0为高电平时,D7~DO
上的数据被作为命令码写入CH374S芯片中。 2.2软件设计
CH374S芯片是纯接口芯片。所以外部的DSP程序较为复杂:但由于减少了内部处理 等中间环节,因此也提高了与DSP之间的接口速度。它占用两个地址位,当A0引脚为高
电平时选择索引地址端口,可以写入新的索引地址,或者读出数据但保持索引地址不变; 当A0引脚为低电平时选择数据端口,可以读写索引地址对应的数据,并且在读写操作完
成后自动将索引地址加1便于继续读写下一个数据。DSP通过8位并口对CH374S芯片进 行读写操作的步骤是:先从索引地址端口写入索引地址,再连续读写若干个数据。 由DSP对CH374S进行读写操作的部分程序如下:
void Write374Byte(UINT8 mAddr,UINT8 mData) //写CH374S
{ PFDATDIR=OX0lO1; //索引口 usbPort=mAddr; //写地址
PFDATDIR=0X0100; asm(“NOP”); usbPort=mData; |{数撮B
fl写数据
UINT8 Read374Byte(UINT8 mAddr)/牍CH374S
{ PFDATDIR=0X0101:
usbPort=mAddr; PFDATDIR=0X0100; asm(“NOP”); //索引口 ,/读地址
//数据口
retum usbPort&Ox00FF:
) 设计文件系统,就是在指定的存储介质上,选择一种或几种数据组织方式,实现常用 的几个文件API函数功能,最终实现数据的按名存取。因此文件设计的操作步骤可按如
下方式进行: ①创建文件。在FDT中申请新目录项。
②写文件。当写一新文件时,需在FAT表中查找未使用的簇,并将该簇号写入文件 24 基于USB控制器的大容量数据采集系统设计 O八一科技
对应目录数据结构中的起始簇号位置。当此文件长度大于一簇时,还需在FAT表中对应
的起始簇号位置填入下一可用簇的簇号,直到文件的最后一簇(FAT表中的相应位置填 FFFF)。若磁盘有备份FAT,则须在备份FAT表的相应位置填入正确的内容。 软件流程图如图3所示:
图3创建文件并向其中写入数据流程图
4大容量数据采集系统
图4 系统结构框图 O八一科技 基于USB控制器的大容量数据采集系统设计 25
应用在某雷达中的大容量数据采集系统就是以嵌入式USB主控制器为主体进行设计
的。其设计框图如图4所示。 系统通过Rs422接口与雷达进行数据交换,将接收到的数据经DSP处理后,由
CH374S驱动。存入可插拔的U盘中。同时,存入的数据可通过数码管实时地进行显示。 系统中的按键开关可以经DSP通过RS422向雷达发出不同的指令,以控制雷达完成各项
功能;指示灯则能根据雷达传送来的数据随时显示雷达的工作状态。此外,系统还具有 RS422/R¥232转换功能,可直接与计算机串口进行通信。 由于本系统采用CH374S作为USB主机接口芯片且采用FAT32文件系统存储数据,
因此能支持的U盘最大容量为100GB,即最多能采集100GB的数据。并且支持1.5Mbps
低速和12Mbps全速USB通讯,相对于普通串IZl来说,传输速率已经非常快了。 综上所述,利用本系统可将雷达处理后的目标相关信息直接保存到U盘中,操作方
便,便于携带,也便于事后对数据的回放及分析,必要时还可通过此系统让雷达与计算机 直接进行通信。
结语
通过基于CH374S实现的USB主控制器接口,再加上一些必要的外围器件,可以方 便地构筑多种不同功能的数据存储系统。如地下矿井信息采集系统。可以在进入矿井之前 通过传感器采集矿井中温度、瓦斯浓度之类的信息存人U盘,经安全因素分析后再让人 下井作业,避免矿井事故的发生。又如轻轨铁路、家庭老人健康监测仪等,也可采用本系