基于蓝牙无线通信技术的多媒体控制器设计*
2013-06-28周志英谢明华
周志英,刘 辉,谢明华
(1.长沙大学信息与计算科学系,湖南 长沙410003;2.长沙大学电子与通信工程系,湖南 长沙410003)
在多媒体教学中,教师为了方便、快捷地通过和计算机交互,来控制幻灯片的播放、翻页,暴风影音暂停、播放、全屏与缩放、快进、声音大小控制等操作,往往只能在距离讲台和计算机的一个小范围内移动,活动受到限制,教学效果不是很理想.本文设计一种基于蓝牙无线通信技术的多媒体控制器,遥控完成计算机的上述操作,提高教学和演讲的效果.
1 控制系统总体方案设计
该系统总体方案如图1所示.系统由主控制器,键盘输入模块、激光发射模块、蓝牙LED指示灯、蓝牙收发模块和通用蓝牙USB适配器组成.主控制器获取键盘信号,根据触发按键功能的不同生成相应的编码,并做一定通信协议算法处理,再通过蓝牙收发模块向USB蓝牙适配器发送数据.计算机对接收的数据进行解码后,向windows系统发送相应的操作,完成对计算机的相关操作.
图1 总体结构框图
2 主要硬件电路设计
2.1 控制电路设计
主控制器采用ATmega8单片机,它是一款采用低功耗CMOS工艺生产的基于AVR RISC结构的8位单片机.AT-mega8可以达到接近1MIPS/MHz的性能,运行速度比普通CISC单片机高出10倍[1],符合本设计的要求.
单片机外围电路如图2所示,单片机的 XTAL1和XTAL2接晶振电路,RESET接复位电路,RXD和TXD分别接蓝牙收发模块的 RXD和 TXD引脚;PC0-PC5,PB0-PB2,PD2、PD3和PD4接键盘输入电路,PD4是激光灯控制电路的输出引脚,用于控制激光灯的开和关.
图2 单片机控制电路
2.2 蓝牙收发电路
本设计中采用HC-06版本蓝牙串口模块,此模块采用CSR主流蓝牙芯片,蓝牙V2.0协议标准,兼容性极强.模块工作电压3.3V、波特率为采用9600bps,可以与蓝牙笔记本电脑、电脑加蓝牙适配器、PDA等设备进行无缝连接[2].模块分主机和从机,主机能和从机配对通信,从机与从机之间或主机与主机之间不能通信,从机能和电脑、手机等的蓝牙配对通信,本设计采用主机模块.
蓝牙收发模块与主控制器的连接电路如图3所示.蓝牙收发模块串口的发送端RXD和接收端TXD引脚分别连接在主控制器串行口的PD1(TXD)和PD0(RXD)引脚上,主控制器通过蓝牙收发模块实现数据的无线发送[3].
图3 蓝牙模块连接电路
2.3 激光灯控制与电源指示电路
激光灯控制电路如图4所示,当单片机端口PD4输出低电平时,激光灯打开,激光二极管射出一束激光,该光束投射到屏幕上,可以形成一个光点,用于指示演讲者正在讲述的内容.如图5所示,为电源、蓝牙指示灯控制电路,当系统启动,电源指示灯常亮,蓝牙指示灯闪烁等待配对,配对成功后停止闪烁并熄灭.
图4 激光灯控制电路
图5 电源指示电路
2.4 键盘接口电路
键盘接口电路如图6所示,单片机的端口PC0-PC5,PB0 -PB2,PD2、PD3和 PD4 接键盘输入电路,其中 PD2、PD3为常用轻触开关按键,其余采用电容触摸按键.
图6 键盘接口电路
2.5 PC端接收电路
PC端硬件连接比较简单,将蓝牙USB适配器直接通过USB连接到PC上即可,插上适配器后,系统会自动装载蓝牙适配器驱动程序.
3 系统软件设计
包括手持终端控制器程序和PC端接收程序两部分.
3.1 手持终端控制器程序设计
图7 手持终端控制器程序流程图
ATMEL AVR Studio集成开发环境(IDE)与Win AVR联合可进行C语言编程,实现对蓝牙USB多媒体控制器部分的程序编写.程序主要完成I/O端口、定时器和串口的初始化,蓝牙模块驱动、按键事件识别、按键事件分组处理、设备配对处理以及向PC机发送按键对应的数据编码等功能,程序流程图如图7所示.设备配对处理程序是通过串口中断接收并应答PC机实现的联系信号实现的.系统初始化时将串口波特率设置为9600kbps,允许中断,双工工作方式,使串口能接收和发送数据.PC机发送0xfa、0X22至手持终端,表示正在请求认证设备类型,以便打开相应串口,收到回复0x99,配对设备成功.设计程序略.
3.2 PC端软件设计
3.2.1 蓝牙驱动程序
蓝牙驱动程序采用目前行业内最流行的蓝牙PC软件、支持Windows 2000,Windows XP,Windows7,Windows Vista,WinCE,Linux等种平台的BlueSoleil,它能实现台式机或笔记本等各种计算机平台间的无线连接,并且还能无线访问种类繁多的支持蓝牙功能的设备,例如手机,耳机,打印机等等.同时,利用BlueSoleil的卓越无线功能,还可以无线接入Internet、搭建蓝牙无线网络,并能够随时和其它计算机或掌上电脑(PDA)交换信息、共享资源.其界面如图8所示.
图8 BlueSoleil主界面
3.2.2 PC 端接收程序
PC端对接收数据处理利用vb6.0设计程序实现,主要通过调用系统API完成相应操作[4],PC端接收程序流程图如图9所示.开启后自动完成设备配对,可进行弹出速度显示,以及模式选项,操作极为方便,界面如图10所示.
图9 PC端接收程序流程图
图10 上位机操作过程界面
长按模式选择键(PB2)3秒,启动菜单窗口于屏幕正中央,单击PB2选择对应模式.
(1)自由模式
1)八个方向键(PC0-PC5,PB0,PB1)控制鼠标移动.
2)PD2,PD3实现鼠标左击,右击功能.
3)加减键(PD6,PD7)控制鼠标移动速度.
(2)PPT模式
1)鼠标左右单击按键功能.
2)鼠标光标控制功能.
3)鼠标光标移动速度控制功能.
4)PPT全屏切换功能.
(3)娱乐模式
1)声音加减(方向上下).
2)快进(方向左右)Ctrl+⇓ 和 Ctrl+(.
3)全屏切换.
4)暂停功能.
4 系统操作与使用
如图11,按键按功能不同分为四组,各组键功能如下:
第一组:PC0-PC5,PB0、PB1:用来控制电脑光标移动的八个方向,上下方向按键同时兼有控制PPT上下翻页和暴风影音播放视频时的声音控制以及pdf文档查看时上下移动页面功能;PB2:功能为PPT全屏控制.
第二组:PD6、PD7:控制光标移动速度的加减.
第三组:PD2、PD3:实现鼠标的左右键单击功能.
第四组:PD5:控制激光灯开关.
同一组按键中当检测到有多个按键按下,仅选取一个优先级最高的发送给计算机,不同组的按键可同时按下.
图11 系统实物效果图
5 结论
本文针对目前市场上多媒体控制器存在的弊端进行改进和创新,研发了一种基于蓝牙通信技术以及电容触摸技术的多媒体器.系统采用电容触摸方式进行控制,使得操作更加人性化;同时电容触摸检测利用Atmega8 I/O口本身特性设计,还可以降低生产成本.
通过实践验证,系统运行稳定可靠,简单实用.
[1]张军.AVR单片机应用系统开发典型实例[M].北京:中国电力出版社,2005.
[2]朱刚,谈振辉,周贤伟.蓝牙技术原理与协议[M].北京:北方交通大学出版社,2002.
[3]张晓冬,曹雷.基于蓝牙技术的单片机与 PC机无线数据通信[J].信息技术,2009,(1):115 -117.
[4]许永和.8051单片机USB接口Visual Basic程序设计[M].北京:北京航天航空大学出版社,2007.