5450浏览
查看: 5450|回复: 3

[已解决] 求助 Bluno 字符最大接受18个

[复制链接]
我买了Bluno然后测试了下,发现字符串最多只能接受18个。请问这个问题可以解决吗,在xcode里面怎么修改呢?

http://dfrobot.com/download/BLUNO/BLUNO%20package/BLUNO%20Basic%20Demo%20with%20library/IOS/Source%20Code.zip
我测试的是这个BlunoTest文件。



Angelo  初级技匠

发表于 2014-4-14 14:14:59

恩,我们在IOS的SDK里面是没有做分包的,用户可以自己实现分包的功能。
或者参考BLUNO with accessory shield的代码,里面实现了分包的功能~

https://github.com/xpsuyu/BlunoSample
回复

使用道具 举报

hanjiaqileon  初级技师
 楼主|

发表于 2014-4-14 14:30:11

Angelo 发表于 2014-4-14 14:14
恩,我们在IOS的SDK里面是没有做分包的,用户可以自己实现分包的功能。
或者参考BLUNO with accessory shie ...

请问“BLUNO with accessory shield”里面哪一个文件的哪一个部分是分包的代码呢?不是很熟悉oc语言。谢谢啦!
回复

使用道具 举报

野马草上飞  初级技师

发表于 2014-4-14 15:31:42

Bluno一次只能接受20个字节,如果超过20个字节,需要用户自己做分包,并且Bluno端也需要做相应的接收动作。
Xcode端,你可以这样做分包:

    NSString* strTest = @"abcdljskdhfkahshkljhkhkhlkhflka";
    NSData* data = [strTest dataUsingEncoding:NSUTF8StringEncoding];
    NSInteger count = data.length/20;
    NSInteger remainder = data.length%20;
    int i = 0;
    for (; i<count; i++)
    {
        NSRange range;
        range.length = 20;
        range.location = i*20;
        NSData* subData =  [data subdataWithRange:range];
        [self.blunoManager writeDataToDevice:subData Device:self.blunoDev];
    }
    if (remainder>0)
    {
        NSRange range;
        range.length = remainder;
        range.location = i*20;
        NSData* subData =  [data subdataWithRange:range];
        [self.blunoManager writeDataToDevice:subData Device:self.blunoDev];
    }
回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail