CH375接口

2024-05-10

CH375接口(精选四篇)

CH375接口 篇1

在纺织机上,为了更好地管理和分析数据信息,常常需要把纺织系统的数据上传给PC机,因此需要两者之间进行数据通讯。通常的通讯方式是基于RS232接口的串行通信。这种通信方式依赖于PC机环境,给数据的传输带来很大的不便。基于ARM的CH375接口U盘读写方案,以U盘作为中间数据的传输介质,它克服了对PC机的依赖,可以方便快捷地传输数据。U盘作为便携轻巧的存储设备已在PC机领域得到非常普遍的应用,但在嵌入式系统中的应用潜力需进一步的开发。

本文给出了一种基于ARM处理器AT91FR40162实现CH375接口读写U盘的软硬件设计方案与实现方法。

1 系统组成和工作原理

系统框图如图1所示。

2 硬件设计

2.1 AT91FR40162简介

AT91FR40162的片上资源包括:ARM7TDMI处理器核、16Mbit的Flash存储器和2Mbit的片内SRAM、高速片内SRAM使得性能高达63MIPS,比外部SRAM实现大大降低了功耗。完全可编程的外部总线接口EBI、32个可编程的I/O口线、具有8个优先级且可以独立屏蔽的向量中断控制器、3通道的16位定时器/计数器、2通道同步/异步收发器USART、可编程的看门狗定时器、先进的省电特性、完全静态的操作。I/O工作范围2.7~3.6V,内核工作范围1.65~1.95V,运行温度范围-40~85℃,封装形式为121-ball 10mm×10mm×1.2mm的BGA封装,这些特点使以微处理器AT91FR40162为核心的硬件设计比较简洁,稳定性和性价比大幅提高[1]。

2.2 硬件电路

图2给出了AT91FR40162控制器读写U盘的电路原理图,如果CH375芯片的TXD引脚悬空或者没有通过下接电阻接地,那么CH375工作于串口方式。在串口方式下,CH375只需要与控制器连接3个信号线,TXD引脚、RXD引脚以及INT#引脚,其他引脚都可以悬空。CH375的串行数据格式是1个起始位、9个数据位、1个停止位,其中前8个数据位是一个字节数据,最后一个数据位是命令标志位。第9位为0时,前8位的数据写入CH375芯片中,第9位为1时,前8位被作为命令码写入CH375芯片中。CH375的串行通讯波特率默认是9600bps。CH375芯片支持5V和3.3V电源电压,因AT91FR40162控制器供电电压为3.3V,所以在此选择3.3V电源电压的芯片CH375。

3 软件接口

3.1 AT91集成函数库

AT91库是一套用C语言和汇编语言编写的源代码模块以及一些项目文件[3]。这些代码集为AT91芯片及其扩展的片内外围的结构提供软件支持,并提供了建立在其结构定义上的驱动函数,使AT91开发者可以快速而方便地对芯片及其外围进行访问控制。

3.2 程序设计

AT91FR40162控制器与CH375的通信主要是控制器给CH375发命令和数据来完成的,而CH375给出许多常用的命令及操作状态的代码,在ADS编译环境下,首先把CH375文件系统库包含到项目中,如图3所示。CH375提供了U盘文件级子程序库,ARM可以直接调用子程序读写U盘的文件数据。

系统上电后,且U盘已经插入,此时ACT端的USB主机方式下的设备连接状态输出低电平,指示灯亮。程序开始对ARM和CH375进行相关初始化。主要设置USART的通讯参数、中断模式、中断优先级、初始化CH375程序库和CH375芯片。调用ARM自带库函数at91_usart_open(),at91_irq_open()实现串口通讯配置和中断模式及优先级设置。根据CH375提供的系统文件库,以写操作为例,程序流程图如图4。写入U盘数据的源程序如下:

4 结束语

本方案以U盘作为传输媒介,解决了传统纺织机数据存储时对PC机的依赖,而且传输速度快、易用、可扩展。AT91库函数和CH375提供的U盘文件级子程序库,提高了程序设计和编写的效率。

参考文献

[1]马忠梅,徐英慧,叶勇建,等.AT91系列ARM核微控制器结构与开发[M].北京:航空航天大学出版社,2003

[2]南京沁恒电子有限公司.USB总线接口芯片CH375[EB/ OL].http://www.winchiphead.com/download/CH375/ CH375DS1.PDF.2005

CH375接口 篇2

