跟着U盘的遍及运用和USB技能的嵌入式体系运用,便利用户进行程序修改和程序的存储,PCR规划中选用能够热插拔的USB接口,即在PCR硬件体系中加入了USB主控芯片,使其能够对U盘等存储设备进行读写操作,然后完结数据的存储和搬运。
1 USB体系的硬件规划
在数据收集体系中,USB的运用大体能够选用两种计划:一是直接选用集成USB设备接口的嵌入式微操控器;二是选用独自的操控器和独立的USB设备接口芯片。
为增强体系运用的灵活性,该计划选用瑞萨单片机M30627FJPGP,加上USB设备接口芯片建立硬件体系,具有低成本、易移植的特色。规划中,USB 设备接口芯片选用CH375,触及框图如图1所示。CH375是一款契合USB 2.0协议的USB总线通用接口芯片,支撑主机(HOST)方法和设备(SLAVE)方法,并能够动态地切换主机和设备方法。
CH375芯片供给了通用的被迫并行接口,包含:8位双向数据总线D0~D7、读选通输入引脚RD、写选通输入引脚WR、片选输入引脚CS、中止输出引脚 INT以及地址输入引脚A0。CH375以总线方法挂接在单片机数据总线上,而且与多个外围器材共存。单片机经过RD,WR高位地址译码产生片选CS和地址线P68(接CH375的A0引脚)的归纳操控,完结与CH375的通讯。外扩USB电路如图2所示。
CH375芯片的RD和WR别离衔接到单片机的读选通输出引脚和写选通输出引脚。CS由单片机的CS4选通。INT输出的中止恳求是低电平有用,能够衔接到单片机的外部中止上,单片机运用中止方法获悉中止恳求。
当CS375(即CS)为低电平时,单片机能够与CH375进行通讯操作。此刻,当WR为高电平,RD和P68都为低电平时,CH375中的数据经过 D0~D7输出;当RD为高电平且CS和WR及P68都为低电平时,D7~D0上的数据被写入CH375芯片中;当RD为高电平且CS和WR都为低电平而 A0为高电平时,D7~D0上的数据被作为指令码写入CH375芯片中。
CH375芯片的UD+和UD-引脚直接衔接到USB总线上。CH375芯片内置了电源上电复位电路,并能够产生复位信号。为保证上电复位次第,体系规划中,单片机的复位信号是经过CH375产生的,并将单片机与CH375一起接到外部复位电路上。
CH375芯片正常作业时需求外部为其供给12 MHz的时钟信号,在XI和XO引脚之间衔接一个标称频率为12 MHz的晶体,而且别离为XI和XO引脚对地衔接一个容量为30 pF的高频振动电容。
CH375芯片支撑5 V电源电压或许3.3 V电源电压。该体系运用5 V作业电压,而且V3引脚处外接容量为O.01 μF的电源退耦%&&&&&%。
2 USB体系的软件规划
依据USB 2.O协议,在一个USB体系中,任何一次通讯都是由USB主机建议的。USB设备依据主机发来的指令给予呼应,履行相应的操作。在USB体系中,其软件包含以下几个部分:主机运用程序、设备驱动程序和设备固件程序。主机用于程序为用户供给设备运用的操作渠道和交互界面,完结数据的处理和转化,向设备宣布操控指令等。设备驱动程序是USB设备正常作业的根底,它供给了设备接人体系时要用到的引导文件、设备信息文件等。
2.1 动态链接库
体系运用中CH375供给了设备方法下规范驱动CH375WDM.INF和动态链接库 CH375DL L.DLL,经过加载驱动信息能够在运用程序中直接调用动态链接库。CH375在计算机端供给运用层接口。运用层接口是由CH375动态链接库DLL供给的面向功用运用的API,一切API在调用后都有操作状况回来,但不一定有应对数据。CH375动态链接库供给的API包含:设备管理API、数据传输 API、中止处理API。
规划中选用C言语作为计算机端运用软件的开发渠道,首要需求将CH375的动态链接库、驱动程序增加到到编译环境中。动态链接库的运用,简化了USB设备开发的过程,降低了开发难度,为体系调试节省了时刻。
2.2 运用程序与设备间的通讯
经过动态链接库的数据传输函数,CH375在与M30627FJPGP之间供给了端对端的衔接。运用程序与设备固件间的通讯选用恳求加应对方法,该通讯方法具有较好的交互性和可控性。恳求加应对方法运用一个下传的自动恳求和一个上传的被迫应对进行交互式的双向数据通讯,下传与上传一一对应,彼此相关。一切的通讯都由客户运用程序建议,然后以接收到M30627FJPGP的应对完毕。
2.3 固件程序规划
CH375与M30627FJPGP之间规划成彻底的中止驱动。当单片机处理前台使命时,USB的传输可在后台进行,这就保证了最佳的传输速率和更好的软件结构,一起简化了编程和调试。
后台ISR(中止服务程序)和前台主程序循环之间的数据交换能够经过事情标志和数据缓冲区来完结,其完结原理如图3所示。
运用中的单片机读写U盘软件可分红两大部分:运用程序和固件程序。运用程序完结体系的数据收集、处理使命、外围操控等功用,固件程序处理底层的USB 通讯协议、文件体系,完结数据在USB总线上的牢靠传输和在U盘上的存取操作。为便利在不同操控器或运用体系上进行移植,固件采纳积木式结构,如图4所示。
2.4 USB读写操作
USB读写操作可依据不同的体系要求设定履行程序。在PCR仪体系规划中,M30627FJPGP将经过-A/D通道收集到的数据向U盘内指定的文件: ADC_DATA.TXT追加数据。开机后,单片机向CH375写入装备字,设定其进入主控(Host)形式,进人数据收集状况,等候USB总线事情产生。U盘追加数据流程如图5所示。