2.3 硬件实现 2.3.1蓝牙模块连接
蓝牙主模块用于接收从模块发送的数据,连接在micro2440开发板的串口3上,该串口输出TTL信号。蓝牙模块有VCC、RXD、TXD、GND、SET、3V六个引脚。VCC为电源引脚,工作电压为5V。RXD与TXD分别为接收数据和传送数据引脚。GND为地线引脚。SET可作为硬件主从设置口,SET引脚接3.3V电压时模块为主模块,悬空或接GND模块为从模块。将开发板VCC RXD TXD GND与蓝牙模块的VCC、TXD、RXD、GND引脚对应连接,注意输入输出需要反接。具体连线方式如图2-5蓝牙模块连接图。
2.3.2无线网卡连接
由于S3C2440上已经安装了操作系统,这为我们使用TL-WN823N提
供了便利,但TP-LINK公司并没有提供该款网卡在Linux系统下的驱动程序,要想顺利使用该网卡必须首先解决驱动问题。
下面对其驱动移植过程进行简要说明,首先挂载该网卡,利用系统返回信息查看其USB ID:0bda 8178ID,搜索该ID对应的芯片组:REALTEK公司的RTL8192CU芯片,下载该型号的芯片驱动对其程序进行修改使其适应本操作系统,修改其Make file文件并指定目标系统的硬件构架、系统内核、编译工具链等[5]。由于驱动的编译需要交叉编译工具链和经过编译的目标板操作系统的源码,所以我们要构建这两方面的编译环境,这部分工作繁琐复杂又不在本文的重点讨论范围内因而具体步骤不再赘述。本文最终构建的交叉编译工具链版本为4.3.2,移植、剪裁、编译的目标板操作系统内核版本为2.6.32.2,在以上工作全部完成后,对网卡芯片的驱动程序进行编译,最终获得驱动文件,加载驱动文件,驱动无线网卡正常工作同时禁用板载有线网卡避免冲突,再经过简单的配置,无线网络接口搭建完成。 2.4 本章小结
本章主要讲述本系统旨在服务于空巢老人这一目的,并以此对系统实现需要使用的主要技术选择上进行了分析;对系统总体设计思想进行了描述,并根据系统设计思想设计出系统的总体框图,为后续详细设计打下基础。依据系统总体设计思想,根系统性能以及适应性综合考虑对各个模块进行了选型。并且从硬件方面对系统进行了总体设计,完成了硬件系统的搭建工作,为系统软件的实现打下良好的基础。
第三章 系统软件设计与实现
3.1蓝牙模块通信设置 3.1.1连接测试
蓝牙通信模块连接好以后可以通过发送AT指令测试模块是否连接正确,能否正常通信,以及设置主从模块、波特率、以及查询模块名称等。可以通过PC机串口和BC04-B蓝牙模块进行通信。串口缺省波特率为9600bps。打开串口调试助手,选择相应的串口号,设置波特率为9600bps,校验位为无校验位,停止位为1位。用杜邦线将模块与PC机串口对应连接,串口调试助手接收缓冲区没有任何反应,此时在将RXD与TXD引脚反接,连接正确,串口将会收到一串信息,SLAVE表示模块当前处于从模块。如图3-1串口通信确认图。
确认正常工作状态后,此时在对话框内输入AT指令,并敲击回车换行键,确定光标在下一行,点发送数据会返回OK值。 3.1.2设置蓝牙模块名称
在发送缓冲区输入“AT+NAME”,点击发送数据,接收缓冲区显示“+NAME=BOLUTEK”也可发送“AT+NAME
输入“AT+BAUD8”,点击发送数据,8对应波特率值为115200bps。
关于波特率为何设置为115200bps将在后文为读者介绍。返回“+BAUD=8 OK”表示设置成功,设置成功后重新进行与的串口连接,将波特率调至115200bps,校验位、停止位等设置保持不变。连接成功,串口将会收到一串信息,输入“AT”,返回“OK”值。设置成功后如图3-3 波特率设置图。 3.1.4设置主从模式
BLK-MD-BC04-B蓝牙模块采用主从一体式设计且支持软硬件控制主从
模式转换,现需要通过AT指令将其设置为主模式。输入“AT+ROLE”查询
当前模式,返回“ROLE=0”表示当前模式为从模式,也可根据模块上LED等闪烁方式确定蓝牙模块状态,LED灯均匀慢速闪烁表示当前模式为从模式。LED灯闪烁方式对应于蓝牙模块相应的状态及模式见表9.1 状态对应表 。将其设置为主模式,在发送缓冲区输入“AT+ROLE1”,点击发送数据,返回“+ROLE1 OK”表示设置成功。设置如图3-4图。此时,通过模块的LED灯也可直观的看到主模式以设置成功,模块LED均匀快速闪烁。