基于ARM的蓝牙广告机的设计 毕业设计基于arm

1.1产品优势

蓝牙广告机系统具有如下基本优势:

(1)接收内容免费,所以它比短信,彩信更具有再传播性。

(2)平台独立,不受任何电信运营商干扰,每一部手机都能成为展示您产品的舞台。

(3)内容形式丰富,支持文本、视频、音频、Flash动画、手机游戏、JAVA程序、电子书等。

(4)受众面广,在中国,蓝牙功能的手机使用量呈高速成长态势。

(5)独立的设备,占用空间小,容易安装,上电可用。

(6)运用嵌入式数据库,为复杂应用提供可能。

(7)支持嵌入式网络服务器。

(8)接受用户定制。

1.2基本功能

蓝牙广告机系统具有如下基本功能:

(1)自动搜索工作范围内的移动蓝牙设备。

(2)支持多种广告发送策略。

(3)支持手机黑名单功能,灵活的多种拒绝重发机制。

(4)能够自动识别并建立与移动蓝牙设备的配对关系(主流常见机型)。

(5)可发送所有手机能支持的文件格式:txt,jpg,mp3,mp4,3gp,games等。

(6)支持多个蓝牙终端设备同时下载。

(7)支持定时发送,定时更新功能。

(8)下载速度最快可达100kb/s,根据手机蓝牙版本和接收环境而定。

(9)传输距离:最远可达20米(100米模块可选)。

(10)支持分时段发送不同的内容。

(11)重复搜索时,能自动判断移动设备的反馈信息,避免重复询问、发送同样的文件。

(12)系统能够自动记录用户下载的详细信息,供投放客户决策参考。

(13)支持有线或者无线网络更新。

1.3应用领域

蓝牙广告机系统可用于购物中心、公共交通、商场、休闲中心、电影院、餐馆、博物馆、户外广告、展览会、候机厅、候车厅、公交站、风景区、公司接待处等场所。

1.4系统特点

蓝牙广告机系统具有如下特点。

(1)采用了采用了蓝牙技术的PDA个人数字助理,用户可很方便地进人因特网。

(2)用户操作界面简单,采用了QT设计,可触摸屏操作。

(3)采用北京博创公司的S3C2410嵌入式开发板作为开发平台。

1.5系统硬件

蓝牙广告机系统采用了基于ARM920T内核的SAMSUNGS3C2410处理器,配备蓝牙设备。

1.6系统软件

蓝牙广告机系统采用Linux实时操作系统,主要

系统引导程序:u-boot.bin

操作系统:Linux2.4.18/Linux2.6.18(可选)

根文件系统:root.cramfs

图形用户界面:支持QT/E

设备驱动:串口,Ethernet,Audio,SD卡,IDE,CF卡,AD/DA,USB,红外,蓝牙,LCD,触摸屏,PS2keyboardmouse,17键数字键盘,SPI,I2C,RTC,GPIO等。

开发工具:JTAG烧写NorFlash工具,arm-linux-gcc交叉编译器,GDB,GDBSERVER调试工具,anjuta开发环境,sourceNavigator代码编辑器,文件系统制作工具等。

多媒体软件:mplayer媒体播放器,实现MPEG、MPEG2、MPEG4、AVI、WMV等多种媒体解码;madplay音频播放器。

二、蓝牙广告系统硬件设计

2.1硬件分析

为构建嵌入式蓝牙广告机应用系统,通过对蓝牙广告机系统进行分析,蓝牙广告机系统是近距离信息传播设备,能主动搜索附近的蓝牙终端设备,免费向其定向投放客户感兴趣的资讯。其接收内容免费,所以它比短信,彩信更具有再传播性。平台具有独立性,不受任何电信运营商干扰,每一部手机都能成为展示您产品的舞台。所展现的内容形式丰富,支持文本、视频、音频、Flash动画、手机游戏、JAVA程序、电子书等。系统占用空间小,容易安装,上电可用。使用了嵌入式数据库,为复杂应用提供可能。自动搜索工作范围内的移动蓝牙设备,支持多种广告发送策略,支持手机黑名单功能,灵活的多种拒绝重发机制,能够自动识别并建立与移动蓝牙设备的配对关系(主流常见机型),支持多个蓝牙终端设备同时下载,支持定时发送,定时更新功能,下载速度最快可达100kb/s,传输距离最远可达20米(100米模块可选),支持分时段发送不同的内容。为了实现蓝牙广告机系统的基本功能,采用以S3C2410为核心器件的开发板,配备蓝牙设备组成了蓝牙广告机的硬件系统。

