美文网首页
蓝牙学习-BNEP

蓝牙学习-BNEP

作者: 集韵增广 | 来源:发表于2022-05-05 11:47 被阅读0次

BNEP - Bluetooth Network Encapsulation Protocol

BNEP提供传输控制和通过标准网络协议(如TCP,IPv4等)的数据包处理。BNEP是基于L2CAP接口实现的,BNEP定义了最小L2CAP MTU为1691字节。


BNEP的服务能力

1,BNEP提供的方法

bnep_init
bnep_packet_handler
bnep_can_send_packet_now
bnep_request_can_send_now_event
bnep_send
bnep_set_net_type_filter
bnep_set_multicast_filter
bnep_set_required_security_level
bnep_connect
bnep_disconnect
bnep_register_service
bnep_unregister_service
bnep_deinit

BNEP消息接收

通过bnep_register_packet_handler注册BNEP事件处理函数

访问远端BNEP服务

连接远端设备需要知道他的UUID(可以通过SDP查询PAN Profile的属性获取UUID)。根据UUID,应用可以创建连接(bnep_connect),然后会收到BNEP_EVENT_CHANNEL_OPENED消息以确定连接成果还是失败。

连接成功后就可以收到标准网络包。发送标准网络包和所有发送一样都需要先确认是否能发送(bnep_can_send_packet_now),等到可以发送的时候调用(bnep_send)。

BNEP支持两种包过滤方式:bnep_set_net_type_filter和bnep_set_multicast_filter。

提供BNEP服务

调用bnep_register_service注册服务(设置服务UUID和最大包大小)。通过监听BNEP_EVENT_INCOMING_CONNECTION事件以接受或者拒绝连接建立。

相关文章

  • 蓝牙学习-BNEP

    BNEP - Bluetooth Network Encapsulation Protocol BNEP提供传输控...

  • 蓝牙学习-PAN

    PAN - Personal Area Networking Profile PAN基于BNEP为应用层提供蓝牙设...

  • 【Objective-c】_蓝牙开发

    ios蓝牙开发学习笔记(一)蓝牙概述 ios蓝牙开发学习笔记(二)central角色的实现 ios蓝牙开发学习笔记...

  • iOS蓝牙开发学习笔记 - 系列

    详见我的csdn: iOS蓝牙开发学习笔记(一)蓝牙概述 iOS蓝牙开发学习笔记(二)central角色的实现 i...

  • 经典蓝牙实现聊天功能(新版附件的人?)

    前言 原来蓝牙现在还分经典蓝牙、低功耗蓝牙和双模蓝牙,技术的发展真的超过个人的认知速度,不学习意味退步。本来写着低...

  • 低功耗蓝牙BLE

    最近接触了一点蓝牙知识,发现有关蓝牙学习网站:英文版 https://www.bluetooth.com蓝牙开发者...

  • ios蓝牙参考

    参考文章:iOS中的蓝牙开发iOS-BLE蓝牙开发demo 官网 转载 CenteralManager学习笔记

  • Android 经典蓝牙开发(一)

    经典蓝牙学习记录 Android app 可通过Bluetooth API 执行以下操作: 扫描其他蓝牙设备 查询...

  • Arduino 入门项目系列 (4) - Android 手机通

    上周鼓捣 Deepin 系统去了,就没认真学习,发文章。这周学习的是蓝牙模块的使用。实现蓝牙模块控制 LED 的开...

  • 蓝牙Mesh的由来

    从蓝牙的发展历史中,弄清蓝牙mesh的前世今生?思考灵魂三问:从哪来,到哪去,它要干什么。为接下来学习蓝牙mesh...

网友评论

      本文标题:蓝牙学习-BNEP

      本文链接:https://www.haomeiwen.com/subject/rnysyrtx.html