zoukankan      html  css  js  c++  java
  • 添加蓝牙通讯功能

    下面是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

  • 相关阅读:
    2019 年年终总结
    Java/C# 中为何需要 Getter/Setter?
    使用 supervisord 设置应用开机启动
    Linux 性能监控与故障排查:主要性能指标说明及监控方法
    「Bug」Jenkins Slave 卡顿与僵尸进程
    HTTP/HTTPS 的监听方法,以及浏览器与服务器的协议协商机制
    查询主机公网ip
    Linux Server Swap 分区设置
    Kubernetes 常见错误
    Kubernetes 学习笔记(五):数据卷
  • 原文地址:https://www.cnblogs.com/liang123/p/6325664.html
Copyright © 2011-2022 走看看