3.1.2蓝牙体系结构图

目前,蓝牙技术已被普遍应用在笔记本电脑上,以帮助两台(或多台)笔记本电脑之间实现无线通信。较红外线传输“必须保证传输信息的两个设备正对,且中间不能有障碍物”、“几乎无法控制信息传输的进度”、“没有成为被广泛接受的工业标准、设备种类不

多”等致命的缺陷,蓝牙的优势显示出了勃勃生机。

全世界已有2161家公司参加了SIG(SpecialInterestGroup)组织,并正在共同制定蓝牙技术标准。SIG的核心公司除上述最初提出开发蓝牙技术的5家公司外,还有3com、Lucent技术、微软和摩托罗拉4家。SIG成员公司包括:PC个人电脑、移动电话、网络相关设备、外围辅助设备和A/V设备、通讯设备和汽车电子、自动售货机、医药器械、计时装置等诸多领域的设备制造公司。

蓝牙体系结构包括3部分,各部分的构成见图1.6所示。下面就硬件、软件、路由机制3方面作简略说明。

(1)硬件部分

①射频模块

将基带模块的数据包通过无线电信号以一定的功率和跳频频率发送出去,实现蓝牙设备的无线连接。

②基带模块

采用查询和寻呼方式,使跳频时钟及跳频频率同步,为数据分组提供对称连接(SCO)和非对称连接(ASL),并完成数据包的定义、前向纠错、循环冗余校验、逻辑通道选择、信号噪化、鉴权、加密、编码和解码等功能。它采用混合电路交换和分组交换方式,既适合语音传送,也适合一般的数据传送。每一个语音通道支持64kb/s同步语音,异步通道支持最大速率723.2kb/s(反向57.6kb/s)的非对称连接或433.9kb/s的对称连接。

(2)蓝牙协议(软件)

①链路管理协议(LMP)

通过对链接的发送、交换、实施身份鉴权和加密,并通过协商确定基带数据分组的大小,控制射频部分的电源模式、工作周期及网络内蓝牙设备的连接状态。

②逻辑链路控制与应用协议(L2CAP)

L2CAP与LMP平行工作,共同实现OSI的数据链路层的功能。它可提供对称连接和非对称连接的数据服务。

③串行电缆仿真协议(RFCOMM)

在蓝牙的基带上仿真RS-232的功能,实现设备串行通信。例如,在拨号网络中,主机将AT命令发送到调制解调器,再传送到局域网,建立连接后,应用程序就可以通过RFCOMM提供的串口发送和接收数据。

④服务发现协议(SDP)

按照用户需要,发现相应服务及有关设备,并给出服务与设备列表。工作过程如下:主设备广播1条信息,从设备做出相应的反应,将收集到的地址存于主设备的内存中,然后主设备从中选择1个地址,利用链路管理代理所提供的进程在物理层建立连接。一旦建立了服务发现协议,在主从设备之间的物理层连接上就建立了一条LZCAP点对点通信层。

(3)无线办公网络的路由机制

利用蓝牙技术构建现代企业无线办公网络,实现的基本功能包括:

●文件、档案、报表、设备资源的共享和互连,比如PC机之间的互连,PC机与各种外设或智能设备的互联和共享等;

●利用蓝牙设备无线访问单位内部局域网以及Internet;

●通过一定的路由机制实现办公网络内部的各个匹克网之间的互连。

根据企业的实际需要,企业无线网络由多个匹克网(piconet)构成,而不同匹克网之间的通信应该只在办公网络内部进行路由,而不应通过局域网,这就需要建立一种特殊的路由机制,使得各匹克网之间的通信能够进行正确的路由,达到方便快捷的通信、拓宽通信范围、减轻网络负载的目的。

①蓝牙网关