摘要:CH371是一种新型USB通用总线接口芯片。利用该芯片可在不了解任何USB协议或固件程序甚至驱动程序的情况下,轻松地将并口或串口产品升级到USB接口。文中介绍了该接口芯片的主要特点和引脚功能,给出了CH371与其它总线进行接口的几种应用电路,同时给出了CH371与MCS-51单片机的接口程序。

关键词:USB  总线接口芯片  CH371  单片机

1 引言

CH371是一种USB总线通用接口芯片。该芯片具有8位数据总线以及读、写、片选控制线和中断输出,可以方便地挂接到单片机、DSP、MCU等控制器的系统总线上;在计算机系统中,通过CH371的配套软件可提供简洁易用的操作接口,从而使其与本地端的单片机通讯就如同读写硬盘中的文件一样简单。由于CH371屏蔽了USB通讯中的所有协议,因而可在计算机应用层与本地端控制器之间提供端对端的连接。在不需要了解任何USB协议或者固件程序甚于驱动程序的情况下,就可轻松地将并口、串口产品升级到USB接口。

(本网网收集整理)

CH371的主要特点如下:

●屏蔽了USB协议,可在计算机应用层与本地端之间实现端对端的连接。

●具有单向数据流和请求加应答两种通讯模式,并支持伪中断。

●可自动完成USB配置过程,完全不需要本地端控制器作任何处理。

●采用标准的USB1.1接口,即插即用,D+引脚内置上接电阻。

●内置4个端点,支持USB的控制传输、批量传输、中断传输。

●带有通用Windows驱动程序,可提供设备级接口和应用层接口。

●具有通用本地8位数据总线,可用4线控制读选通、写选通、片选输入和中断输出。

●占用16个地址,可选择直接地址方式或者复用地址方式。

●内置输入输出缓冲区,能以中断方式通知本地端控制器传输数据。

●内置I2C主接口,因而应用层可以直接读写外挂的I2C从设备。

●在主控方式下可以提供16根据输入信号线或12根独立控制的输出信号线。

●内置上电复位电路,可提供高电平有效复位输出和低电平有效复位输出。

●内含可选的看门狗电路Watch-Dog,能为本地端控制器提供监控。

●具有DIP28、SOP28、DIP24、CHIP等多种封装形式。

2 引脚功能

CH371的引脚排列如图1所示,表1所列是其引脚功能。

表1 CH371的引脚功能

28脚封装

的引脚号24脚封装

的引脚号引脚名称类  型

引  脚  说  明

2824VCC电源电源正端129GND电源接地1411XI输入晶体振荡输入端,带偏置电阻1310XO输出晶体振荡反相输出端107D+双向USB D+数据线,内置上拉电阻可控118D-双向USB D-数据线96OFF输入用于关闭D+上位电阻,高有效,带下拉22151912D7D0双向8位双向数据总线,带上拉,可直接输入和独立控制输出44RD输入读选通输入,低有效,带上拉,同时用于看门狗的清除输入33WR输入写选通输入,低有效,带上拉2723CS输入片选输入,低有效,带下拉22ALE输入地址锁存使能,高有效,带上拉,在下降沿可锁存数据总线的复用地址11INT输出中断输出,传输成功,低有效585部分支持A3A0双向4位地址输入线,带上拉,可直接输入和独立控制输出2421SCL输出I2C接口时钟线2320SDA双向I2C接口数据线,开漏输出,带上拉2522RST输出上电复位和看门狗复位,高有效26不支持RST输出上电复位和看门狗复位,低有效

3 应用

3.1 与USB总线的连接

图2是CH371与USB总线的接口连接电路,CH371芯片可以直接使用USB总线的5V电源。电容C3和C4用于电源退耦;将电阻R1和R2串接在CH371与USB总线之间可进行阻抗匹配;晶振X1、电容C1和C2用于CH371芯片的.时钟振荡电路。CH371芯片的SCL和SDA信号线可以直接连接I2C接口的从设备,如连接24COX器件以用来存储系统断电后不能丢失的重要数据,也可以存储身份识别数据、记费数据等,由于24COX中的数据只有计算机应用层才能够存取。

3.2 与单片机的接口电路

