基于蓝牙通信的三种应用

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

华北电力大学

实验报告

|

|

实验名称综合设计(蓝牙通信的三种应用)

课程名称微计算机原理与嵌入式系统

|

|

专业班级:自动实1201 学生姓名:徐海洲

学号:201202020423 成绩:

指导教师:林永君实验日期:2014/7/8

引言(Introduction) (1)

高层次设计(High Level Design) (2)

硬件(Hardware) (3)

蓝牙部分 (3)

蓝牙模块规格 (3)

模式与指示灯 (3)

蓝牙无线模块设置方式: (4)

蓝牙串口通信参数设置 (5)

蓝牙与单片机的连接 (6)

遥控车(智能车)部分 (6)

软件(Software) (7)

遥控车部分 (7)

单片机下位机 (7)

手机遥控器(上位机) (10)

智能车无线上位机部分 (11)

单片机下位机程序 (11)

MATLAB GUI上位机部分 (12)

手机玩电脑游戏放映PPT (14)

利用手机放映PPT (15)

远程桌面 (16)

手机玩极品飞车 (17)

结果(Results) (17)

准确性 (17)

实用性 (17)

结论(Conclusions) (18)

引言(Introduction)

本设计利用蓝牙无线通信完成三项内容:

1、基于Android的无线蓝牙遥控小车。

2、基于MATLAB GUI的无线蓝牙智能车上位机。

3、利用蓝牙实现利用手机控制电脑,玩电脑游戏,放映PPT等功能。

蓝牙在我们生活和学习中的应用非常广泛,几乎每一部手机、电脑都有蓝牙功能。我们可以利用蓝牙进行近距离的文件传输。我们可以利用蓝牙把手机做成四轴飞行器的遥控器,从而省去高昂的遥控器的费用。可以利用蓝牙做智能车的无线上位机,从而高效的调节智能车控制系统的参数。能够利用好蓝牙可以为我们的学习生活带来很大的方便。因此本次综合设计,我利用蓝牙完成了上述三个内容。

高层次设计(High Level Design)

蓝牙,是一种支持设备短距离通信(一般10m内)的无线电技术。能在包括移动电话、PDA、无线耳机、笔记本电脑、相关外设等众多设备之间进行无线信息交换。利用“蓝牙”技术,能够有效地简化移动通信终端设备之间的通信,也能够成功地简化设备与因特网Internet之间的通信,从而数据传输变得更加迅速高效,为无线通信拓宽道路。

本设计使用的蓝牙模块采用CSR Bluetooth 2.0核心芯片BC417设计,支持在通用异步串行通信协议(UART)下的数据透明传输,单片机通过UART协议使用蓝牙串口模块直接收发数据,不需要考虑模块初始化与通信协议。是最简单和最可靠使用的无线通讯方式。支持该协议通信接口的智能设备众多,例如:通用计算机(PC)上的COM 口,飞思卡尔系列单片机的SCI接口,德州仪器(TI)MSP430系列单片机的UART接口等等。本模块利用蓝牙通信作为物理层代替传统异步串行通信中的TX和RX导线,从而实现无线异步串行通信。

任何原先使用UART串口的设备,以及可以使用虚拟串口的设备都可以使用本蓝牙串口模块实现透明无线数据通信。常用领域如下:飞思卡尔智能车竞赛中数据监控与参数设置,便于调试与测试。

各种电子设计惊呆挑战杯等比赛中的调试与测试

无线蓝牙遥控器设计

无线PowerPoint操作笔设计

硬件(Hardware)

蓝牙部分

蓝牙模块规格

模式与指示灯

上图现实了蓝牙串口模块的上半部分,即拨动式开关和指示灯

部分,拨动式开关的主要作用是设置蓝牙串口的工作模式,工作模式分为AT和BT模式。AT模式用于配置蓝牙串口模块的各项参数,例如蓝牙名称、蓝牙配对秘药、通信波特率,也用于主机模式下的主动搜索。BT模式用普通串口串行通信,无论是各种连接形式,如果用于异步串行通信的话,都是在BT模式下进行。

蓝牙无线模块设置方式:

蓝牙模块指示灯对应模式和状态示意图

蓝牙串口通信参数设置

在蓝牙串口在蓝牙串口模块的通信设置中,有三个重要的参数:UART速率,停止位与校验。UART速率指的就是使用蓝牙串口模块通信的两个设备的异步通信的波特率。由于异步通信没有时钟引脚,因此需要约定好通信速率才能进行通信。常见的波特率有:4800bps、9600bps,38400bps,57600bps,115200bps。停止位是一个字节数据通信完毕的标准,通常是1位,也可以设置为2位。校验

是奇偶校验,Odd为奇校验,Even是偶校验。通常设置为不校验。蓝牙与单片机的连接

蓝牙与MCU相连时,只需将VCC、GND接上,再将蓝牙的TX与MCU的RX相连,蓝牙的RX与MCU的TX相连。

连接51时蓝牙的TX与P3^0口相连,RX与P3^1口相连.

连接MC9S12XS128时将TX与PS0口相连,RX与PS1口相连. 遥控车(智能车)部分

本设计使用的是我去年校内智能车竞赛的光电组线性CCD车模,在原有硬件和程序的基础上,增加蓝牙遥控,蓝牙上位机功能,通过第一位拨码开关进行自动寻线与手机遥控的切换。单片机采用飞思卡尔公司的MC9S12XS128单片机。

软件(Software)

遥控车部分

单片机下位机:

MC9S12XS128内置的SCI模块是全双工、波特率可编程设置、可编程选择8位数据位或9位数据位的串行通讯接口(简称串口)。

串口相关程序如下:

//---------------------------------------------------------------------

// 函数功能:UART0_Init初始化

// 形式参数:无

// 函数返回值:无

//---------------------------------------------------------------------

void UART0_Init(void)

{

SCI0CR1 = 0x00;

SCI0CR2 = 0x2C; //接收中断使能,发送接收使能

SCI0BD = 0x34; //波特率配置成38400

//When IREN = 0 then

//SCI baud rate = SCI bus clock / (16 x SBR[12:0])

}

//---------------------------------------------------------------------

// 函数功能:SCI0中断服务子程序

// 形式参数:无

// 函数返回值:无

//---------------------------------------------------------------------

#pragma CODE_SEG __NEAR_SEG NON_BANKED

interrupt VectorNumber_Vsci0 void SCI0_ISR(void)

{//Receive data register full interrupt

if(SCI0SR1_RDRF)

{

g_SCI0_int_RDRF_flag=1;

g_REV_DATA=SCI0DRL;

}

相关文档
最新文档