用于办公网络内部的蓝牙移动终端通过无线方式访问局域网以及Internet;跟踪、定位办公网络内的所有蓝牙设备,在两个属于不同匹克网的蓝牙设备之间建立路由连接,并在设备之间交换路由信息。

主要功能包括:

●实现蓝牙协议与TCP/IP协议的转换,完成办公网络内部蓝牙移动终端的无线上网功能。

●在安全的基础上实现蓝牙地址与IP地址之间的地址解析,它利用自身的IP地址和TCP端口来唯一地标识办公网络内部没有IP地址的蓝牙移动终端,比如蓝牙打印机等。

●通过路由表来对网络内部的蓝牙移动终端进行跟踪、定位,使得办公网络内部的蓝牙移动终端可以通过正确的路由,访问局域网或者另一个匹克网中的蓝牙移动终端。

●在两个属于不同匹克网的蓝牙移动终端之间交换路由信息,从而完成蓝牙移动终端通信的漫游与切换。在这种通信方式中,蓝牙网关在数据包路由过程中充当中继作用,相当于蓝牙网桥。

②蓝牙移动终端(MT)

蓝牙移动终端是普通的蓝牙设备,能够与蓝牙网关以及其他蓝牙设备进行通信,从而实现办公网络内部移动终端的无线上网以及网络内部文件、资源的共享。

如果目的端位于单位内部的局域网或者Internet,则需要通过蓝牙网关进行蓝牙协议与TCP/IP协议的转换,如果该MT没有IP地址,则由蓝牙网关来提供,其通信方式为MT-BG–MT。如果目的端位于办公网络内部的另一个匹克网,则通过蓝牙网关来建立路由连接,从而完成整个通信过程的漫游.其通信方式为MT-BG-M_MT(为主移动终端)-MT。采用蓝牙技术也可使办公室的每个数据终端互相连通。例如多台终端共用1台打印机,可按照一定的算法登陆打印机的等待队列,依次执行。

3.1.3LinuxBluetooth软件层

BlueZ是官方LinuxBluetooth栈,由主机控制接口(HostControlInterface,HCI)层、Bluetooth协议核心、逻辑链路控制和适配协议(LogicalLinkControlandAdaptationProtocol,L2CAP)、SCO音频层、其他Bluetooth服务、用户空间后台进程以及配置工具组成。

Bluetooth规范支持针对BluetoothHCI数据分组的UART(通用异步接收器/传送器)和USB传输机制。BlueZ栈对这两个传输机制(drivers/Bluetooth/)都支持。BlueZBNEP(Bluetooth网络封装协议)实现了Bluetooth上的以太网仿真,这使TCP/IP可以直接运行于Bluetooth之上。BNEP模块(net/bluetooth/bnep/)和用户模式pand后台进程实现了Bluetooth个人区域网(PAN)。BNEP使用register_netdev将自己作为以太网设备注册到Linux网络层,并使用上面为WLAN驱动程序描述的netif_rx来填充sk_buffs并将其发送到协议栈。BlueZRFCOMM(net/bluetooth/rfcomm/)提供Bluetooth上的串行仿真,这使得串行端口应用程序(如minicom)和协议(如点对点协议(PPP))不加更改地在Bluetooth上运行。RFCOMM模块和用户模式dund后台进程实现了Bluetooth拨号网络。

3.1.4BluetoothUSB适配器

BluetoothUSB适配器拥有一个BluetoothCSR芯片组,并使用USB传输器来传输HCI数据分组。因此,LinuxUSB层、BlueZUSB传输器驱动程序以及BlueZ协议栈是使设备工作的主要内核层。现在,您将了解到三层之间如何交互以使Linux网络应用程序在这个设备上运行。

LinuxUSB子系统类似于PCMCIA子系统,它们都有与移动设备交互的主机控制器设备驱动程序,并且都包含一个向主机控制器和单个设备的设备驱动程序提供服务的核心层。USB主机控制器遵循两个标准之一:UHCI(通用主机控制器接口)或OHCI(开放式主机控制器接口)。由于具有PCMCIA,单个USB设备的Linux设备驱动程序不依赖于主机控制器。经由USB设备传输的数据分为四种类型(或管道):Control、Interrupt、Bulk和Isochronous。