CH371芯片具有通用的被动并行接口,可以直接连接多种单片机、DSP和MCU。图3所示是CH371与MCS-51系列单片机的接口电路,CH371可通过D7~D0、RD、WR、CS、ALE直接挂接到AT89C51的系统总线上。连接ALE而不连接A3~A0则采用复用地址方式,连接A3~A0而不连接ALE则采用直接地址方式。当采用复用地址方式时,CH371的A3~A0脚空闲,此时可以参考主控方式将A3~A0用于LED驱动或状态输入等;当采用直接地址方式时,应该将CH371芯片的ALE引脚悬空或者接高电平,然后通过A3~A0直接输入地址。该电路中,CH371可向AT89C51提供上电复位信号RST。CH371的中断输出INT连接到U2的外部中断INTO,反相器U5用于简单的地址译码,SRAM器件62256的地址为8000H-FFFFH,CH371的地址为0000H-7FFFH(实际只需要16个地址)。

3.3 主控方式应用

图4是CH371在主控方式下的应用电路。该电路实际是基于CH371的主控方式设计的8通道数据采集器。可以看出:包括CH371在内,该电路只用到了三个集成电路,并且不需要任何单片机、DSP、MCU等控制器。CH371芯片的双向引脚A3~A0应该设置为输出,其中A3用于以低电平启动模数转换,A2~A0用于选择采集通道,双向引脚D7~D0应该设置为输入,用于输入采集到的结果,CS、ALE用于输入采集状态。实际电路应该采用精确的参考电压,并添加辅助电路(如电源退耦电容等)。另外,也可以用自带多通道选择器的模数转换芯片来代替U6和U7,如8通道AD芯片MAX158等。

3.4 与单片机的接口程序

下面是U2(MCS-51单片机)与U1(CH371)的接口参考程序:

;* * * * * * * * * * * * * * * * * * * * *

;需要主程序定义的参数

;CH371_PAGE EQU 00H;CH371所在的页面地址,地址译码后自动片选

;CH371_SYSTEM EQU 02H;CH371系统功能设定寄存器的地址偏移

;CH371_CONFIG EQU 02H;CH371设备配置信息寄存器的地址偏移

;CH371_INT_SET EQU 06H;CH371中断数据设定寄存器的地址偏移

;CH371_STATUS EQU 06H;CH371传输状态信息寄存器的地址偏移

;CH371_LENGTH EQU 07H;CH371数据长度寄存器的地址偏移

;CH371_BUFFER EQU 08H;CH371O数据缓冲区的起始地址偏移

;SAVE_STATUS DATA 29H;保存传输状态信息,根据需要可选

;SAVE_LENGTH DATA 2AH;当前数据缓冲区中的长度,用于保存下传长度

;SAVE_BUFFER DATA 30H;数据缓冲区,用于保存接收到的下传数据

;* * * * * * * * * * * * * * * * * * * * *

;初始化子程序

;USE:ACC,DPTR

CH371_INIT:MOV DPH,#CH371_PAGE

;CH371所在的页面地址,地址译码后自动片选MOV DPL,#CH371_LENGTH;CH371数据长度寄存器的地址偏移

图3

MOV A,#OFH

MOVX @DPTR,A;置上传数据长度寄存器为15,暂时没有数据上传

CLR A;尚未有数据下传

MOV SAVE_LENGTH,A;保存下传数据长度

SETB ITO;置外部信号为下降沿触发

CLR IEO;清中断标志

SETB PXO;置高优先级

SETB EXO;允许中断

RET

;上传数据子程序

;ENTRY:RO指向存放了准备上传数据的缓冲区,R7准备上传的数据长度0至8

;USE:ACC,B,R0,R7,DPTR

CH371_UPLOAD:MOV B,R7;将数据长度暂存到B中

MOV DPH,#CH371_PAGE;CH371所在的页面地址,地址译码后自动片选

MOV DPL,#CH371_BUFFER;CH371数据缓冲区的起始地址偏移

MOV A,R7;上传数据长度

JZ CH371_UPLOAD_O;数据长度为0则不必写入

CH371_UPLOAD_1:MOV A,@RO;读取一字节的数据

INC RO;指向下一个数据的地址

MOVX @DPTR,A;写到CH371的上传数据缓冲区

INC DPL

DJNZ R7,CH371_UPLOAD-1;继续读取上传数据直至结束

CH371_UPLOAD_0:MOV DPL,#CH371_LENGTH;CH371数据长度寄存器的地址偏移

MOV A,B

MOVX @DPTR,A;将本次数据的长度置入上传数据长度寄存器

RET

;中断服务子程序

;USE:堆栈6字节,工作寄存器组1的RO,R7

CH371_INTER:PUSH PSW;现场保护

CLR IEO;清中断标志,防止重复执行,对应于INTO中断

PUSH ACC

PUSH DPL

PUSH DPH

SETB RSO;PSW.3,切换至工作寄存器组1

