0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于ATmega32单片机和CH375芯片实现存储测试系统的设计

电子设计 来源:现代电子技术 作者:邸超,张志杰 2021-06-08 16:27 次阅读

存储测试是在对被测对象无影响或影响在允许范围的条件下,在被测体或测试现场放置微型数据采集与存储测试仪,现场实时完成信息的快速采集与记忆,事后回收并由计算机处理和再现测试信息的一种动态测试技术。存储测试的主要技术特点是现场实时快速完成动态数据采集与存储记忆,特别是在多种恶劣环境和紧凑设计条件下完成动态参数测试,事后回收处理再现。传统的存储测试仪存在着如下不足:

(1)存储介质置于仪器内部,回读数据必须将整个仪器伺收。由于存储测试所面临的测试环境复杂,往往加装了复杂、笨重的防护体或置于掩体中,给仪器的拆卸回收造成了困难。而户外回读分析数据往往受条件所限难以续施。 (2)随着存储测试技术的发展,存储测试所面临的对豫和环境日趋复杂,测试时间和所需容量灵活多变,并逐步加大。由于传统的存储测试仪设计结构所限,不同容量就意味着要重新设计生产新的仪器。

(3)当前的计算机主板普遍集成了USB接口,存储测试仪一贯采用的“大端口”如:并口、串口等已逐渐被抛弃。一些新推出的主板甚至只集成了。USB 口。存储测试仪接口必须适应这一转变,通过一定的措施实现基于。USB 口的通信。本设计采用南京沁恒公司的CH375和Atmel的ATmega32单片机所设计的存储测试仪有效克服了以上的不足,在实际应用中取得了良好的效果。U盘作为新型移动存储设备,以体积小、速度快、抗震动、通用性强的特点备受青睐。该系统通过单片机对U盘进行读写操作,采集数据按文件方式直接存储到U盘,可以有效提高数据保存速度及可靠性。特别适合于长时问、大容量数据采集的场合,方便了与PC等上位机进行数据交换,从而实现现场采集数据、室内分析数据。通过更换U盘可以灵活选择系统容量,极大地提高了存储测试仪的通用性,降低了测试成本。

2 USB OTG及海量存储设备协议

作为USB 2.0的补充规范USB OTG(On The Go)以其双重强大功能使USB设备摆脱了对PC的完全依赖,USB外设在无PC主机参与的情况下可以直接互连以进行通信。USB通信以分层方式进行,总体上可分为功能层、USB设备层和总线接口层。U盘属于USB家族内的海量存储(USB Mass Storage)设备,是一种基于块/扇区的随机存储设备,他与主机之间采用“控制/批量/中断”(CBI)方式或“批量”(Bulk-Only)方式与主机通信。USB通信协议规范十分复杂,‘USB海量存储协议包括CBI,Bulk-Only,ATA和UFI等4个独立的子类规范。前2个子规范定义了数据/命令/状态在USB总线上的传输方法,后2个子规范定义了存储介质的操作命令。其中,ATA命令规范用于硬盘,UFI命令规范则是针对USB移动存储制定的。U盘在进行数据保存之前,必须先按某个文件系统的规定进行格式化。相对于计算机硬盘来说U盘的存储容量要小得多,因此在U盘中FAT16文件系统可取得比较高的综合效率且兼容性较好,广泛地应用于U盘之类的移动存储设备中。FAT16文件系统结构分为5个部分:MBR区,DBR区,FAT区,FDT区,DATA区。其中MBR区为主引导记录区,DBR区为操作系统引导记录区,FAT区存放文件分配表,FDT区存放文件目录表,DATA区是真正意义上的数据存储区。

3 系统硬件设计

系统采用AVR高档机系列*能强大的单片AT-mega32作为中央处理芯片,选用南京沁恒电子公司的CH375作为USB主机控制芯片。硬件系统的工作原理框图如图1所示:

