《朱老师物联网大讲堂》学习笔记
学习地址:www.zhulaoshi.org
通信涉及两个很重要的方面,
1.对发送方而言是信息的表示方法,对接收方而言就是解析方法,
2.信息的发送方法,即如何在传输介质上进行有效的传输,
同步和异步,
是否有统一的时钟,
同步需要一个专门的信号线表示时钟,
适合通信频繁的双方。
电平信号和差分信号,
电平信号中,有一个参考电平(一般是GND),
而差分信号中,没有参考电平,都是信号线,
1和0的表示是通过信号线间的电压差,
现在的通信一般都是用差分信号,而且差分方式传输信号更快些,不是电平。
并行和串行
你觉得哪个更实用呢?
实际上串行接口才是王道,用的比较广,
因为更省信号线,而且对传输线的要求更低、成本更低,
而且串行时可以通过提高通信速度来提高总体通信性能,不一定非得要并行。
多年的发展,
最终胜出的是:异步,串行,差分,
比如USB和网络。
串口通信的特点:异步,电平信号,串行。
早期通信速率低,传输距离近,干扰不明显,使得串口使用的是电平信号。
RS232和TTL电平
RS232电平中-3V~-15V表示1;+3~+15V表示0;TTL电平则是+5V表示1,0V表示0,
RS232的电平定义比较大,适合干扰大、距离远的情况;TTL电平电压范围小,适合距离近且干扰小的情况。
波特率
串口通信时每秒钟可以传输多少个二进制位。
起始位,数据位,奇偶校验位,停止位,
一个收发周期就包括上面4个部分,
起始位和停止位都是通信标准事先指定的,
数据位一般选择8位,
一般通过串口发送的信息都是ASCII码编制,而ASCII码中一个字符刚好编码为8位。
串口通信因为是异步,所以通信参数要事先设定好,
不过现在这些问题基本上是属于硬件工程师的工作。
半双工:A和B直接可以相互收发,但是不能同时。
信息以二进制流的方式在信道上传输,
接收方通过定时(起始时间由读到起始位标志开始,间隔时间由波特率决定)读取通信线上的电平高低来区分发送给我的是1还是0。
DB9是一种串口通信接口规范,
DB9接口中有9根通信线,其中3根很重要,为GND、Tx、Rx,必不可少,
剩余6根都是和流控有关的,现代我们使用串口都是用来做调试一般都禁用流控,所以这6根没用,
现在一般使用串口时要记得把流控禁止掉,不然可能发生意想不到的问题。