位置:51电子网 » 技术资料 » 接口电路

基于USB接口的数据通信演示板的软硬件实现方案

发布时间:2008/6/3 0:00:00 访问次数:569

前言

在开发usb设备时最难的就是固件和驱动程序的开发,要想成功的开发这两部分必须完全熟悉usb协议,而这至少需要五到六个月的时间。南京沁恒公司的ch371芯片是一块屏蔽了usb协议的接口芯片,该芯片固化了设备驱动程序和单片机程序中的协议处理部分,因此不需要去了解复杂的设备驱动程序和usb协议,大大减少了开发周期,也降低了开发难度。本文介绍的演示板就是基于该公司的ch371和ch451芯片的一个简单usb外设,通过这块演示板,不仅可以了解基于usb接口的基本结构,而且还可以熟悉基于这种接口的pc和单片机通信的单片机控制程序和计算机应用程序的编写。


芯片介绍

usb接口芯片ch371

ch371是一个usb 总线的通用接口芯片。在本地端,ch371 具有8位数据总线和读、写、片选控制线以及中断输出,可以方便地挂接到单片机、dsp、mcu 等控制器的系统总线上;在计算机系统中,ch371 的配套软件提供了简洁易用的操作接口,与本地端的单片机通讯就如同读写硬盘中的文件。ch371 屏蔽了usb 通讯中的所有协议,在计算机应用层与本地端控制器之间提供端对端的连接。基于ch371,不需要了解任何usb 协议或者固件程序,甚至驱动程序,就可以轻松地将并口、串口的产品升级到usb 接口。

使用时,在本地端ch371具有8位数据总线和读、写、片选控制线以及中断输出,就像操作一般外设芯片一样方便地挂接到dsp、mcu等控制器的系统总线上;在计算机端,ch371的配套软件包括通用驱动程序以及应用软件包,提供了简洁易用的操作接口。

根据不同的工作方式,芯片的接口类型可以有以下几种:被动并行接口、i2c主接口、主控方式接口。按照芯片特点,ch371芯片通过被动并行接口与本地端控制器连接,通过usb接口与计算机连接,如图1所示。

键盘控制和数码管驱动芯片ch451

ch451 是一个多功能外围芯片,通过可以级联的4 线串行接口与单片机、dsp、微处理器等控制器交换数据。ch451 包含三个功能:数码管显示驱动、键盘扫描控制、 p 监控,三个功能之间相互独立,控制器可以通过操作命令分别启用、关闭、设定ch451 的任何一个功能。ch451 的串行接口是由硬件实现的,控制器可以频繁地通过串行接口进行高速操作。ch451主要功能包括动态扫描功能和键盘扫描功能。

在计算机应用层,通过应用程序来演示ch451的各种功能。应用程序把控制命令通过ch371传送给单片机,单片机接收到命令后再来控制ch451。ch451通过四线串行接口与单片机连接,如图2所示。

usb设备配置和数据传输过程描述

usb即插即用的自动配置过程是由ch371 芯片和驱动程序共同完成的。将带有ch371芯片的usb产品插入到计算机的usb插槽中,当pc机检测到usb 插入事件,操作系统有选择地复位usb 产品,并读取usb 产品的设备描述符,在ch371 芯片返回设备描述符后,操作系统根据设备描述符加载ch371 驱动程序;ch371 驱动程序读取ch371 芯片的设备描述符和配置描述符;在ch371 芯片返回设备描述符和配置描述符之后,ch371 驱动程序根据配置描述符请求操作系统对ch371 芯片进行配置。在完成配置后,pc机给ch371 芯片分配一个usb 设备地址,并指定一个usb 配置。以上是ch371 芯片的自动配置过程,在完成自动配置后,ch371 驱动程序向应用层开放操作接口。

数据传输过程是usb 产品的应用层软件与usb 产品的控制器之间的数据进行传输的过程。首先计算机应用层将数据请求发送给ch371 芯片,ch371 芯片以中断方式通知本地端控制器,并使之进入中断程序,查看传输状态信息寄存器中的数据传输方向标志位,如果是上传,则将上传数据长度寄存器置为15,然后退出中断程序;如果是下传,则查看下传数据长度寄存器,从数据下传缓冲区中读取数据块,并分析接收到的数据块,将应答数据和应答数据的长度分别写入数据上传缓冲区和上传数据长度寄存器中,然后退出中断程序。在退出中断程序之后, ch371 芯片将应答数据返回给计算机,此时计算机应用层将会接收到应答数据。

演示板硬件电路设计

本演示板采用usb 总线接口芯片ch371、数码管驱动和键盘控制芯片ch451和通用的mcs51 系列单片机构成,用于演示ch371 的usb 数据通讯功能,ch451 的数码管驱动/键盘扫描功能,以及ch371 与单片机的连接,ch451 与单片机的连接。演示板通过usb 接口与pc 机进行通讯,并由pc 机控制它的执行,演示板电路设计如图所3示。

图3中,元器件说明如下:

晶振x1 为标准的12mhz,晶振的金属外壳应该接地,以减少来自外界的干扰;振荡电容c1、c2 的容量为20pf(可以在5pf 至30pf 之间选择);另外,建议在ch371 的xi引脚(第14 脚)前串接一个阻值为1k 的电阻(可以在200 至3k 之间选择),即x1与c2 相连接后通过1k 电阻连接到ch371 的xi 引脚。