ATmega32是一款基于AVR RISC结构的低功耗8位单片机,外接:16 MHz晶振性能可达:16 MI/S。AT-mega32包含了32 kB的系统内可编程FLASH,1kBE2PROM,2kB SRAM,32个通用I/O 口,32个通用工作寄存器,一个8路10位具有可选增益差分输入的A/D转换器,支持多种接口方式。丰富的片上存储器空间极大地提高了对U盘操作时的工作效率,多样化的外围接口方便了系统的扩展,高效的CPU指令集可以使系统获得比较高的采样率。CH375具有8位数据总线和读、写、片选控制线以及中断输出,同时支持5 V和3.3 V电源电压,遵循USB 1.1规范。因此CH375作全速USB Host。主机接口时只需外加晶振和电容,就可以方便地挂接到单片机/DSPMCU/MPU等控制器的系统总线上。由于读写U盘或移动硬盘时一般都是以扇区模式进行的,为了进一步提高执行效率可以适当增大磁盘数据缓冲区和文件数据缓冲区(都是512 B的整数倍),并且缓冲区越大,执行的效率越高,所以外扩了32 kB的RAM 62256。传感器信号模拟电路调理之后由A/D转换器MAX 153量化成数字信号,在单片机ATmega32的控制下循环存入62256。待触发信号到来之后,按照程序预设的负延迟点数将62256扣的数据连同后续到来的信号全部经由CH375存入外挂的U盘,直至写满在U盘中新建的文件并关闭。同时由系统所设置的状态灯指示工作已完成。

实际设计中ATmega32与CH375接口部分的原理图如图2所示:

4 系统软件设计

USB大容量存储设备软件结构示意图3所示:

一般情况下,单片机或嵌入式系统处理USB存储设备的文件系统需要实现图3左边的几个层次,右边是USB存储设备的内部结构层次。由于CH375不仅是一个通用的USB-HOST硬件接口芯片,还内置了相关的固件程序,简化了外部编程。内置固件包含上图左边的UFI命令层,USB基本传输命令层及Bulk-Only协议层,所以实际的单片机程序只需要处理FAT文件系统层,并且即使这一层也可以由CH 375的U盘文件级子程序库实现。CH375以C语言子程序库提供了。USB存储设备的文件级接口,这些应用层接口API包含了常用的文件级操作,可以移植并嵌入到各种常用的单片机程序中。

这里采用ICC AVR软件来编写ATmega32的程序,并调用CH375所提供的AVRU盘文件级子程序库CH375HFB.A。程序运行并初始化后,系统进入待触发状态。检测到触发信号到来之后,通过CH375FileCreate新建文件,将AD所采集的数据通过CH375FileWrite写入U盘,文件写满之后调用CH375FileClose关闭文件。采集结束之后直接取下外接的U盘便可以拿回室内分析。由于采用了文件管理模式,所需操作十分简单,就像平常读取U盘中的文件一样。

5 结 语

经测试该系统在实际使用时达到了预想效果,克服了以前存储测试仪的一些不足。尤其对于缓变大容量信号的采集取得了良好效果。由于CH375只支持USB1.1协议,并且采用了单片机作为控制器负责管理整个系统的运行,势必影响到仪器的采样率。因此,选用支持USB 2.0协议的OTG器件,同时采用性能更好的控制器如DSP,CPLD等可极大地提高仪器的采样速率,以适应更高的需求。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    446

    文章

    47705

    浏览量

    408872
  • 单片机
    +关注

    关注

    5998

    文章

    43948

    浏览量

    620562
  • 测试系统
    +关注

    关注

    6

    文章

    746

    浏览量

    61779