MOV DPH,#CH371_PAGE;CH371所在的页面地址,地址译码后自动片选

MOV DPL,#CH371_STATUS;CH371传输状态信息寄存器的地址偏移

MOVX A,@DPTR;读取传输状态信息寄存器

MOV SAVE-STATUS,A;保存传输状态

MOV DPL,#CH371_LENGTH;CH371数据长度寄存器的地址偏移

JB ACC.0,CH371_INT_UP;传输状态信息寄存器位0为1,则指示上传完成

;是数据下传完成中断

MOVX A,@DPTR;读取下传数据长度寄存器

MOV SAVE_LENGTH,A;保持下传数据长度

JZ CH371_INT_RET ;下传数据长度为0,则直接退出中断

MOV DPL,#CH371_BUFFER;CH371数据缓冲区的起始地址偏移

MOV RO,#SAVE-BUFFER;单片机内部的数据缓冲区,用于存放下传数据

MOV R7,A ;用于读取数据的计数

CH371_INT_DOWN:MOVX A,@DPTR;读取一字节的下传数据

INC DPL ;指向下一个数据的地址

MOV @RO,A;保存到数据缓冲区

INC RO

DJNZ R7,CH371_INT_DOWN;继续读取下传数据直至结束

SJMP CH371_INT_RET ;接收完下传数据,退出中断

;是数据上传完成中断

CH371_INT_UP:MOV A,#0FH;15

MOVX @DPTR,A ;置上传数据长度寄存器为15,暂时没有后续数据

CH371_INT_RET: ;中断返回

POP DPH

POP DPL

POP ACC

POP PSW ;恢复寄存器并选择工作寄存器组0

RETI ;中断返回

;* * * * * * * * * * * * * * * * * * * * *

4 结束语

CH371芯片具有通用的被动并行接口,可以直接连接多种单片机、DSP、MCU等。可以预见,CH371将在USB产品设计中大显身手。

★ 应用写作

★ 应用科技大学

★ 应用英语简历

★ 应用电子技术论文

★ 应用公文写作范文

★ 应用写作求职信范文

★ 比应用说课稿

★ 应用韩语个人简历

★ STL应用论文

CH375接口 篇3

摘要:针对如何保证音频数据流畅的问题,在音乐播放器系统设计中使用了一种新型接口芯片CH378.系统主要由微处理器(MPU) STC12C5A60S2,音频文件存储器U盘、SD/TF卡,音频解码芯片VS1003等组成,在分析U盘接口芯片的基础上,采用新型接口芯片CH378实现对U盘,SD/TF卡直接管理,设计了CH378接口电路,介绍了CH378操作的主要过程,程序设计要点.CH378以其具有大的数据缓存RAM,可以与MPU并行接口,支持FAT文件操作等优点,使系统结构设计得到优化,操作方便,避免了音频播放中音频数据流堵塞现象,音乐播放流畅.

关键词:接口芯片CH378;U盘,SD/TF卡;音乐播放器

DOI:10.15938/j.jhust.2015.05.020

中图分类号:TN912.3

文献标志码:A

文章编号:1007-2683(2015)05-0103-05

0 引言

目前市场上很多种便携式的音乐播放器很受欢迎,但是受到存储容量的限制,因此出现了解码器与存储器分离的要求,以加大存储扩展,同时USB接口因其方便快捷的特点得到众多领域广泛的应用.音乐播放器也逐渐发展能够直接识别U盘,但是有的不能识别SD卡,或者在与SD卡连接时多通过串行输入(RXD)、串行输出(TXD)或者SPI等方式,这些方式增加了MPU的负担,操作也比较繁琐,本设计采用一种新型接口芯片CH378,实现MPU对U盘和SD卡的操作.与之前的CH375不同,CH378支持直接与SD/TF卡的连接,所以嵌入式系统的MPU可以通过CH378,将U盘(USB闪存盘、USB外置硬盘)和SD/TF卡作为可移动的大容量存储器,通过CH378操作命令,可以实现对U盘和SD/TF卡上的文件进行操作,而不需要详细了解USB通信协议,具有成本低、方便快捷、可利用性高、可靠性好等优点.

1 系统设计方法

1.1 芯片CH378简介

