来源《霖锋带你征服嵌入式》
0、前言
计算机通信是指计算机与外部设备或者计算机与计算机之间的信息交换。
通信分为并行通信和串行通信,在多微机系统以及现代测控系统中信息的交换多采用串行通信方式
串行口工作前,应对其进行初始化,设置产生波特率的定时器1、串行口控制和中断控制。
0.1并行通信
每次发送前,会进行询问,接收方进行应答,相当于一次握手。8位同时发送。一般用于计算机内部总线、排线等需求高速的传输。
0.2串行通信
0.3异步通信
一个字节前面1位是起始位,中间是8位数据,最后一位是停止位,一个字节中的各个位之间的时间间隔是固定的(由波特率决定),每个字节之间的时间间隔则是任意的。
空闲时高电平,起始位为低电平,+数据位+校验位+停止位是高电平
奇偶校验是一个字节中,第8位是校验位;代码和校验是多个字节求和,取和的末字节为校验字节。
循环冗余即CRC校验,实际中常用。
传输越远,传输速率越低。
串行通信接口标准
1)RS-232C接口(最常用)//有25针(比较古老的)和9针的,每种接口又分公头和母头。
只用TXD、RXD和SGND三根线就可以通信如上图,左边所示。右边是25脚的情况。
电平偏移是因为 SGND 接地,距离远会有大的电位差
2)RS-422A 接口
3)RS-485接口