微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于USB的无线触摸鼠标板的设计方法

基于USB的无线触摸鼠标板的设计方法

时间:08-06 来源:互联网 点击:

  随着IT技术的发展,多媒体教学已经在学校得到广泛的应用。但传统的多媒体教学存在互动性不强等缺点,不利于师生的交流和沟通,基于这种情况,我们设计和实现了一种基于USB的无线触摸鼠标板,使得教师在学生座位旁依然可以像站在讲台那样自由控制电脑。

  1系统组成

  本系统可以大致分为两个部分,其中一端是手持设备终端,提供PS/2接口供鼠标触摸板接入使用;另一端是PC接入端,通过USB接口与主机相连,二者之间通过无线传输协议联系在一起。整体构架图如图1所示。

图1整体构架图

  因为设计所选用的CC2420集成了发送和接收功能在同一芯片中,故在手持终端和接入设备部分的无线收发器可复用同一模块,无需重新设计。而在PC端,为了实现设计的普遍适用性以及即插即用的特性,对接人设备采用了HID类设计从而使PC端无需增加任何软件,即可使用操作系统提供的设备驱动程序。

  本设计的实验开发板由笔者自行设计实现,不仅包括了本设计所需要的功能,还有调试功能以及扩展功能,供日后有需要时使用。

  2 硬件设计与实现

  2.1手持端硬件设计与实现

  在手持端,主要包括的模块有MCU控制模块,无线发送模块,PS/2接口模块和调试模块等。各模块的功能示意图如图2所示:

图2手持端模块图

  2.1.1 MCU PIC整体控制模块

  MCU控制着整个系统的运行,包括软件的触发、运行,以及各个部分的协调工作。整个系统的软件都是存储并运行在MCU当中,在触摸板事件响应方面采用的是中断触发。而PS/2接口实际上只需两条IO线,也就是说其只占用了MCU两个管脚资源,其中一个为普通IO口,另一个则是中断口,考虑到中断12的可能冲突,可以通过跳线方式自行选择。在CC2420方面,亦采用电平跳变中断检测其SFD及FIFOP的中断请求,而其数据通信则是使用芯片集成的SPI接口中的RCA(SO)、RC5(si)、rico(CS-N)、RC3(SCK)等4条线来实现。

  2.1.2串口模块

  由于USB的数据信息在其未被主机正确识别之前无法得到,并且在无线传输方面也需将数据及控制信息等传回主机以供调试,所以在开发板上另外设计一个串口调试模块,方便设计过程中的调试需要。

  RS232规范使用12V供电,而开发板上使用的电压为3.3V,这样如果直接将数据线直接连到RS232接口上会将实验板上的元件烧毁。为了实现不同电压之间的连接,采用了RS232电平转换芯片MAX3232.利用这个芯片我们可将12V电压的数据传输转换为3V,这样就可以达到将数据与主机进行交互的目的。在数据传输线路上,由于PICl6F877A内置了串口接口,所以只需使用RC6、RC7这两根线就可以实现数据的传输,经过MAX3232的电平变换到达主机。

  2.1.3无线传输模块

  考虑到工艺问题,靠手工无法完成,所以采用模块购买的方式来获得CC2420的使用,购买的模块仅有非常简单的外围器件,以及12根控制引脚外引(包括电源和地),这样我们就可以通过MCU利用这12根引脚控制CC2420的工作了。根据该模块的外接引脚,在实际的电路设计中设计了一个两排12根线的接口,可以直接接到MCU控制接口,因为MCU和CC2420都是采用3.3V的电压,所以不会有电压过高的问题。

  在CC2420的电路设计过程中发现,对于控制引脚SFD、FIFOP这两个用于检测中断接受数据的接口尤其重要,如果在这两条线路出现了干扰的话,在软件的实现方面将产生很多不必要的软件开销,例如去除干扰等。所以在PCB设计的时候要对这两条线加宽,不要横跨电源和地,这样会产生很大的干扰。

  2.2 PC接入端硬件设计与实现

  此部分将介绍接人设备的硬件设计与实现,在串口调试部分采用和手持端同样的硬件设计,而在无线接受模块,因为CC2420集合接收发送功能在同一芯片中,而应用电路也采用同样电路,故在接入设备部分可以使用相同模块。所以在这里将主要介绍USB模块的设计与实现。

  在USB接IZl方面,为了使用上的方便,将设备设计成标准的HID类鼠标,这样可以直接使用操作系统自带的驱动程序而无需安装任何的驱动软件。在供电方面使用标准USB接口提供的5V电源为USB芯片供电,接人端的主要硬件架构可用图3所示:

图3接入端硬件构架图

  在USB接口芯片的连接上,采用了与MCU控制器的INT0外部中断的方式连接,这样可以保证USB数据传输的实时性,而其他的控制接El使用一般的数据IO口,其8位数据传输口使用PICl6F877A的RD口连接。

3 系统软件设计与实现

  在本部分,主要将介绍本设计的软件实现,其中包括接入端和手持端两大部分。

  3.1整体设计方案的设计与实现环境

  本次设计采用的控制芯片为PIC16F877A。

由于程序是在PC上设计,需要将程序下载到单片机上运行和测试,所以需要一个程序下载工

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top