浅析USB接口转换器在门禁考勤系统中的应用
2012/7/17 16:57:02
为了实现IC卡门禁考勤系统中RS-232-USB接口转换器,需要1台支持USB的主机,同时还要提供主机上用于与外设通信的驱动,一般由操作系统提供.此外,还需开发在主机上执行的客户端应用程序.在设备端,需要提供具有USB接口的主控制器芯片,以及编写主控制器上执行的USB通信代码和用于执行外设功能的相关代码.
设备要求
主机必须能够通过设备驱动接收USB数据,并且使这些数据对处理这些请求的应用程序有效.在主机中必须有一个驱动负责处理USB传输、辨识设备、向USB设备收发数据;同时,还需要有一个设备驱动-虚拟化串行口,仿效真实的串口.这个驱动必须能够像真实的串口接收和发送USB数据.
从应用的观点,设备驱动必须能收发数据,可以通过使用一个虚拟化的串口或通过转化为USB数据实现.微软提供了一个叫作USBPOS的设备驱动,它允许应用程序访问USB设备时,好像它们连接到标准串口上一样.系统大致结构方框图如下图所示.
在定义即将使用的微控制器时,必须说明一些通信要求,如:通信速率、频率、传输的数据量等.考虑到IC卡门禁考勤系统有效的通信速率,可以把USB接口转换器作为一个低速的设备使用,低速设备通信速度可以在10~100Kb/s的范围变化.考虑到传输的数据量和传输的频率,此系统中使用中断的传输类型.中断传输可以在2个方向进行,但不能同时进行,这种类型的传输要求在规定的时间里完成相当大数据量的传输任务.
对于转换模块,它可以用于PC机的数据收发,操作系统提供了HID驱动,允许使用中断传输模式.对于低速设备的一个事务,中断传输zui大的包容量是8字节,如果需要发送大量的数据.则必须把它分割为很多事务.
转换模块要定义的另一个特性是所需端点数.如上所述,端点是微控制器在USB通信过程中所用来发送和接收数据的缓冲区.此系统中,该转换器定义了2个端点:一个端点(端点0)用来控制传输,另一个端点是中断输入端点,定义为发数据给PC机.
一般串行口的有效波特率的范围在300~19200bps,我们按处于zui大波特率19200bps的情况来考虑,传输1个字符需要时间接近0.75ms;而1个输入中断大约每10ms送1个8字节的数据包,USB接口转换对于改进IC卡门禁考勤系统起到了非常大的作业,而目前深圳宇泰科技自主研发生产的各类接口转换器(rs232接口转换器、rs485接口转换器、rs232转485转换器)和光电隔离保护器在国内性价比很高。