当前位置: 首页 -  数码资讯 - 正文

基于双模式USB接口的便携式比色计设计

2019-11-08 22:20 数码资讯 梦魁83°c
A+ A-

  3.2 从机模式

  (4) 判断中断状态,为“下传成功”,单片机执行 RD_USB_DATA命令从 CH375读取接收到的数据;

  (3)当 USB主机取走数据后,CH375首先锁定当前 USB缓冲区,防止重复发送数据,然后将中断引脚置低,向单片机请求中断;

单片机读写 U盘的程序流程

  4.结束语

  (1)初始化 CH375芯片:CH375Init;

  (5)新建文件:CH375FileCreate;

  2.双模式USB接口硬件电路设计

  CH375在计算机端提供了应用层接口,该接口是 CH375动态链接库 DLL面向功能应用的API,包括:设备管理API、数据传输API、中断处理 API。 设计中采用 VC++6.0作为 PC端应用软件的开发平台。首先在计算机上安装 CH375器件的驱动程序,然后将动态链接库 DLL拷贝到计算机中,最后将 DLL的访问入口添加到 VC项目中,这样就可以实现对 USB设备的应用程序编程。

  2. 1主机模式默认状态下,仪器工作在主机模式,通过读写 U盘,存储采集到的数据。 在单片机下开发 U盘的读写系统,单片机端程序要涉及较多的协议,必须能实现 USB的控制传输、批量传输、SCSI/UFI/RBC命令传输及 FAT文件系统等功能。CH375内置了 USB通信协议的固件程序,包含了 USB Mass Storage类协议,所以实际的单片机程序只需要处理 FAT文件系统层,并且这一层也可以由 CH375的 U盘文件级子程序库实现,因此简化了程序的开发流程。

  (7)退出中断服务程序。 单片机主要在中断中完成数据收发与处理,中断服务程序流程图如图 4所示。

两种模式的动态切换电路

 1.单片机通过CH375芯片接收数据的处理步骤:

  1.CH375简介

  (1)单片机执行 WR_USB_DATA命令向 CH375写入要发送的数据;

  (5)判断中断状态,为“上传成功”,单片机执行 WR_USB_DATA命令向 CH375写入另一组要发送的数据,若没有不执行。

  (3)打开文件:CH375FileOpen;

  2.2 单片机控制CH375电路设计

  (2)CH375被动地等待 USB主机在需要时取走数据;

  (2) 单片机进入中断服务程序,执行GET_STATUS命令获取中断状态;

  本系统使用 C8051F020单片机作为处理器。C8051F020是Cygnal 公司推出的一种 SOC型 8位单片机,片内有 64KB FLASH存储器和4KB RAM,完全符合作为主机时读写 U盘的要求。C8051F020单片机控制 CH375的电路如图 2所示。

  (5) RD_USB_DATA命令完成后,释放缓冲区,继续 USB通讯;

  (6)以字节为单位从文件读数据:CH375ByteRead;

CH375的电路

  CH375专门用于处理 USB通讯,当 CH375接收上位机发送的数据或发送完给上位机的数据后,以中断方式通知单片机。本地端单片机程序主要完成 CH375的初始化和数据的接收与发送,单片机控制 CH375对数据的处理过程如下:

  (6) 退出中断服务程序。

基于双模式USB接口的便携式比色计设计

中断服务程序流程

  (4)关闭文件:CH375FileClose;