- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
关键词:蓝牙嵌入式系统驱动程序
Windows CE中实现蓝牙串口驱动程序
作者:张敬 高强 来源:电子技术应用 时间: 年 月 日 阅读 次
2005 3 8 3:57 2378
摘要 :蓝牙通信平台在嵌入式系统的实现过程中 , (对象交换)始终是很重要的一部分 ,基于 的蓝牙文件传输得到广泛应用 。
OBEX OBEX
而 OBEX的实现是基于蓝牙仿真接口,所以蓝牙串口驱动程序的实现就有了很重要的意义。介绍了Windows CE下串口驱动程序的结构和
一种具体的实现方法。
关键词:蓝牙 嵌入式系统 驱动程序
Windows CE作为一种典型的嵌入式操作系统,通过将蓝牙应用移植到 Widows CE中,对于如pSOS+、Nucleus等其它嵌入式系
统 ,具有典型意义 。由于OBEX上的文件传输应用建立在 RFCOMM实现的蓝牙仿真串口上 ,本文介绍 OBEX文件传输的蓝牙虚拟串口驱动
程序的实现。
1Windows CE设备驱动程序概述
WindowsCE支持广泛的基于各种 CE平台的设备驱动程序 。目前,它提供了四种设备模型 ,其中两种是专用于 WindowsCE的模型 ,
另外两种外部模型来自其它操作系统 。基于 WindowsCE的两种模型是本机的设备驱动程序和流接口驱动程序 。两种外部模型用于通用串行
总线(USB)和网络驱动器接口标准(NDIS)的驱动程序。
由于蓝牙协议是在无线技术下的仿真串口 ,蓝牙中 OBEX的许多应用正是基于蓝牙仿真串口。而流接口驱动程序通过一组流接口函数
使得应用程序可以通过文件系统中的特殊文件而与设备接口,因此蓝牙仿真串口的功能性更适合流接口驱动程序的结构。
2 Windows CE下蓝牙串口驱动程序的实现
虽然蓝牙设备驱动程序的实现采用流接口驱动程序设计 ,但由于两种驱动程序的基本结构与原理相似 ,所以下文从本机设备驱动程序结
构开始,可以更清楚地认识蓝牙设备驱动程序的实现原理。
2.1 本机设备驱动程序结构
WindowsCE中包含的样本设备驱动程序分为两种类型 :单片驱动程序 (Monolithicdevicedriver)和分层的驱动程序 (Layered
Devicedriver)。单片驱动程序基于单个码片 ,该码片直接把硬件设备的功能性通过设备驱动程序接口传递给操作系统 。与单片驱动程序相
比,分层的驱动程序由两个设置好的层组成:上层是模型设备驱动程序(MDD),下层是依赖平台的驱动程序(PDD)。本文采用分层
的驱动程序来连接蓝牙硬件和上面的文件传输应用。图1说明了两种驱动程序是如何在WindowsCE操作系统中集成的。
设备驱动程序接口 (DDI)是在MDD中实现的函数集 ,GWES模块通过这个接口调用设备驱动程序 ;设备驱动程序服务器提供接
口(DDSI)是在PDD中实现的函数集并由MDD调用。由于微软提供了所有与MDD模块相关的源代码,所以对这部分不用做任何改
动,只需将自己的PDD模块与MDD模块链结成一个公用库。
理解了本机设备驱动程序的结构后 ,从图1右边不难看出 ,流接口驱动程序只是把流接口作为它们的DDI使用 。在这种情况下 ,不必
要把这些驱动程序与GWES模块逻接起来。它们以普通的DLL方式存在并根据需要被调用。
2.2 蓝牙仿真串口驱动程序实现
蓝牙仿真串口是用蓝牙RFCOMM协议实现无电缆的无线串口通信 ,与本机设备驱动程序一样 ,实现流接口的串口驱动程序同样只需
实现蓝牙的PDD模块。
PDD模块包括四部分:第一部分是必须自己实现的所有DDSI接口 ;第二部分是蓝牙协议栈包括FRCOMM 、SDP、L2CA
P以及HCI实体;第三部分是HCI传输层通过UART或者USB接口连接到蓝牙硬件;最后一部分是为蓝牙应用提供的图形界面接口
和控制端口模块,用来对整个协议栈初始化、蓝牙硬件初始化、搜索附近的蓝牙设备以及发现指定设备上的服务。如图2所示。
在图2所示的蓝牙仿真串口驱动程序的系统结构中,设备管理程序是用户层的程序,在基于WindowsCE的平台上不停地运行着。设
备管理程序不是内核的一部分,但它是与内核、注册表和注接口驱动程序DLL有相互影响的单独部分。
您可能关注的文档
最近下载
- 新22J04-2 内装修二(细部构造).docx VIP
- 第1课《消息二则》同步作业部编版语文八年级上册.docx VIP
- 2020新译林版高中英语选择性必修四Unit2 Integratedskills课件.pptx VIP
- NB/T 20007.1-2024 压水堆核电厂用不锈钢 第1部分:1、2、3级设备用奥氏体不锈钢锻件.pdf VIP
- 欧陆EV100系列矢量型变频器.doc
- 医疗机构管理条例试题及答案.docx VIP
- 2025年焊工(技师)职业技能鉴定理论考试题库(含答案).docx
- 山东省临沂市百师联盟2024-2025学年高三上学期开学考试化学试题(无答案).pdf VIP
- M1332B型 外圆磨床说明书完成版.pdf VIP
- 巴菲特名言经典语录巴菲特经典语录大全.doc VIP
文档评论(0)