
单片机发送到串口的是十六进制,用labview从串口读取的数据是什么格式的呢,是字符串吗?
我用单片机测量温度,从单片机发送到串口的是十六进制(如F2),用labview从串口读取的数据是什么格式的呢,是字符串吗?还是直接是F2?急...
我用单片机测量温度,从单片机发送到串口的是十六进制(如F2),用labview从串口读取的数据是什么格式的呢,是字符串吗?还是直接是F2 ? 急
展开
3个回答
展开全部
如果发送的十六进制,可直接读出十六进制的数
追问
那为什么读取缓冲区连出来的却是字符串格式的啊,那线都是粉色的呢?(我很菜,不要见笑哈)
追答
那很正常,因为字符串本身就是一些数值罢了(ASCII码)。在用串口读数据,如果事先未对变量进行声明,那么读出的将是ASCii码,即默认为字符串。方法用二个,一是先将读取数据变量先申明为16进制的变量,二是将读出的字符串转为ASCII码,再将高位与低位组合即可得到发送的16进制值。
展开全部
读取的,在十六进制显示先 是F2。记得在字符串显示控件上,右键→十六进制显示。正常显示下,会觉得是乱码。
追问
从读取缓冲区出来的是字符串格式的呀,如果用十六进制显示,那岂不把F2转换成ASCII值4632啊
追答
你试试呀。你十六进制发送,在labview里,必然要用十六进制显示。试试再说吧。这个很传统的问题。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是字符串
追问
什么样的字符串啊,就F2吗
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询