作为存储器文件管理芯片,CH378支持MPU系统可以快速方便的对U盘、SD/TF卡中的文件进行读写.CH378支持USB主机方式,内部集成了处理海量存储设备(Mass-Storage)的专用通讯协议的固件、FAT16和FAT32以及FAT12文件系统的管理固件、USB和SD/TF卡的通信接口固件,并且支持常用的各种USB存储设备.其良好的兼容性涵盖了各种U盘/USB硬盘/USB闪存盘/USB读卡器,以及各种SD卡,包括标准容量SD卡和高容量HC-SD卡以及协议兼容的MMC卡和TF卡.MPU可以通过这3种通信接口中任何一种,实现对CH378芯片控制,对U盘或者SD卡中的文件操作,并与单片机(MPU)进行通信.CH378芯片有两种型号CH378L和CH378Q,分别具有128和64管脚脚,应用框图如图1.其中CH378L还同时支持SPI接口、8位并口、异步串口3种通讯接口.

1.2 芯片比较选择

CH375芯片支持DEVICE设备方式和HOST主机方式,内部有数据缓冲区、主从USB接口、被动并行接口、异步串行接口、控制传输的协议处理器、通用的固件程序等.虽然CH375可以很方便地与USB设备通信,但是其不能与SD卡直接连接.MPU通常是通过SPI总线与SD卡相连,在程序设计上,要具有嵌入式文件系统,比如ZnFAT,对SD卡上的文件操作.工作量较大,并且文件系统需要占用大量内存.作为改进的接口芯片CH376是一个通用的USB-HOST硬件接口芯片,而且内置了Bulk-Only协议传输固件程序,内置了相关的USB底层传输固件程序,FAT文件系统管理固件程序,所以实际的单片机程序只需要发出读写命令即可完成对U盘和SD卡的操作,虽然CH376较CH375有了较大的进步,但其上没有数据缓存RAM.为了保证音频播放中,音频文件数据流传输流畅性,接口芯片的数据缓存是必要的.CH378具有20K的RAM,适合应用在在音乐播放系统设计中.本设计采用CH378L则支持12 Mbps全速和480 Mbps高速USB通信,外围元器件只需要晶体和电容.自动检测USB设备或SD卡的连接和断开,提供设备连接和断开的事件通知.提供SPI主机接口,支持SD卡以及TF卡等,支持容量高达32GB的U盘和SD卡,具有大的存储空间,不仅更加方便快捷,而且播放音乐更加流畅.

2 硬件电路设计

2.1 系统总体设计

本设计MPU采用STC12C5 A60S2为系统控制芯片,CH378L作为U盘,SD/TF卡接口芯片,利用并口方式进行连接方式.CH378L并口数据可以直接与MPU数据相连,通过CH378L读取U盘或SD/TF卡上的音频数据,并将其按照操作时序,传输给频解码器VS1003,VS1003对音频文件数据进行解码,输出音频信号驱动音箱,实现音乐播放.系统总体框图如图2.

2.2 接口电路设计

CH378L与MPU共有并口,串口,SPI3种通信方式,如果需要将CH378 L配置为并口方式,那么TXD引脚应该悬空,SEL引脚应该接地.接口引脚包括有AO、PCS#、RD#、WR#、DO-D7、INT#.

如果需要将CH378L配置为SPI串行通讯方式SPI,那么SEL引脚应该悬空,TXD引脚应该接地.该接口与MPU通信,连接的引脚包括SCS、SCK、SDO、SDI、INT#.如果需要将CH378L配置为异步串口通信方式,那么TXD引脚和SEL引脚应该都悬空.该接口与MPU通信的引脚有TXD、RXD、INT#.CH378L的接口电路如图3所示.

MPU与CH378L以并口的方式进行操作,速度更快,在并口方式下,通过CH378L的状态端口即INT#引脚,获取接口状态,为0时表示有中断请求.并口信号线包括:地址输入引脚AO、片选输入引脚PCS#、读选通输入引脚RD#、写选通输入引脚WR#以及8位双向数据总线D7~DO. CH378L与SD/TF卡是通过SD_IN,SD_WP,SD_CS,SD_CK,SD_DO,SD_DI这些信号线连接的.CH378L与U盘接口总线包括SV电源线,地(GND)线,和一对数据信号线UD -与UD+连接.接口电路如图4所示.

CH3781.芯片的PCS#可以由地址译码电路产生,也可以占有一个I/O线.CH378L芯片的RD#引脚和WR#引脚可以分别连接到单片机的读选通输出引脚和写选通输出引脚,表1为并口I/O操作的真值表(X代表不关心此位,Z代表CH378L高阻态)

2.3 音频解码VS1003接口电路

