Foxtable(狐表)用户栏目专家坐堂 → [求助]串口数据处理


  共有2745人关注过本帖树形打印复制链接

主题:[求助]串口数据处理

帅哥哟,离线,有人找我吗?
yds
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:643 积分:3684 威望:0 精华:0 注册:2011/5/21 18:05:00
[求助]串口数据处理  发帖心情 Post By:2019/6/26 14:38:00 [只看该作者]

我现在需要监控三个串口的数据(COM1.COM5,COM7)
DataReceived事件代码如下:

Select Case e.Port.PortName
    Case
"COM1"
        解析代码

    Case
"COM5"
        解析代码

    Case "COM7"

        解析代码
End
Select


我想知道的是假如COM1口的数据未完成时,COM2来数据要如何处理?是等待COM1口的数据处理完毕,还是可以直接处理?有没有办法同时处理?


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/6/26 15:30:00 [只看该作者]

 

会排队触发 DataReceived 事件的。根据先来后到的方式排队。

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
YDS
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:643 积分:3684 威望:0 精华:0 注册:2011/5/21 18:05:00
  发帖心情 Post By:2019/6/26 15:32:00 [只看该作者]

可以异步处理吗?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/6/26 15:55:00 [只看该作者]

以下是引用YDS在2019/6/26 15:32:00的发言:
可以异步处理吗?

 

你在 DataReceived 事件,执行异步函数试试,这样可以异步处理。

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
YDS
  5楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:643 积分:3684 威望:0 精华:0 注册:2011/5/21 18:05:00
  发帖心情 Post By:2019/6/26 16:00:00 [只看该作者]

能具体说说嘛?比如我把com1接收到的数据用自定义函数c1来处理

Select Case e.Port.PortName
    Case
 
"COM1"
        
Functions.AsyncExecute("c1")
    Case
 
"COM5"
        Functions.AsyncExecute("c5")

    Case "COM7"

        Functions.AsyncExecute("c7")
End
 Select


这样可以吗?会不会很耗资源?


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/6/26 16:09:00 [只看该作者]

1、你先测试这样能不能正确处理数据

 

2、不会耗资源的


 回到顶部
帅哥哟,离线,有人找我吗?
YDS
  7楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:643 积分:3684 威望:0 精华:0 注册:2011/5/21 18:05:00
  发帖心情 Post By:2019/6/26 16:55:00 [只看该作者]

16:44:28:139|1
16:44:28:146|65-90-5
16:44:28:152|90-5-255
16:44:28:159|2

为什么一帧数据,会不同时间收到,这要怎么处理?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/6/26 17:30:00 [只看该作者]

不理解你的问题,为什么要在意什么时候收到?

 

1、你每个数据,难道没有结束符,说明发送的数据结束了?

 

2、你不能用全局变量记录字符的值,大于等于某个值以后说明数据结束了?

 

