查看: 15786|回复: 15

S110 和S120 有什么区别

[复制链接]
  • TA的每日心情

    2014-7-10 16:35
  • 签到天数: 49 天

    连续签到: 1 天

    [LV.5]常住居民I

    发表于 2014-3-28 09:33:30 | 显示全部楼层 |阅读模式
    分享到:
    S110 蓝牙低功耗协议堆栈 和S120 蓝牙低功耗协议堆栈有什么不一样
    回复

    使用道具 举报

    该用户从未签到

    发表于 2014-3-30 12:45:55 | 显示全部楼层
    S110只能做外设,也就是做一些类似防丢器或者计步器的东西。
    S120可以做主机,就是可以做一个能够接收防丢器或者计步器的数据的主机。

    Nordic在Q3还会推出S130,它支持主从切换。不过需要的资源应该更多。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2014-3-31 14:05:11 | 显示全部楼层
    nrf51822 发表于 2014-3-30 12:45
    S110只能做外设,也就是做一些类似防丢器或者计步器的东西。
    S120可以做主机,就是可以做一个能够接收防丢 ...

    从你的描述来说,使用S110协议栈来做应用的话,调试只能是使用android手机或iphone手机了,没别的途径吗?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2014-3-31 14:07:12 | 显示全部楼层
    nrf51822 发表于 2014-3-30 12:45
    S110只能做外设,也就是做一些类似防丢器或者计步器的东西。
    S120可以做主机,就是可以做一个能够接收防丢 ...

    我看TI的CC2540开发板给的例程中就有UART透传的例子,这个表明它的协议栈是支持主机模式的。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2014-4-1 08:02:33 | 显示全部楼层
    buxinshan 发表于 2014-3-31 14:05
    从你的描述来说,使用S110协议栈来做应用的话,调试只能是使用android手机或iphone手机了,没别的途径吗 ...

    现在主机端除手机外,平板,ipod,Mac,Win8.1,还有可以用一个烧写了S120的开发板连接S110的开发板。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2014-4-1 08:03:31 | 显示全部楼层
    buxinshan 发表于 2014-3-31 14:07
    我看TI的CC2540开发板给的例程中就有UART透传的例子,这个表明它的协议栈是支持主机模式的。 ...

    TI的确很早就有了主从的代码,不过这个是TI自己的代码,当时蓝牙4.1还没出来。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2014-4-1 15:11:09 | 显示全部楼层
    nrf51822 发表于 2014-4-1 08:03
    TI的确很早就有了主从的代码,不过这个是TI自己的代码,当时蓝牙4.1还没出来。 ...

    还有个问题想问你,在nRF51822的串口透传例程中,设置的最大长度为20,但是该变量的类型是uint16_t的。如下。
    typedef struct
    {
      ble_uuid_t*          p_uuid;         
      ble_gatts_attr_md_t* p_attr_md;      
      uint16_t             init_len;        
      uint16_t             init_offs;      
      uint16_t             max_len;         
      uint8_t*             p_value;      
    } ble_gatts_attr_t;

    我想问的问题是
    1、BLE支持的最大数据帧长度是27Byte。但是在应用层GAP/GATT(以上)数据长度是不是可以大于27Byte。

    2、我现在有个应用需要使用BLE,平时不传输数据,一个月也就传输一次,不过这一次要传输200Byte字节的帧,共4帧。我想使用串口透传模式,请问我该怎么设置BLE的最大数据长度。

    3、由于我这4个帧是私有协议帧,如果BLE的最大长度只能设置成27Byte的话,我是不是该在nRF51822串口的接收、发送中做我的私有协议的解析,解析之后再把200Byte分成27Byte字节的帧传输,这样有点麻烦啊。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2014-7-10 16:35
  • 签到天数: 49 天

    连续签到: 1 天

    [LV.5]常住居民I

     楼主| 发表于 2014-4-1 15:23:53 | 显示全部楼层
    buxinshan 发表于 2014-4-1 15:11
    还有个问题想问你,在nRF51822的串口透传例程中,设置的最大长度为20,但是该变量的类型是uint16_t的。如 ...

    大哥,什么是串口透传,有什么优点,如何使用
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2014-4-2 09:05:34 | 显示全部楼层
    串口透传,把数据的收发端都虚拟成串口,就像USB-RS232,应用上看都是RS232串口,实际线路上通信走的USB。优点,之前的设备有串口的话,不需要任何的改动,就可以使用BLE通信来代替RS232通信。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2014-4-2 10:03:42 | 显示全部楼层
    buxinshan 发表于 2014-4-1 15:11
    还有个问题想问你,在nRF51822的串口透传例程中,设置的最大长度为20,但是该变量的类型是uint16_t的。如 ...

    1、BLE支持的最大数据帧长度是27Byte。但是在应用层GAP/GATT(以上)数据长度是不是可以大于27Byte。
    去掉ble协议中规定的其他标示符,实际的传输数据只有20byte。

    2、我现在有个应用需要使用BLE,平时不传输数据,一个月也就传输一次,不过这一次要传输200Byte字节的帧,共4帧。我想使用串口透传模式,请问我该怎么设置BLE的最大数据长度。
    如上所述,BLE的最大数据长度就是20byte,无法改变。但是你可以分割成多个包,多次传输。
    另外,你的应用是否可以用gazell协议来代替蓝牙?一定要用蓝牙吗?这也是个很现实的问题。

    3、由于我这4个帧是私有协议帧,如果BLE的最大长度只能设置成27Byte的话,我是不是该在nRF51822串口的接收、发送中做我的私有协议的解析,解析之后再把200Byte分成27Byte字节的帧传输,这样有点麻烦啊
    你可以借鉴一下网络分层的思想,你私有协议属于协议层,怎么传输属于传输或者链路层,软件应该做成互不干预的。
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /5 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-12-21 23:37 , Processed in 0.219166 second(s), 33 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.