完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
现在遇到一个问题,下位机发送两个数据到上位机,上位机可以正确按字节接受到了。剩余的是将两个字节数据合并成一个整数,用于波形显示。具体如下
单片机要发送的数据是: [C#] 纯文本查看 复制代码 short pitch=50,roll=280 上位机按照十六进制接收数据如下: [C#] 纯文本查看 复制代码 00 32 01 18 这个结果是正确的。 我将每两个字节数据拼接成一个C#里面的Int 32 类型的数据,但结果显示错误: [C#] 纯文本查看 复制代码 00 32 01 18 //上位机接收到的十六进制数据69632 1024//数据拼接后显示的数据 采用的拼接方法如下: [C#] 纯文本查看 复制代码 pitch = (UsefulData[0] << 8 + UsefulData[1]);//UsefulData是上位机解析数据帧之后存储的有效数据数组 roll = (UsefulData[2] << 8 + UsefulData[3]); 单片机发送数据是高低位是高字节在前,所以这个原因被排除了,那请问还可能是其他什么原因呢? |
|
相关推荐
5个回答
|
|
[C#] 纯文本查看 复制代码
private void Form1_Load(object sender, EventArgs e){ byte[] UsefulData = new byte[10]; UsefulData[0] = 0; UsefulData[1] = 0x32; UsefulData[2] = 0x01; UsefulData[3] = 0x18; short pitch = (short)(((short)UsefulData[0] << 8) + UsefulData[1]); short roll = (short)(((short)UsefulData[2] << 8) + UsefulData[3]);} |
|
|
|
|
|
自己默默顶一下
|
|
|
|
转换格式要搞对,帮你到这了。
|
|
|
|
非常感谢,请受小弟一拜
|
|
|
|
只有小组成员才能发言,加入小组>>
请问下图大疆lightbridge2遥控器主板电源芯片型号是什么?
4465 浏览 1 评论
使用常见的二极管、三极管和mos做MCU和模组的电平转换电路,但是模组和MCU无法正常通信,为什么?
341浏览 2评论
为了提高USIM卡电路的可靠性和稳定性,在电路设计中须注意的点有哪些?
341浏览 2评论
367浏览 2评论
360浏览 2评论
405浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-20 05:48 , Processed in 0.911163 second(s), Total 85, Slave 69 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号