来自蓝牙模块的未知数据类型

时间:2013-06-04 16:43:20

标签: ios objective-c c

我有以下示例蓝牙模块代码,我试图在我自己的应用程序中实现。

- (void)receivedData:(unsigned char *)data length:(NSUInteger)len; {
NSLog(@"DATA:  %s", data );}

控制台正在打印出这样的日志:

2013-06-04 17:32:05.408 xyz[155:707] DATA:  0ıÊ
2013-06-04 17:32:05.447 xyz[155:707] DATA:  03803DE

2013-06-04 17:32:05.668 xyz[155:707] DATA:  0ıÊ
2013-06-04 17:32:05.709 xyz[155:707] DATA:  0B403DE

我知道蓝牙模块正在发送一个十字节的数据包。我想要前两个字节的信息。这些HEX值是多少?如何将它们转换为十进制?

感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

如果你正在使用C,只需使用print f函数:

printf("%x", DATA[i]);

将其打印为十六进制。如果要将其打印为字符串,只需按以下方式打印:

printf("%s", DATA); 

十进制:

printf("%d", DATA[i]);

现在看来它正在打印其ascii值。