“串口”作为C语言嵌入式中的重要的通信方式,一直是面试官考察C语言软件工程师能力重要标志。小编我当时就被问懵逼了。
串口
“串口通信”是指串行通信,它的优点是“使用的资源少(占用的引脚少)”,它的缺点是“传输速度慢(每次传输一个bit位)”;
串口通信
从上图可以看到串口通信是由两根线控制的,一根是TX(以主机为视角)也就是发送线,还有一根RX也就是接收线;发送的数据通过发送线发送给从机,接收的数据通过接收线从从机处接收,所以发送和接收是分开的,相互之间不影响。所以“串口RS232”可以实现“全双工”通信,“全双工”通信就是在同一时间进行发送和接收数据。但是“串口RS232”在工程中使用的很少,因为它的传输距离很短,不适合在工程中使用;所以就有了“串口RS485”,它可以实现长距离的数据传输,但是它是“半双工”通信,所谓的“半双工通信”就是同一时间只能发送数据或者只能接收数据,这就是他们的不同点,面试官常常会问到这个,其他的使用起来都一样。给大家总结一下:
“串口RS232”:传输距离短,“全双工通