Answers:
读取示波器波形的方法如下。我花了一些时间编辑您的波形图片,并对其进行注释以显示哪个位。微控制器每个字符发送10位。START始终为0,8个数据位,STOP始终为1。该行也停留在1,因此第一个START下降沿将向接收器通知字节即将到来。这些位首先发送给LSB,因此,如果您想通过语法来“看一下”它们,则需要水平镜像它们以使它们有意义。每个位的宽度由波特率决定,发送器和接收器必须都知道波特率是什么。
从下面的图片中,您可以看到它发送了三个字符:ASCII字符“ A”,回车符和换行符。
println
命令,这意味着打印字符串以及一个“ \ r \ n”。所以三个字符
如果您查看Arduino println()文档,您会发现它在末尾附加了回车符和换行符。因此,以十进制表示的结果将是65(A),13(CR)和10(LF),二进制表示为:
01000001 00001101 00001010
异步串行数据首先发送到LSB,因此变为:
10000010 10110000 01010000
您的信号处于高电平空闲状态,因此起始位将为0,终止位将为1,因此将其添加到每个字节中,最终得到:
0100000101 0101100001 0010100001
从图表中确定确切的时间有点困难,但这似乎至少可以大致匹配,并且应该让您知道一些额外的位来自何处以及它们为什么要重新排序。Kvegaoro提供的Wikipedia链接提供了许多有关异步串行数据的良好背景信息。