ypfsmile
ypfsmile
采纳率100%
2017-02-02 07:04

C# 串口问题 怎样精确地每隔10ms读取串口中的数据

20
  • c#
已采纳

我想每隔10ms读取一次传感器产生的数据,传感器是通过采集器然后输出为串口形式的。我是这样做的:利用线程每隔10ms发送一次读取命令,然后在DataReceived事件中利用serialPort.read()进行读取,同时利用dateTime.Now.Millisceond为每条读取的记录标记时间戳,最后存储在列表中。但发现列表中每条记录的时间间隔不是10ms,有两条记录时间间隔很大的情况出现,同时也有一条记录包含多条返回数据的情况,
请高手们指点,为什么出现这种情况,我想每隔10ms利用串口接收传感器的数据应该怎么写呢?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

2条回答

  • BenBenBears BenBenBears 4年前

    要排除发送读取命令与接受数据的时间间隔在每次反馈中是否一致,不一致的话出现间隔不是10ms或者很长间隔的情况是存在的。

    点赞 1 评论 复制链接分享
  • BenBenBears BenBenBears 4年前

    每隔10ms接收一次数据的目的?是为了写日志还是更新UI?

    点赞 评论 复制链接分享

相关推荐