我想知道如何创建一个安全的 UART/USB 通信协议。我需要它用于微控制器和 PC 之间的通信。我有大约 10 个命令,并认为我会为每个命令使用 10 个单独的确认命令。
交换应该是这样的:
- PC 通过 UART 发送唤醒命令
- µC 识别出 PC 已连接并将他的命令发送到 PC,例如。
0x01
- PC 做它被要求做的事情(一些硬件
~0x01
的东西)并在它完成时做出响应(我否定这个数字以在两个数字之间创建一个更大的“距离”) - µC 知道它已发送
0x01
并期待~0x01
来自 PC。如果~0x01
返回的不是其他的东西,µC 将知道出现了问题并发送新的请求或错误消息
µC 发送的情况,0x01
PC 理解0x02
并发送~0x02
回,但~0x01
由于一些噪音而导致 µC 读取会非常糟糕。
在传输方面有多安全,或者我怎样才能使它更安全?