我应该使用 Pyserial 对通过串口传输的数据实施校验和处理吗?

Should I implement a checksum process for the data transmited through serial port using Pyserial?

这是我在 Whosebug 上的第一个问题,我仍在学习英语。所以还请大家多多包涵。

我正在做一个项目,我需要使用 Python(特别是 Pyserial 库)从 USB 串口接收数据。 arduino 通过串行电缆向我发送数据,然后我从 COM 端口接收数据。

我目前正在实施一个基本的校验和过程来验证传输的数据是否完整到达。从 arduino 我添加了我正在传输的数据的值并设置为校验和字段,它也将被传输。然后在电脑上对数据进行同样的操作,验证和是否等于校验和字段的值。

我的问题是。我应该担心这个或那个任务已经由 USB 协议执行了吗?

如果有人能给我一些参考,对我很有帮助。

这是我目前计算校验和的方式:

{
    s1: 425.2,
    s2: 426.4,
    s3: 78.2,
    s4: 785.2,
    chksum: 1715
}

USB 不正确串口数据。 CPU 只是用来与串口通信的 bus。你想在你用来在 Arduino 和 PC 之间交谈的协议中添加一些校验和是个好主意。

串行端口使用的一种非常常见的硬件协议是 RS232。它包含对使用 parity 位进行错误检测的一些支持。如果奇偶校验位不正确,接收到的字节将被丢弃。所以我认为这对你的情况没有太大帮助。