[此贴子已经被作者于2019/6/26 17:31:19编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
YDS
  9楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:643 积分:3684 威望:0 精华:0 注册:2011/5/21 18:05:00
  发帖心情 Post By:2019/6/27 8:36:00 [只看该作者]

发送数据
x = 3 到 12   ’0.1秒x递增1发送一次数据
xy = 112 + x
发送:1-112-x-xy-2

接收数据
参数等于发送的x值
时间|参数|传输数据
16:44:25:131|3|1-112-3-115-2
16:44:25:168|3|1-65-0-0-0-0-236-44-89-2
16:44:26:125|4|1-112-4-116-2
16:44:26:139|4|1
16:44:26:147|4|65-235-3-193
16:44:26:153|4|3-243-2
16:44:27:125|5|1-112-5-117-2
16:44:27:140|5|1
16:44:27:146|5|65-124-0
16:44:27:152|5|1-189-3
16:44:27:160|5|126-2
16:44:28:125|6|1-112-6-118-2
16:44:28:139|6|1
16:44:28:146|6|65-90-5
16:44:28:152|6|90-5-255
16:44:28:159|6|2
16:44:29:125|7|1-112-7-119-2
16:44:29:138|7|1
16:44:29:146|7|65-90-5-0
16:44:29:155|7|0-0-0-160
16:44:29:164|7|2
16:44:30:126|8|1-112-8-120-2
16:44:30:139|8|1
16:44:30:145|8|65-0-0
16:44:30:152|8|0-0-0
16:44:30:158|8|0-0-0
16:44:30:165|8|65-2
16:44:31:127|9|1-112-9-121-2
16:44:31:141|9|1
16:44:31:146|9|65-112-0
16:44:31:151|9|1-0
16:44:31:157|9|1-0-0
16:44:31:163|9|179-2
16:44:32:126|10|1-112-10-122-2
16:44:32:139|10|1
16:44:32:145|10|65-0-0
16:44:32:150|10|0-0
16:44:32:156|10|148-0-2
16:44:32:161|10|215-2
16:44:33:127|11|1-112-11-123-2
16:44:33:141|11|1
16:44:33:147|11|65-44-0
16:44:33:153|11|1-192-3
16:44:33:160|11|49-2
16:44:34:125|12|1-112-12-124-2
16:44:34:139|12|1
16:44:34:145|12|65-0-1
16:44:34:151|12|0-0-112
16:44:34:157|12|0-1-179
16:44:34:163|12|2
16:44:35:123|3|1-112-3-115-2
16:44:35:137|3|1
16:44:35:143|3|65-0-0
16:44:35:149|3|0-0-236
16:44:35:156|3|44-89-2
16:44:36:127|4|1-112-4-116-2
16:44:36:141|4|1
16:44:36:146|4|65-235
16:44:36:152|4|3-193-3
16:44:36:158|4|243-2
16:44:37:126|5|1-112-5-117-2
16:44:37:141|5|1
16:44:37:146|5|65-125-0
16:44:37:153|5|1-188-3
16:44:37:160|5|126-2
16:44:38:127|6|1-112-6-118-2
16:44:38:140|6|1
16:44:38:146|6|65-90
16:44:38:152|6|5-90-5
16:44:38:157|6|255-2
16:44:39:125|7|1-112-7-119-2
16:44:39:139|7|1
16:44:39:146|7|65-90-5
16:44:39:152|7|0-0-0
16:44:39:158|7|0-160-2
16:44:40:127|8|1-112-8-120-2
16:44:40:140|8|1
16:44:40:146|8|65-0-0
16:44:40:153|8|0-0-0
16:44:40:161|8|0-0-0-65
16:44:40:167|8|2
16:44:41:125|9|1-112-9-121-2
16:44:41:138|9|1
16:44:41:144|9|65-112-0
16:44:41:149|9|1-0
16:44:41:155|9|1-0-0
16:44:41:161|9|179-2
16:44:42:126|10|1-112-10-122-2
16:44:42:139|10|1
16:44:42:146|10|65-0-0
16:44:42:151|10|0-0
16:44:42:157|10|148-0-2
16:44:42:163|10|215-2
16:44:43:127|11|1-112-11-123-2
16:44:43:141|11|1
16:44:43:146|11|65-44-0
16:44:43:152|11|1-192-3
16:44:43:158|11|49-2
16:44:44:124|12|1-112-12-124-2
16:44:44:137|12|1
16:44:44:143|12|65-0-1
16:44:44:149|12|0-0-112
16:44:44:156|12|0-1-179
16:44:44:162|12|2


 回到顶部
帅哥哟,离线,有人找我吗?
YDS
  10楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:643 积分:3684 威望:0 精华:0 注册:2011/5/21 18:05:00
  发帖心情 Post By:2019/6/27 8:41:00 [只看该作者]

接收数据的起始字节1,结束字节2,中间字节小于3的前面增加转义符0

 回到顶部
总数 11 1 2 下一页