发送结构体数据转序
来源:互联网 发布:域名绑定ip 编辑:程序博客网 时间:2024/06/05 09:07
上一篇程序后来调试接收数据发现,收到的数据存在问题,Byte单字节的数据类型没有问题,但是如果是WORD类型双字节以上的类型,接收端从串口收到的数据高低位是反的,这里就存在一个主机序和网络序的问题。
具体的转序规则对于不同的系统规则是不同的,后面文章继续补充出来。
希望有用python操作串口的同学留言讨论,也希望上一篇文章不要让看到的同学徘徊不前,在上一篇文章中,最后通过mem操作来“封装的数据”,通过后来的实践发现,这种方式虽然可行,但是需要转序操作要先转好再“封装”,无论从繁琐性和程序的移植性来看都是不推荐的,所以后来采用了struct.pack的方法,贴一段代码示例:
buffer_restore = struct.pack('>HHHBBHHBBBBLBBBBB',
ScreenControl_stru_restore.wPakageHeader,
ScreenControl_stru_restore.wLength,
ScreenControl_stru_restore.struAddress.wHostAddress,
ScreenControl_stru_restore.struAddress.byRes[0],
ScreenControl_stru_restore.struAddress.byRes[1],
ScreenControl_stru_restore.struAddress.wBeginAddress,
ScreenControl_stru_restore.struAddress.wEndAddress,
ScreenControl_stru_restore.struAddress.byRes2[0],
ScreenControl_stru_restore.struAddress.byRes2[1],
ScreenControl_stru_restore.struAddress.byRes2[2],
ScreenControl_stru_restore.struAddress.byRes2[3],
ScreenControl_stru_restore.dwCommand,
ScreenControl_stru_restore.byVersion,
ScreenControl_stru_restore.byRes[0],
ScreenControl_stru_restore.byRes[1],
ScreenControl_stru_restore.byRes[2],
checknum_restore
)
- 发送结构体数据转序
- 使用fwrite发送结构体数据
- TCP-socket发送结构体类型数据
- udp 发送和接收结构体数据
- 通过SOCKET发送、接收结构体数据
- zigbee 数据发送AF_Data_Request和数据接收afIncomingMSGPacket_t结构体
- Zigbee数据发送AF_DataRequest和数据接收afIncomingMSGPacket_t结构体
- 分层结构,局域网数据发送
- 利用不定长的结构体发送socket数据
- WM_COPYDATA消息机制 不同进程间发送结构体数据
- 利用不定长的结构体发送socket数据
- VC下基于结构体的数据发送
- python下通过串口发送结构体数据
- TCP socket发送整形数据(数组,结构体)
- 串口发送结构体
- sendmessage发送结构体
- send()发送结构体
- socket发送结构体
- 二叉查找树(C语言实现 )
- mahout在hadoop1.2.1上运行时报java heap space错误
- 鼠标的左击、中击、右击事件及Frame的关闭
- POJ Common Subsequence
- jquery 对 Json 的各种遍历
- 发送结构体数据转序
- vim配置
- FreakZ学习笔记:FreakZ通信网络发送过程详解
- Three Jugs(辗转相除法求GCD)
- 不相交集ADT
- CDN(内容分发网络)技术原理
- mac 终端 常用命令
- 关于短信拦截、电话拦截的一些注意点
- 已成功与服务器建立连接,但是在登录过程中发生错误。 (provider: 共享内存提供程序, error: 0