VS1003通过串行总线SPI与主机进行控制和数据信息的交换,并且SPI总线有两种功能特性:串行控制接口(SCI)和串行数据接口(SDI).VS1003芯片主要通过这两个接口来接收主机传送过来的控制命令和音频数据.其中SCI的数据传输长度固定为16位,通过对SCI接口的16个位寄存器进行读写操作来控制.系统开始运行后,单片机将歌曲的信息传送到VS1003解码芯片中.音频解码模块对单片机从U盘或者SD卡里读取的数字音频数据流进行解析,并转换成模拟信号进行输出.

3 系统软件设计

由于CH378L内置了USB控制传输的协议处理器,内置FAT16和FAT32以及FAT12文件系统的管理固件,支持Bulk-Only传输协议和SCSI、UFI、RBC或等效命令集的USB存储设备,MPU可以通过CH378L直接读取U盘和SD卡中的音频文件信息.CH378L芯片包含的主要常用文件管理控制类命令码如表2所示.

MPU在FAT规范下通过文件的形式存取U盘中的数据,且实际的单片机程序只需要发出文件管理和文件读写命令.由于使用通用I/O模块并口读写时序,所以首先进行初始化CH378L_PORT_INIT(),如果通过PC机监测系统工作状态,需要通过串口调试窗口进行,对系统串口进行初始化mlnitSTDIO(),初始化CH378L芯片后查询CH378L中断并更新中断状态,等待U盘或SD卡的插入,需要注意的是,对于某些U盘必须检查U盘是否准备好,查询完磁盘的容量后就可以开始操作U盘或SD了,具体程序操作过程为:对于U盘上的某子目录,寻找文件,如果没有发现该子目录,则对根目录下各音频文件(这里以mp3文件为例),进行枚举打开,并通过串口调试窗口显示.之后对找到的mp3文件信息进行显示.

4 实验结果测试

音乐播放过程在于,MPU对SD卡/U盘以文件形式访问,前面重点论述的,为采用CH378L接口芯片的实现方案,当MPU读取了SD卡/U盘上的音频数据,只有按照正确的方法将音频文件,比如MP3文件发给VS1003,音乐才能正确播放出来.MPU通过SPI串行总线对音频解码芯片VS1003进行操作.VS1003等待接收MPU从SD卡/U盘上读取的MP3文件数据流.以U盘为例,从U盘读出MP3文件到MPU的缓冲区,缓冲区的大小设置为512Byte,然后将数据发往VS1003. VS1003内置有32Byte的数据缓冲区,MPU可以发送一组32Byte的数椐,然后检测DREQ,当DREQ为低停止等待发送,只有当DREQ为高时,才可以送下一组32Byte的数据.为了实现音乐播放的连续性,MPU要保证音频数据流不间断,要保持对U盘音频文件数据的读取,并且按32Byte -组数据,按上述操作发送给VS1003,直到把整个音频文件发完为止,完成一首音乐的完整播放.流程如下:

1)打开一个指定的MP3文件;

2)读一个扇区数据( 512Byte);

3)发32Byte的数据到VS1003;

4)检测DREQ,当DREQ为高时发下一个32个printf(”lFFFile MP3%s\n”,Ptr);delayx(50);while(*Ptr!=,\0'Ptr++;Ptr++;}}

程序流程图如图5.字节的数据;

5)是否发完512Byte,否,则回到3);

6)是否发完打开的MP3文件,否,则回到2);

7)关闭打开的文件.

对关键的系统硬件电路器件进行调试,测试CH378L,VS1003,确认硬件电路正常,并将U盘/SD卡插入.在Keil version4环境下,采用C语言对相应的功能进行了软件调试,编译连接,通过ISP软件,将程序代码下载到STC12C5A60S2.此时系统开始对U盘/SD卡操作,读取音频文件信息,在串口调试窗口可以观察得到调试信息,如图6.这些显示的信息表明,CH378L,已经正常工作,并检查U盘,总容量为3899MB,对存储在其上的音频文件进行的查询,总共有14个文件.之后系统进行音乐播放.

5 结论

基于CH375的智能数据采集卡 篇4

关键词:ARM7,USB2.0,CH375,数据采集卡,U盘

0 引 言

数据采集是现代电子系统中不可缺少的重要组成部分,在测量、制造、自动控制等场合都需要高质量的信号采集环节,由于ADC技术和微控制器技术的相对成熟,基于PCI,ISA等接口的数据采集卡被广泛地应用在众多科研和工控领域。在测试技术日益变革的今天,测试任务更加复杂多变,需要采集和处理的信息量更加冗长,同时要求测试环节与计算机的接口更加无缝化和标准化,基于虚拟仪器技术(Virtual Instruments)[1]和高速USB 2.0接口的数据采集有着更为广泛的应用前景和市场,是当前测试技术研究的热点之一[2]。

