社区
VB基础类
帖子详情
怎样处理这样的串口发来的数据帧?
yuanchao1985
2010-07-10 08:43:52
http://hi.csdn.net/attachment/201007/10/5595442_1278722062i3Kg.jpg
这是VB串口和单片机数据采集的通信,VB发命令,单片机接到命令后正确则返回传感器采集的数据。各位大神
能告诉我一些处理数据帧的技巧吗?还有MScomm的设置,我是纯新手。
...全文
519
17
打赏
收藏
怎样处理这样的串口发来的数据帧?
http://hi.csdn.net/attachment/201007/10/5595442_1278722062i3Kg.jpg 这是VB串口和单片机数据采集的通信,VB发命令,单片机接到命令后正确则返回传感器采集的数据。各位大神 能告诉我一些处理数据帧的技巧吗?还有MScomm的设置,我是纯新手。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
flfq
2010-07-10
打赏
举报
回复
用MSCOMM控件数组,一个mscomm打开一个端口
yuanchao1985
2010-07-10
打赏
举报
回复
[Quote=引用 14 楼 of123 的回复:]
如果是一对多方式,最好采用 RS485 广播协议。它的优点是通讯线采用普通电话线,可以长达 1000 米,所有从机并联到线上。
如果要通过多个 RS232 端口的话,可以用一块串口扩展板。在 VB 代码中可以设置 MSComm 控件的端口号。
[/Quote]
是不是一个MSComm控件,更改端口号 1、2 、 3 、 4 、5、 6,在代码中轮流处理?
of123
2010-07-10
打赏
举报
回复
如果是一对多方式,最好采用 RS485 广播协议。它的优点是通讯线采用普通电话线,可以长达 1000 米,所有从机并联到线上。
如果要通过多个 RS232 端口的话,可以用一块串口扩展板。在 VB 代码中可以设置 MSComm 控件的端口号。
yuanchao1985
2010-07-10
打赏
举报
回复
[Quote=引用 11 楼 of123 的回复:]
CRC-16 校验有多种模式,上位端的必须与下位机一致。例如,同样对于 {0x31,0x32,0x33,0x34,0x35,0x36} 各种模式的结果为:
CRC-16 0xBB3D
CRC-16 (Modbus) 0x4B37
CRC-16 (Sick) 0x56A6
CRC-CCITT (XModem) 0x31C3
CRC-CCITT (0xFFFF) 0x29B1
……
[/Quote]
如果用VB采集6个单片机的话,怎样设置地址、串口号呢?还有怎样协调他们,让他们轮流接收命令,轮流发送采集的数据呢
yuanchao1985
2010-07-10
打赏
举报
回复
LH在这个项目中没有用到
of123
2010-07-10
打赏
举报
回复
CRC-16 校验有多种模式,上位端的必须与下位机一致。例如,同样对于 {0x31,0x32,0x33,0x34,0x35,0x36} 各种模式的结果为:
CRC-16 0xBB3D
CRC-16 (Modbus) 0x4B37
CRC-16 (Sick) 0x56A6
CRC-CCITT (XModem) 0x31C3
CRC-CCITT (0xFFFF) 0x29B1
CRC-CCITT (0x1D0F) 0xE5CC
CRC-CCITT (Kermit) 0x8921
CRC-DNP 0x82EA
实际上,需要确定的就是多项式是初始值。
CRC-16 0x8005 x16 + x15 + x2 + 1
CRC-CCITT 0x1021 x16 + x12 + x5 + 1
CRC-DNP 0x3D65 x16 + x13 + x12 + x11 + x10 + x8 + x6 + x5 + x2 + 1
yuanchao1985
2010-07-10
打赏
举报
回复
[Quote=引用 9 楼 of123 的回复:]
这个项目的协议很清楚,处理起来不困难。
接收数据采用 OnComm 事件驱动方式。
方法1:
触发条件设置为接收到 3 个字符。
在 OnComm 事件处理代码中,根据第三字节 nn 的值来确定后续的接收长度,循环等待到全部数据都收到。
方法2:
由于接收到的数据长度与命令中的读取长度有固定的对应关系,发出命令后实际上已知接收数据长度。
因此,可以设置事件……
[/Quote]
单片机采集每一个通道的电压和电流,分别用两个字节表示.LH 和LL 组合起来的两个字节表示要读取的通道数,所以,通道数=nn*1/4。这里应该是和下位机在这个项目中的约定
of123
2010-07-10
打赏
举报
回复
这个项目的协议很清楚,处理起来不困难。
接收数据采用 OnComm 事件驱动方式。
方法1:
触发条件设置为接收到 3 个字符。
在 OnComm 事件处理代码中,根据第三字节 nn 的值来确定后续的接收长度,循环等待到全部数据都收到。
方法2:
由于接收到的数据长度与命令中的读取长度有固定的对应关系,发出命令后实际上已知接收数据长度。
因此,可以设置事件触发条件为 LL*4 + 5。进入事件处理代码时,数据已经完全接收。
我不不解的是,命令中的读取长度仅仅是接收数据长度 nn (单字节)的四分之一,且上限也确定为 32,为什么还要用两个字节。实际上 LH 恒为 0。
zdingyun
2010-07-10
打赏
举报
回复
[Quote=引用 7 楼 yuanchao1985 的回复:]
测试过了,可以用,我第一次遇到串口通信,数据帧处理也没有见过类似的例子,不知道怎么入手,你能帮我找一断帧处理的代码吗?谢谢了
[/Quote]
见6楼的连接.
yuanchao1985
2010-07-10
打赏
举报
回复
[Quote=引用 5 楼 zdingyun 的回复:]
引用 4 楼 yuanchao1985 的回复:
CRC校验我有一个网上复制过来的模块,查表的,这样可以吗
你必须测试过.
[/Quote]
测试过了,可以用,我第一次遇到串口通信,数据帧处理也没有见过类似的例子,不知道怎么入手,你能帮我找一断帧处理的代码吗?谢谢了
zdingyun
2010-07-10
打赏
举报
回复
不考虑CRC校验可参阅:
http://www.vbgood.com/viewthread.php?tid=83700&highlight=
zdingyun
2010-07-10
打赏
举报
回复
[Quote=引用 4 楼 yuanchao1985 的回复:]
CRC校验我有一个网上复制过来的模块,查表的,这样可以吗
[/Quote]
你必须测试过.
yuanchao1985
2010-07-10
打赏
举报
回复
[Quote=引用 3 楼 zdingyun 的回复:]
LZ:你的重点在于找到计算CRC校验的代码.
[/Quote]
CRC校验我有一个网上复制过来的模块,查表的,这样可以吗
zdingyun
2010-07-10
打赏
举报
回复
LZ:你的重点在于找到计算CRC校验的代码.
yuanchao1985
2010-07-10
打赏
举报
回复
第二张图片没有显示出来,补一下
flfq
2010-07-10
打赏
举报
回复
定义一个byte数组,接收单片机发送的数据,然后进行校验,再根据通讯协议取得相应数据
yuanchao1985
2010-07-10
打赏
举报
回复
非常感谢大家!教会了我就是为社会主义建设做出了贡献
c#
串口
通讯如何多次重复发送一帧数据,并且保证发送和回复每一帧数据的顺序正
通过这样的改进,可以更好地管理和控制
串口
通信中的数据发送和接收,确保
数据帧
的顺序正确,同时避免不必要的重试和并发问题。请注意,这只是一个示例,实际应用中需要根据具体的需求和
串口
通信协议进行调整。
UART.rar.zip_
串口
_电脑
串口
发数据
在标题"UART.rar.zip_
串口
_电脑
串口
发数据"中,提及的核心概念是UART以及通过电脑
串口
发送数据的过程。这个过程通常涉及到以下知识点: 1. **UART接口**:UART是一种异步串行通信接口,允许两个设备以较低的数据...
STM32F103C8T6的
串口
1和
串口
3收发实验
在本实验中,我们需要
处理
两种情况:
数据帧
带有"\r\n"和不带"\r\n"的情况。
处理
这种差异可能需要在接收中断服务程序中加入相应的判断逻辑。 接下来,我们讨论数据长度限制。为防止溢出,我们需要设置一个固定的最大...
迪文屏
串口
通信.rar_
串口
屏_
串口
通信_迪文_迪文
串口
屏_迪文屏
串口
迪文
串口
屏的工作原理是,通过串行接口发送命令和数据,控制屏显内容。这些命令包括设置显示模式、颜色、字体,以及绘制图形等。数据通常以特定的帧格式发送,包括起始位、数据位、校验位和停止位。接收到的数据被...
3、C8051F410按键发
串口
数据.rar_C8051F410
串口
_C8051F410
串口
_三路
串口
C8051
总结来说,"3、C8051F410按键发
串口
数据.rar"是一个关于C8051F410微控制器的
串口
通信实例,涵盖了
串口
配置、按键输入
处理
和串行数据发送的关键技术,非常适合初级开发者学习和掌握。通过分析这个案例,开发者可以...
VB基础类
7,785
社区成员
197,585
社区内容
发帖
与我相关
我的任务
VB基础类
VB 基础类
复制链接
扫一扫
分享
社区描述
VB 基础类
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章