阻抗匹配电阻r1、r2 为100 (可以在80 至150 之间选择),如果ch371 的工作电压略低于5v ,则r1、r2 的阻值可以适当减少。
u4(单片机89

前言

在开发usb设备时最难的就是固件和驱动程序的开发,要想成功的开发这两部分必须完全熟悉usb协议,而这至少需要五到六个月的时间。南京沁恒公司的ch371芯片是一块屏蔽了usb协议的接口芯片,该芯片固化了设备驱动程序和单片机程序中的协议处理部分,因此不需要去了解复杂的设备驱动程序和usb协议,大大减少了开发周期,也降低了开发难度。本文介绍的演示板就是基于该公司的ch371和ch451芯片的一个简单usb外设,通过这块演示板,不仅可以了解基于usb接口的基本结构,而且还可以熟悉基于这种接口的pc和单片机通信的单片机控制程序和计算机应用程序的编写。


芯片介绍

usb接口芯片ch371

ch371是一个usb 总线的通用接口芯片。在本地端,ch371 具有8位数据总线和读、写、片选控制线以及中断输出,可以方便地挂接到单片机、dsp、mcu 等控制器的系统总线上;在计算机系统中,ch371 的配套软件提供了简洁易用的操作接口,与本地端的单片机通讯就如同读写硬盘中的文件。ch371 屏蔽了usb 通讯中的所有协议,在计算机应用层与本地端控制器之间提供端对端的连接。基于ch371,不需要了解任何usb 协议或者固件程序,甚至驱动程序,就可以轻松地将并口、串口的产品升级到usb 接口。

使用时,在本地端ch371具有8位数据总线和读、写、片选控制线以及中断输出,就像操作一般外设芯片一样方便地挂接到dsp、mcu等控制器的系统总线上;在计算机端,ch371的配套软件包括通用驱动程序以及应用软件包,提供了简洁易用的操作接口。

根据不同的工作方式,芯片的接口类型可以有以下几种:被动并行接口、i2c主接口、主控方式接口。按照芯片特点,ch371芯片通过被动并行接口与本地端控制器连接,通过usb接口与计算机连接,如图1所示。

键盘控制和数码管驱动芯片ch451

ch451 是一个多功能外围芯片,通过可以级联的4 线串行接口与单片机、dsp、微处理器等控制器交换数据。ch451 包含三个功能:数码管显示驱动、键盘扫描控制、 p 监控,三个功能之间相互独立,控制器可以通过操作命令分别启用、关闭、设定ch451 的任何一个功能。ch451 的串行接口是由硬件实现的,控制器可以频繁地通过串行接口进行高速操作。ch451主要功能包括动态扫描功能和键盘扫描功能。

在计算机应用层,通过应用程序来演示ch451的各种功能。应用程序把控制命令通过ch371传送给单片机,单片机接收到命令后再来控制ch451。ch451通过四线串行接口与单片机连接,如图2所示。

usb设备配置和数据传输过程描述

usb即插即用的自动配置过程是由ch371 芯片和驱动程序共同完成的。将带有ch371芯片的usb产品插入到计算机的usb插槽中,当pc机检测到usb 插入事件,操作系统有选择地复位usb 产品,并读取usb 产品的设备描述符,在ch371 芯片返回设备描述符后,操作系统根据设备描述符加载ch371 驱动程序;ch371 驱动程序读取ch371 芯片的设备描述符和配置描述符;在ch371 芯片返回设备描述符和配置描述符之后,ch371 驱动程序根据配置描述符请求操作系统对ch371 芯片进行配置。在完成配置后,pc机给ch371 芯片分配一个usb 设备地址,并指定一个usb 配置。以上是ch371 芯片的自动配置过程,在完成自动配置后,ch371 驱动程序向应用层开放操作接口。

数据传输过程是usb 产品的应用层软件与usb 产品的控制器之间的数据进行传输的过程。首先计算机应用层将数据请求发送给ch371 芯片,ch371 芯片以中断方式通知本地端控制器,并使之进入中断程序,查看传输状态信息寄存器中的数据传输方向标志位,如果是上传,则将上传数据长度寄存器置为15,然后退出中断程序;如果是下传,则查看下传数据长度寄存器,从数据下传缓冲区中读取数据块,并分析接收到的数据块,将应答数据和应答数据的长度分别写入数据上传缓冲区和上传数据长度寄存器中,然后退出中断程序。在退出中断程序之后, ch371 芯片将应答数据返回给计算机,此时计算机应用层将会接收到应答数据。

演示板硬件电路设计

本演示板采用usb 总线接口芯片ch371、数码管驱动和键盘控制芯片ch451和通用的mcs51 系列单片机构成,用于演示ch371 的usb 数据通讯功能,ch451 的数码管驱动/键盘扫描功能,以及ch371 与单片机的连接,ch451 与单片机的连接。演示板通过usb 接口与pc 机进行通讯,并由pc 机控制它的执行,演示板电路设计如图所3示。

图3中,元器件说明如下:

晶振x1 为标准的12mhz,晶振的金属外壳应该接地,以减少来自外界的干扰;振荡电容c1、c2 的容量为20pf(可以在5pf 至30pf 之间选择);另外,建议在ch371 的xi引脚(第14 脚)前串接一个阻值为1k 的电阻(可以在200 至3k 之间选择),即x1与c2 相连接后通过1k 电阻连接到ch371 的xi 引脚。

阻抗匹配电阻r1、r2 为100 (可以在80 至150 之间选择),如果ch371 的工作电压略低于5v ,则r1、r2 的阻值可以适当减少。
u4(单片机89

相关IC型号

热门点击

 

推荐技术资料

耳机放大器
    为了在听音乐时不影响家人,我萌生了做一台耳机放大器的想... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!