以运算速度更快,位数更宽,资源更为丰富的ARM处理器作为控制核心,配合USB 2.0数据传输和灵活的上位机软件,新一代的数据采集卡已经不再局限于单一的板卡形式,可以通过连接线独立于计算机之外,根据测试任务的需求,满足高精度、高速率、多功能的测试指标。同时由于采用了高性能的ARM处理器,控制程序容量加大,方便实现数据采集的独立化、智能化、多样化,摆脱数据采集系统对上位机运算能力的依赖,从而开发出全新的智能数据采集卡。

1 系统原理及框图

整个系统的组成框图如图1所示。被测电压信号经过前置调理送到AD7685进行采样,由Atmega48的SPI驱动AD7685,采集到的双字节(16 b)数据由Atmega48并口,分两次传送给ARM ADuC7026核心。当数据采集卡工作于联机状态时,由PC上位机软件设置采样频率和通道工作模式,经过处理通过USB控制芯片CH375送数据到PC端;当数据采集卡工作于离线模式时,无需PC上位机干预,数据采集卡按照预先设定的采样频率和工作模式进行采样,并将采样数据通过USB控制芯片CH375送数据到U盘端。系统采用±9 V,+5 V,+3.3 V以及模拟地数字地,并由DC/DC模块产生,经过良好的LC滤波为各个电路单元提供电力。人机接口(HMI)采用简洁的双按键和LED指示,对整个数据采集卡工作模式的选择和运行状态进行控制。

2 数据采集卡的硬件实现

2.1 ADC接口和信号调理电路

为了满足较高的采集精度和采样速率,该设计选择AD7685作为模拟/数字转换器件[3]。AD7685是一款16位、串行输出、250 KSPS、电荷再分配、逐次逼近型(PulSAR)ADC[4]。ADC与处理器采用串行外围设备接口(SPI)接口进行连接,为了保证ADC的精度,采用高速光耦6N137隔离式驱动电路来隔离处理器SPI总线上的串扰。

前置调理电路信号的流向参见图1系统组成框图。设计中,采用模拟开关ADG1024对输入信号进行切换,并通过可编程增益放大器(PGA)AD8251进行处理,通过增益为0.2的电平转换16位ADC驱动器AD8275,把±5 V的信号转换成0.25~2.25 V的信号,极大地扩展了该数据采集卡的测量范围,而简化了前置调理电路的设计,其电压计算公式如下:

经过前置调理电路使得不同量程范围的输入信号放大或衰减到0.25~2.5 V内,最大限度地利用ADC量程,使得采集系统的4个输入通道可以有单通道、双通道、四通道3种工作模式,且每个通道皆可以设置为任意量程。前置通道的相应配置由处理器ADuC7026完成,其配置遵循表1。

2.2 EMC措施

该设计采用外置9 V开关型稳压电源或USB端口供电,由于开关电源的低成本和高功率密度,普遍被现代电子系统设计所采用,但其带来的电磁干扰(EMI)问题也不容忽视[5]。同时,ARM7主频高达45 MHz,必须考虑其EMI问题。该设计尽量选取低噪声的放大器和ADC,遵循最短路径的布线原则,确保前置通道具有较低的噪声水平[6]。设计中,采用数字地/模拟地分区覆铜,并一点接地的布线方式,避免电源和数字部分对模拟地电位产生浮动和干扰[7]。同时,采集卡外壳贴装铝箔纸,以防止外界电磁辐射影响内部电路的工作。

2.3 USB接口

该设计使用USB控制芯片CH375,内置海量存储固件,既可以作为USB设备方式向PC上位机传送数据,又可以作为USB主机,将数据存入U盘中。该芯片支持USB 2.0通信协议,在并口工作模式下能同时支持主机方式和设备方式。为了保证USB高速传输数据的稳定性和完整性,采取如下措施:

(1) 采用USB屏蔽线作为连接线,保证数据传输不受外界电磁干扰。

(2) 保证计算机USB端口的地线与USB控制芯片CH375的地线严格等电位。

2.4 ARM系统的构建

