Firefly开源社区

透传问题

44

积分

0

威望

0

贡献

技术小白

积分
44
发表于 2015-12-24 10:00:41     
我现在做的是根据透传案例进行一些修改,就是手机APP发送指令,通过蓝牙IO口控制其它器件,并接受器件的返回值,在通过蓝牙发送到手机,其中所有的数据均是16进制。
遇到的问题时:蓝牙模块接受到的器件的返回值时正确的,但是通过ke_msg_send(msg);函数发送到手机,手机显示就错误了,是什么原因呢?
拜托大神了!!!
2.png
1.png
3.png
回复

使用道具 举报

44

积分

0

威望

0

贡献

技术小白

积分
44
发表于 2015-12-24 10:03:45     
正确的返回值是:0xa2 0x13 0x10 0x91 0xff 0xff 0x81 0x15 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
而手机接受的是:0xFD 0x13 0x10 0xFD 0xFD 0xFD 0xFD 0x15 0xFD 0xFD 0xFD 0xFD 0xFD 0xFD 0xFD 0xFD
回复

使用道具 举报

44

积分

0

威望

0

贡献

技术小白

积分
44
发表于 2015-12-24 10:50:51     
在官方提供的透传BIN和APP中,使用串口助手发送十六进制 ‘91’,手机端十六进制显示会接收到‘FD’,不知道是什么原因。
回复

使用道具 举报

44

积分

0

威望

0

贡献

技术小白

积分
44
发表于 2015-12-25 16:43:00     
自顶一下,有没有大神帮我确认一下,这是手机APP的原因,还是BLE透传的原因。因为我使用的透传数据都是十六进制的。在进行透传时,只要透传的数据大于等于0x80就会有问题。是不是BLE只能透传ASCII码啊。
回复

使用道具 举报

47

积分

0

威望

0

贡献

游客

积分
47
QQ
发表于 2015-12-25 17:44:33     
JAVA byte类型范围(-128 ~ 127)问题,当大于128,就认为是负值。。强制转换下就好了。。通讯没有问题。
回复

使用道具 举报

44

积分

0

威望

0

贡献

技术小白

积分
44
发表于 2015-12-28 13:15:27     
xiaody 发表于 2015-12-25 17:44
JAVA byte类型范围(-128 ~ 127)问题,当大于128,就认为是负值。。强制转换下就好了。。通讯没有问题。

谢谢啦:lol
回复

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表