CH372USB通讯.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CH372USB通讯

通用串行总线(Universal Serial Bus,简称USB)是在1995年被提出来的,并由Compaq,Digital Equipment Corp(现属于Compaq),IBM,Intel,Microsoft,NEC和Northern Telecom等7家公司定义和推广。由于USB技术具有易于使用、热插拔、速度快、功耗低等特点,使得USB通信技术得到广泛应用。基于此,本文提出了一种基于CH372芯片的USB通信技术,可实现单片机与计算机之间的USB通讯。   1 CH372简介   USB接口芯片种类繁多,基本上可分为两类:一类是内带有CPU通用功能的USB接口芯片,另一类是内部不带集成CPU的纯粹的USB接口芯片。CH371、CH372、CH375芯片系列就是后者。本研究中,由于USB接口仅用于读写等数据传送功能,且数据处理及信号转换部分还需单片机控制,因此选用纯粹的USB接口芯片CH372与AT89C52单片机配合实现。在单片机端,CH372具有8位数据总线和读、写、片选控制线以及中断输出,可以方便挂接到单片机/DSP/MCU/MPU等控制器的系统总线上;在计算机端,CH372的配套软件提供了简洁易用的操作接口,与本地端的单片机通信就如同读写文件一样便捷。   CH372芯片与普通的通用串口芯片相比有以下优点:   1)全速设备接口,兼容USB2.0,即插即用,外围元器件只需晶体和电容即可;   2)提供一对主端点和一对辅助端点,支持控制传输、批量传输、中断传输;   3)具有省事的内置固件模式和灵活的外部固件模式,内置固件模式下屏蔽了相关的USB协议,自动完成标准的USB枚举配置过程,完全不需要本地端控制器做任何处理,简化了单片机的固件编程;   4)通用Windows驱动程序提供设备接口,通过DLL提供API应用层接口;   5)通用的本地8位数据总线,4线控制:读选通、写选通、片选输入、中断输出;   6)主端点上传下传缓冲区各64字节,辅助端点上传下传缓冲区各8字节。   2 系统硬件电路设计   CH372芯片在本地端提供了通用的被动并行接口,包括:8位双向数据总线D7~D0、读选通输入引脚RD#、写选通输入引脚WR#、片选输入引脚CS#、中断输出引脚INT#以及地址输入引脚A0。通过被动并行接口,CH372可以很方便地连接到各种8位单片机、DSP、MCU芯片上,并且可以与多个外围器件共存。基于CH372芯片的信息和参数。这里给出了CH372芯片单片机端的USB通讯电路,如图1所示。同时,该芯片可通过普通USB传输线实现与计算机的互通,图1中J1即为USB接头。   CH372芯片电路及PCB板设计需要注意的事项有:   1)为了降低电磁辐射,减少来自外界的干扰,PCB板的晶体Y1的金属外壳接地;   2)为了降低对时钟信号的干扰,PCB设计时尽量不在晶体及振荡电容附近走线,尤其是不要走继电器、电动机等带有瞬时冲击电流的电源线和强信号线;   3)给USB插座单独供电,使USB设备刚插上时的电容充电过程不影响单片机和CH372:   4)在USB插座前串接限流电阻或电感;   5)PCB板布局要合理,电阻电容对齐,温度敏感的器件布置远离电源,板子要敷铜。   3 软件设计   CH372在计算机应用层与本地端单片机之间提供了端对端的连接,在这个基础上,USB接口可以选用单向数据流和请求加应答两种通讯方式。采用请求加应答的方式实现通信,都是由计算机主动请求,单片机被动应答完成数据传输。在程序编制过程中约定3种数据传输模式,通过计算机传输数据进行确定,分别是:   1)计算机下传数据01H,单片机上传存放数据的文件的参数;   2)计算机下传数据02H及8字节参数,8字节参数包括存放数据的地址、数据的数量,单片机通过调用相关子程序分析参数,并将相应的数据上传;   3)计算机下传数据03H,单片机执行关闭CH372的操作命令。   3.1 单片机端程序   在单片机端采用汇编语言编写程序,在程序设计过程中,考虑到系统的可靠性、稳定性以及调试过程直观性的需要,故采用汇编语言编写程序,程序流程如图2所示。   3.2 计算机端程序   CH372在计算机端提供了应用层接口,应用层接口是由CH372动态链接库DLL提供的面向功能应用的API,所有API在调用后都有操作状态返回,但不一定有应答数据。CH372动态链接库提供的API包括:设备管理API、数据传输API、中断处理API。   在计算机端采用Visual Basic(VB)编写程序,利用VisualBasic的该特性,调用CH372动态链接库DLL提供的面向功能的应用API函数编写计算机端的应用程序,其工作流程如图3所示。   4 试验结果

文档评论(0)

almm118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档