ADuC7026是基于ARM7TDMI内核的精密控制器,具有62 KB FLASH,8 KB RAM和4个通用定时器,内部集成UART,I2C,SPI,DAC,PWM,JTAG端口、PLA等众多硬件资源,40个通用I/O引脚。CPU时钟高达45 MHz,采用80脚LQFP封装[8]。在该设计中,搭建了一个包括供电电路、时钟电路、复位电路、JTAG程序下载调试接口等电路的完整ARM7应用系统。实际上由于实测ADuC7026的外部I/O取反速度只有4 MHz,因此在SPI设计中,该设计加入Atmega48单片机作为中转,保证了控制核心在处理USB通信、U盘读/写等大量信息时对采样的准确触发。

3 程序设计

3.1 ARM端程序编写

ARM下位机软件完成的主要功能有3个进程,分别为Wait,Online,Offline。当数据采集卡上电复位后,首先执行Wait进程,该进程等待按键操作,更改系统工作模式,配合的子程序还有相应初始化程序、按键防抖程序等。当Wait进程结束时,系统转入联机模式(Online)或离线模式(Offline)。联机模式按照用户设置进行采样,将数据存入CH375缓冲,CH375负责将数据传送给上位PC机,其程序流程如图2所示。离线模式则利用CH375海量存储固件,将数据存入U盘。为保证采集的实时性,控制器将数据存放在U盘扇区中[9],而不是以文件的形式读/写,避免创建文件时复杂时序的延误,其程序流程图如图3所示。

3.2 PC端编程

该数据采集卡的上位机应用程序由动态链接库DLL和客户端程序2个部分组成[10]。其中,DLL负责与内核态的USB功能驱动程序通信,并接收应用程序的各种操作请求;客户端程序负责对数据进行分析处理。采用VC++编写,遵循了工程通用的输入/输出界面,可以完成普通数据采集卡的在线采集功能,同时也可以将数据采集卡存储在U盘中的采集数据,通过物理扇区寻址来读取相应的采集数据。

4 测试与结论

通过该数据采集卡挂载U盘,对5 kHz正弦单通道信号进行采集,将U盘数据导入上位机,以获得如图4所示的波形,它良好地复现了现场波形信号。

5 结 语

由于采用了支持海量存储技术的多模式USB总线控制芯片CH375和高速低功耗的ARM7控制器,使得该数据采集卡具有一定的智能采集能力,摆脱上位机连接限制而独立工作,采集到的数据存储到U盘中。符合新型数据采集系统小型化、移动化、智能化的发展趋势,广泛适用于工业现场和户外作业等应用场合,有很高的实用价值和推广意义。

该项目获得2009年UDC全国大学生创新设计竞赛高级组一等奖。

参考文献

[1]QUINTANS Camilo,MOURE Maria José,VALDESPENAMaria Dolores.A virual instrumentation laboratory based ona reconfigurable coprocessor[J].IEEE Trans.on Instumen-tation and Measurement,2006,55(2):635-645.

[2]RANA K P S,KHAN S H.A DAQ card based mixed sig-nal virtual oscilloscope[J].Measurement,2008,41(9):1032-1039.

[3]毕文辉,严楠,崔德邦,等.数据采集系统中A/D转换器的正确选择[J].计量与测试技术,2009,36(4):20-22.

[4]Analog Devices.AD7685 Datasheet[EB/OL].[2007-05-21]http://www.analog.com/zh/analog-to-digital-con-verters/ad-converters/ad7685/products/product.html,2007.

[5]LIU Qian,WANG Shuo,BAISDEN A C.EMI suppressionin voltage source converters by utilizing dc-link decouplingcapacitors[J].IEEE Trans.on Power Electronics,2007,22(4):1417-1428.

[6]张宝东,秦石乔,王省书,等.虚拟数字存储示波器中A/D动态性能的研究[J].仪器仪表学报,2008,29(8):1700-1703.

[7]汉泽西,李彪,郭正虹.接地抗干扰技术的探讨[J].测控技术,2007,26(12):74-77.

[8]Analog Devices.ADuC7026 Datasheet[EB/OL].[2009-08-09]http://www.analog.com/zh/analog-microcontroll-ers/analog-microcontrollers/aduc 7026/products/product.html,2007.

[9]南京沁恒电子有限公司.U盘文件读写模块的说明,单片机读写U盘[EB/OL].[2007-11-09]http://www.winchip-head.com/download/index.htm.

本文来自 360文秘网(www.360wenmi.com),转载请保留网址和出处

【CH375接口】相关文章:

总线接口04-28

接口故障05-17

接口实验报告04-10

接口设计思路04-11

接口监理细则05-02

软件接口技术05-13

HPI接口05-16

组态王接口05-27

硬件接口系统06-01

串行总线接口06-04

上一篇:信息化安全落地下一篇:冷水机组