TI中文支持网
TI专业的中文技术问题搜集分享网站

CC2541 主从机数据通信的问题

一般情况下Central作为GATT_Clitnt

Peripheral 作为GATT_Service 

Central调用GATT_WriteCharValue 或者 GATT_ReadCharValue和作为Service的Peripheral从机通信
Peripheral需要通过notify的方式 也就是GATT_Notifycation发起和主机通信

是不是意味着: 排除广播和扫描  

 主机 -》从机   只能以写特征值的方式传递数据
从机 -》主机    只能以notify的方式传递数据 
同时还要一个疑问,就是Central只能作为client  而不能作为server   Peripheral只能作为server  而不能作为client
但是我在CC2541_Guide 上看到这句话
Typically, the GATT roles of client and server are independent from the GAP roles of peripheral and
central. A peripheral can be either a GATT client or server and a central device can be either a GATT
client or server. A device can also act as both a GATT client and a GATT server.
这样的话 是不是意味着  
Central-》Peripheral  也可以用notify的方式传输数据 (Certral作为 server   Peripheral作为client)
同样
Peripheral-》Central  也可以用GATT_WriteCharValue的方式传输数据
xiaopeng wang1:

如果可以的话  官方有Demo吗?

甜甜的大香瓜:

1、主从机是底层概念,客户端与服务器是上层概念。一般来说主机是客户端、从机是服务器,但也可以主机做服务器、从机做客户端。

客户端发往服务器是write、read的方式,服务器往客户端发数据是nofitication的方式。

2、nofitication分为notify、indicate,并不是你说的只有notify。

xiaopeng wang1:

回复 甜甜的大香瓜:

这个我知道  nofitication又 notify和indicate两种  

但是想问的是   十分确定的答案

Central和Peripheral  是定义于 GAP层的 ,  是设备类型  (加上Observer和Broacaster一共四种)

而Client和Server定义于GATT层,  文档上将这里说明是完全独立的,一个设备既可以作为Client有可以作为Server

我就理解为了 Central也能够作为Server    Peripheral也能作为Client

这样Central发送数据到Peripheral就可以通过nofitication的方式   比write要快

甜甜的大香瓜:

回复 xiaopeng wang1:

这个问题我已回复你了

xiaopeng wang1:

回复 甜甜的大香瓜:

额  我需要十分确定的答案,感觉你没有正面回答我的问题啊。

赞(0)
未经允许不得转载:TI中文支持网 » CC2541 主从机数据通信的问题
分享到: 更多 (0)