收藏 人收藏

    评论

    相关推荐

    CH375

    大家好,我是一名在校的大学生,最近在做基于CH375的USB数据传输设计实现这个设计,我具体做的是用单片机通过CH375来读取优盘。硬件方面已近做的差不多了,就剩下程序方面的问题了,我
    发表于 05-18 19:28

    80C51和CH375的USB打印机驱动设计

    ,给出80C51单片机通过CH375控制USB打印机的硬件设计及其C语言软件实现.利用该设计能够实现并行打印口数据在USB打印机直接打印,极大的克服了有些并口仪器必须连接并口打印机才能
    发表于 03-02 15:19

    USB总线接口芯片CH375

    单片机/DSP/MCU/MPU等控制器的系统总线上。在USB主机方式下,CH375还提供了串行通讯方式,通过串行输入、串行输出和中断输出与单片机/DSP/MCU/MPU等相连接。
    发表于 03-08 14:28

    跪求请教CH375问题

    我用STC12C5A60S2单片机接VS1003和CH375读U盘做的MP3播放器但是在CH375读U盘播放的时候,播放的歌总是在5秒左右,请问各位高手说说这到底是出现的哪些故障。
    发表于 05-20 22:06

    基于CH375实现机车智能测温系统

    单片机或嵌入式系统处理USB存储设备的文件系统需要实现USB-HOST硬件接口数据交换层、传输协议层、SCSI/UFI/RBC命令层及文件
    发表于 04-25 07:00

    采用CH375多通道USB接口实现与PC的通信

    采用C语言编程,编写单片机ATmega128中断1服务处理程序的基本框架如下所示:void int1_isr (void)//USB中断入口程序{CH375
    发表于 05-05 09:29

    采用CH375接口电路实现LPT-USB打印机驱动器设计

    系统总线上。CH375的USB主机方式支持各种常用的USB全速设备,外部单片机、DSP、MCU可以通过CH375按照相应的USB协议与USB设备通信。
    发表于 06-18 05:00

    请问一下CH375的SPI最高速率是多少?

    我需要用单片机A 与 CH375 用 SPI 进行通讯,然后 CH375(USB 主) 再将数据通过 USB 传输到 4 个单片机 B ( USB 从)中,这个可以
    发表于 07-06 06:15

    基于CH375多通道USB接口与PC机通信的实现

    利用USB接口技术,采用USB模块CH375,在加速器核辐射监测系统实现了多个探测通道USB接口与计算机通信。给出了CH375单片机接口
    发表于 06-26 08:51 39次下载

    USB接口芯片CH375的原理及应用

    USB接口芯片CH375的原理及应用:对USB 接口芯片CH375 的功能、原理做了较详细的介绍,并给出了在单片机读写U 盘中的实例及注意事
    发表于 09-20 18:07 132次下载

    基于CH375实现单片机读写U盘

    摘要:介绍了一种USB总线的通用接口芯片CH375,并在此基础上提出了一种外部单片机读写U盘的基本方法及其硬件连接方法。单片机只要在原硬件系统
    发表于 09-10 14:40 186次下载

    基于CH375的USB文件加解密系统设计

    介绍了采用CH375单片机实现的基于USB HOST 技术的嵌入式文件加密解密系统,该系统采用基于随机算子的轻量级加密算法对USB 移动
    发表于 05-17 15:43 32次下载
    基于<b class='flag-5'>CH375</b>的USB文件加解密<b class='flag-5'>系统</b>设计

    CH375的MSP430读写U盘的设计与实现方案

    给出了一种基于CH375 实现MSP43OF44g 单片机读写U 盘的设计方案该方案以油井电量采集仪为应用背景, 利用 MSp43O 单片机CH3
    发表于 04-26 09:15 31次下载
    <b class='flag-5'>CH375</b>的MSP430读写U盘的设计与<b class='flag-5'>实现</b>方案

    沁恒股份USB总线接口芯片:CH375概述

    方便地挂接到单片机/DSP/MCU/MPU等控制器的系统总线上。在USB 主机方式下,CH375还提供了串行通讯方式,通过串行输入、串行输出和中断输出与单片机/DSP/MCU/MPU
    的头像 发表于 11-01 11:16 2251次阅读
    沁恒股份USB总线接口<b class='flag-5'>芯片</b>:<b class='flag-5'>CH375</b>概述

    用51单片机ch375实现键鼠功能

    用51单片机ch375实现键鼠功能说明:为了参加比赛,我和我的队友设计了一款人机交互系统,我负责接收摄像头数据和模拟键鼠功能,由于当时只是学习了51故用51
    发表于 11-20 14:06 19次下载
    用51<b class='flag-5'>单片机</b>和<b class='flag-5'>ch375</b><b class='flag-5'>实现</b>键鼠功能