一、CH372芯片概述
目前USB接口芯片主要有两种:一种是内置有CPU功能的芯片,另外一种则是纯粹的USB接口而内部不集成有CPU的芯片,CH372就属于这类。在本设计中,因为USB接口只作为C8051F020单片机与U盘之间的通信桥梁,它不用与计算机连接,而且受到单片机写入数据的控制,因此内置有CPU功能接口的芯片不适合本设计要求,选择了CH372纯USB接口转换芯片。在单片机本地端,CH372芯片具有8位D0~D7数据总线、写引脚线(WR#)、读引脚线(RD#)、片选控制线(CS)及中断输出控制线(INT),能与C8051F020方便的连接。在计算机端只需调用CH372内的动态链接库,便可以方便的与计算机应用层操作对接。
CH375芯片具有如下特点:
1)提供即插即用的USB设备接口,全速传输数据。
2)支持三种USB的数据传输方式:控制方式、批量方式及中断方式。
3)自动检测U盘的连接与断开的同时,发出此事件的通知。
4)内置了USB通讯的底层协议,使得单片机端的编程只完成数据交换即可。
5)工作电压为+5V且具有具有低功耗工作模式。
二、C8051F020控制CH372的原理
如图17所示,本设计中CH372的数据线连接单片机的P1.0~P1.7口;读引脚与写引脚分别对应单片机的读选通与写选通引脚;片选控制线与P5.4口相连;地址输入引脚A0与P2.7相连;中断输出线与普通引脚P5.3连接,采用查询方式获其中断请求。对CH372的操作分为数据传输与命令码写入两类。对数据的传输操作又分为一下两种情况:当WR=1且CS=RD=A0=0时,芯片内存储的数据经由D7~D0被读出;当RD=1且CS=RD=A0=0时,单片机经由D7~D0向CH372写入数据。对命令码写入的操作,当RD=A0=1且CS=WR=0时执行。
http://www.zhenghangyq.com