(七)串口(串行)通信
一、简介
如果将单片机比作一个人的话,每个单片机都是一个个体,大多数人是无法一个人在这个社会上生存的,通常都需要和领导、家人、朋友、甚至陌生人进行交流,而在交流的时候,交流的双方必须采用相同的语言才能进行正常交流,一个说英语,一个说汉语那沟通就费劲了,当然了这也是可以沟通的,毕竟还有翻译(电平转换,协议转换)。串行口就是单片机行业中非常流行的一种通信协议(语言),也是比较基础的一种通信协议,基本上弄明白了串口,其他如IIC、SPI(也都属于串行的范畴,只不过实现方式稍微有点不同)就很简单了。
二、通信原理
我在前面就说过了,单片机无非是输入输出,无论是点亮LED还是串口,使用的都是普通IO口,也就是高低电平的转换,达到通信的目的。串口通信也不过是更有规律的、符合某项规定的电平转换方式而已。
首先不考虑串口的协议规定,我们先做一些约定:
我们有两个单片机A和B,如下图
A作为发送数据方、B作为接收方,P0.0---->P1.0
A、B的晶振频率可以不同
A发送的速度和B接收的速度相同,比如,A每秒发送1bit数据,B每秒接收1bit数据,这个很关键