添加蓝牙通讯功能
发布日期:2021-06-30 21:58:32 浏览次数:3 分类:技术文章

本文共 1280 字,大约阅读时间需要 4 分钟。

下面是WinCE中蓝牙协议栈的架构图:

可以看到,HCI传输层以上的协议层全部由WinCE实现了,所以蓝牙模块只需要实现了基带层和链路管理层,并提供HCI传输接口给WinCE就可以了。WinCE支持使用USB、UART、SDIO等接口的蓝牙模块。

开发板上使用的是CSR-BC4-EXT-C2-PA蓝牙模块,模块接在串口0上。使用CSR的BCSP传输协议。以下是配置方法:

1 添加Bluetooth Stack with Universal Loadable Driver

2 注册表配置

[HKEY_LOCAL_MACHINE/Software/Microsoft/Bluetooth/Transports/BuiltIn/1]

    "driver"="bthcsr.dll"

    "flags"=dword:4

    "name"="COM0:"

    "baud"=dword:1c200

    "resetdelay"=dword:1388

使用COM0,波特率115200。

3 配置PSKEY

先用BlueFlash烧写固件,然后用PSTool配置PSKEY,只要配置HOST_INTERFACE和UART_BAUDRATE就可以了,其他按默认配置。

PSKEY_HOST_INTERFACE: UART link running BCSP

PSKEY_UART_BAUDRATE:  115.2kbaud

4 添加文件传输服务

1) 在PB里增加OBEX inbox和OBEX File Browser组件

2) 修改注册表:

; @CESYSGEN IF SERVERS_MODULES_OBEXFILE

[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Obex/Services/{f9ec7bc4-953c-11d2-984e-525400dc9e09}]

    "BaseDir"="//Temp//Ftp" ;默认根目录.对方可见目录

    "Server"="obexfile.dll"

    "canWrite" = dword:1   ;可访问,可读写

    "authenticate"= dword:0

    "transport authentiate" = dword:0

    ; @CESYSGEN IF CE_MODULES_BTD

    "BluetoothSdpRecord"=hex:35,41,09,00,01,35,03,19,11,06,09,00,04,35,11,35,/

    03,19,01,00,35,05,19,00,03,08,0a,35,03,19,00,08,/

    09,00,06,35,09,09,65,6e,09,00,6a,09,01,00,09,00,/

    09,35,08,35,06,19,11,06,09,01,00,09,01,00,25,03,/

    46,54,50

    ; @CESYSGEN ENDIF CE_MODULES_BTD

; @CESYSGEN ENDIF SERVERS_MODULES_OBEXFILE

转载地址:https://loongembedded.blog.csdn.net/article/details/7907122 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Android Studio MAT内存分析初探
下一篇:wince串口蓝牙

发表评论

最新留言

很好
[***.229.124.182]2024年04月12日 02时30分07秒