前两个通常用于小型消息而后两个则用于较大型的消息。

USB设备插入时,主机控制器使用控制管道来枚举它并给它分配设备地址(1到127)。主机控制器设备驱动程序读取的设备描述符包含关于设备的信息,例如class、subclass和protocol。Linux的usbcore内核模块支持USB主机控制器和USB设备。并包含USB设备驱动程序可以使用的函数和数据结构。USB驱动程序利用usbcore及自己的class/subclass/protocol信息(请参阅内核include/linux/usb.h中的structusb_driver)注册了两个入口点:probe和disconnect。当相应的USB设备被附加时,usbcore用枚举期间从设备配置描述符中读取的class信息来匹配已注册的class信息,并将设备与相应的驱动程序绑定。这个核心使用一种叫做USBRequestBlock或URB(在include/linux/usb.h中定义)的数据结构,来异步地管理主机和设备之间的数据传输。设备驱动程序使用这些例程来请求各种类型的数据传输(control、interrupt、bulk或isochronous)。传送请求完成后,核心会使用以前注册的回调函数来通知驱动程序。

基于ARM的蓝牙广告机的设计 毕业设计基于arm

针对BluetoothUSB设备而言,HCI命令使用Control管道传输,HCI事件使用Interrupt管道,Asynchronous(ACL)数据使用Bulk管道,而Synchronous(SCO)音频数据使用Isochronous管道。Bluetooth规范为BluetoothUSB设备定义了class/subclass/protocol代码0xE/0x01/0x01。BlueZUSB传输驱动程序(drivers/bluetooth/hci_usb.c)将该class/subclass/protocol信息注册到LinuxUSB核心。BelkinUSB适配器插入时,主机控制器设备驱动程序会枚举它。因为在枚举期间从适配器读取的设备描述符与hci_usb驱动程序注册到USB核心的信息相匹配,所以这个驱动程序可附加到BelkinUSB设备。由hci_usb驱动程序从以上描述的各个端点读取的HCI、ACL和SCO数据被透明传送到BlueZ协议栈。一旦做完这些,通过使用以上描述的BlueZ服务和工具,LinuxTCP/IP应用程序就可以运行在BlueZBNEP上,而串行应用程序则可以运行在BlueZRFCOMM上。

  

爱华网本文地址 » http://www.413yy.cn/a/25101014/228433.html

更多阅读

HC-05蓝牙模块与单片机的使用 hc05蓝牙模块

HC-05蓝牙模块与单片机的使用——简介关于HC-05蓝牙模块如何搭配单片机使用,还是以Arduino UNO升级改进版Manduino UNO为例,进行说明。HC-05蓝牙模块适用于各种3.3V的单片机系统,模块可以使用AT指令设置波特率配对、密码用户信息等,默

如何正确的给蓝牙耳机充电呢 运动蓝牙耳机如何充电

? ? 看到这标题,或许有人想,给蓝牙耳机充电还不够简单吗?直接把插头插上、把电源打开就可以啦、、、? ? 说的真的很简单,可是仍然有很多的蓝牙耳机用户对于如何给蓝牙耳机充电的情况不甚了解,或者是粗心大意的,然后造成蓝牙耳机各种程度

Z 高品质蓝牙音频设计的考虑ACL,SCO 高品质音频播放器

蓝牙已确确实实的来到人们的生活当中。我们曾经怀疑“身边会有多少蓝牙设备可以连接”,现在我们想的却是“我和你的蓝牙设备连接效果会怎么样”。直到最近,蓝牙音频传输都较为简单。蓝牙规范只定义了一种传输机制,对于更复杂的应用几乎

MOTOHS850蓝牙耳机的使用方法 hs 13w蓝牙耳机

在网上买了一个,今上午收到,刚试了一下效果不错。第一次用蓝牙耳机,在网上查到使用方法,收藏备查。一、蓝牙耳机与手机配对方法:  1、首次使用,尽量让耳机冲上2-4个小时左右,以后充2小时即可,说明书上也是这么说的,最好不要超过4小时,有的

声明:《基于ARM的蓝牙广告机的设计 毕业设计基于arm》为网友看的见的阳光分享!如侵犯到您的合法权益请联系我们删除