社区导航

 

搜索
查看: 601|回复: 3

[蓝牙BLE] BlueNRG-1 编写特征值问题

[复制链接]

3

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2018-8-4 09:56:18 | 显示全部楼层 |阅读模式
    想通过串口来write,当我在串口调试助手输入大于9个char点击发送,aci_gatt_write_without_resp返回值只有9个成功的,剩下的返回是0x64(Insufficient resources),可是我从串口发送过一次后,出现这个问题,再发送一遍,一直发,每次都是能成功9次,剩下的返回Insufficient resources。(我连接的从机是蓝牙打印机,打印出来确实是输入的前9位,后面的都是0x64,之后还是能一直打印9位)。代码如下(已连接)。想知道该如何解决。谢谢指教!
while(1) {  
        BTLE_StackTick();       
        if (__io_getcharNonBlocking(&charRead)) {               
            ret = aci_gatt_write_without_resp(0x0801,0x000E,0x0C,&charRead);
            if (ret != BLE_STATUS_SUCCESS) {
                printf("Error in aci_gatt_write_without_resp() 0x%02x\r\n", ret);
            }else{
                printf("success\r\n");
              }
        }
  }





回复

使用道具 举报

5531

TA的帖子

9

TA的资源

版主

Rank: 6Rank: 6

发表于 2018-8-4 17:09:35 来自手机 | 显示全部楼层
方便提供测试源码吗 我试试


回复

使用道具 举报

3

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

 楼主| 发表于 2018-8-6 09:39:01 | 显示全部楼层
littleshrimp 发表于 2018-8-4 17:09
方便提供测试源码吗 我试试

加了延时就可以了。
while(1) {  
        BTLE_StackTick();                 
        if (__io_getcharNonBlocking(&charRead)) {
                 ret = aci_gatt_write_without_resp(0x0801,Attr_Handle,0x01,&charRead);
                 Delay_ms(20);
               
                 if (ret != BLE_STATUS_SUCCESS) {
                     printf("Error in aci_gatt_write_without_resp() 0x%02x\r\n", ret);
                 }
    }       

点评

ret = aci_gatt_write_without_resp(0x0801,Attr_Handle,0x01,&charRead); Delay_ms(20); 建议不要这么写代码。这句会有很大问题。如果和对端设备距离比较远,有可能丢失几个包,然后发送的时间可能就增大了  详情 回复 发表于 2019-1-2 09:18


回复

使用道具 举报

14

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-1-2 09:18:53 | 显示全部楼层
dengdeng96 发表于 2018-8-6 09:39
加了延时就可以了。
while(1) {  
        ...

ret = aci_gatt_write_without_resp(0x0801,Attr_Handle,0x01,&charRead);
Delay_ms(20);


建议不要这么写代码。这句会有很大问题。如果和对端设备距离比较远,有可能丢失几个包,然后发送的时间可能就增大了,这种阻塞式的代码方式本身在工程实践代码中就是不允许的。


回复

使用道具 举报

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

本版积分规则

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

Archiver|手机版|小黑屋|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2019-1-20 23:32 , Processed in 0.151072 second(s), 16 queries , Gzip On, MemCache On.

快速回复 返回顶部 返回列表