我现在的串口通讯程序,能够接收,传送数据,但是就是转换出错!
接收到的数据可以是字符串,也可以是数组,
但是根据通讯协议4个字节转换为float数据,就是不能转换啊!
grpadd:=copy(viewstr,2*ipos+1,8);//接收的数据转换为字符后再截取
有什么高招吗?
接收到的数据可以是字符串,也可以是数组,
但是根据通讯协议4个字节转换为float数据,就是不能转换啊!
grpadd:=copy(viewstr,2*ipos+1,8);//接收的数据转换为字符后再截取
有什么高招吗?
解决方案 »
- 关于三层结构开发的问题!大家一起来探讨下!
- 关于Grid的问题,困扰我一周了
- 在拔掉网线后,如何得到网卡的MAC
- 请问怎么把查询到的数据从ADOQUERY或是DBGRID保存到文本文件?
- 哪位大侠有李维的旧书,小弟愿意高价购买或交换,在意者请留言给我([email protected]),限广州地区
- 关于ADOcommand的参数问题
- 再次正式恭喜……风……又差一分升级
- 这个问题等了一天都没有人能给出正确答案,Delphi高手请看:
- 为何这个拨号程序不能达到效果?
- 请问在AnimatedMenus 中怎么样动态增加菜单项?
- 问一个用来关闭一个窗口简单的问题?
- 在 DELPHI 7 里 怎样判断一个字符串变量是否为空
协议上说4个字节表示***,接下来4个字节表示***
但是我所取的是字符串啊,例如:3A4D5E6f能够转换为协议上所说的数据吗?不可能!
memcpy(&dwCount, byRdBuf+iCmdStartPos, 4);
memcpy(&fSpd, byRdBuf+iCmdStartPos+4, 4);
memcpy(&fLen, byRdBuf+iCmdStartPos+8, 4);
memcpy(&fDistance, byRdBuf+iCmdStartPos+12, 4);
memcpy(&fPossess, byRdBuf+iCmdStartPos+16, 4);
就用了memcpy可以得到你所要的数据!