嵌入式开发学习之--通讯的基本概念

简介: 嵌入式开发学习之--通讯的基本概念

嵌入式开发学习之--通讯的基本概念


提示:本章主要了解一下通讯的基本概念,无代码

文章目录

前言

一、通讯的基本概念

1.1串行通讯与并行通讯

1.2全双工、半双工及单工通讯

1.3同步通讯与异步通讯

1.4通讯速率

总结

前言

 对于嵌入式开发来说,基本就是在传递信息和解析信息,根据不同的环境选择不同的通讯方式,这很重要。

提示:以下是本篇文章正文内容,下面案例可供参考

一、通讯的基本概念

1.1串行通讯与并行通讯

 按数据传送的方式,通讯可分为串行通讯与并行通讯,串行通讯是指设备之间通过少量数据信号线(一般是 8 根以下),地线以及控制信号线,按数据位形式一位一位地传输数据的通讯方式。而并行通讯一般是指使用 8、16、32 及 64 根或更多的数据线进行传输的通讯方式。

 把通讯理解成流水线,串行就是只有一条流水线那么数据只能一个一个的发,而并行则是有8条流水线,可以同时发送8个数据。所以这两种发送方式的不同又会导致其自身的优劣性不同。

 串行线少,简单,所以成本低,抗干扰也强;并行线多,发送速度快,但是成本高,抗干扰也差。

 随着通讯速率的提高,信号干扰的问题会显著影响通讯性能,现在随着技术的发展,越来越多的应用场合采用高速率的串行差分传输,如can通讯。

1.2全双工、半双工及单工通讯

理论上来说肯定是全双工最好,两者能同时收发数据这样自由度高,但是受不同通讯方式的硬件原理影响,有的无法做到,只能退而求其次,半双工,甚至是单工方式传输。这些半双工、单工传输方式虽然在这方面受到了限制,但是会在其它方面获得极大的优势。

1.3同步通讯与异步通讯

 根据通讯的数据同步方式,又分为同步和异步两种,可以根据通讯过程中是否有使用到时钟信号进行简单的区分。

 同一个时钟下的设备就是可以理解为是同步的,比如基于我们系统时钟下的设备都是同步的,板子与板子之间通讯会用一根线当做时钟线,作为该通讯的“系统时钟”,然后所有数据依赖此“系统时钟”传递。

 异步的系统时钟就是两者通讯之间没有共同的时钟线,只有数据线。这种通讯方式需要双方约定好传输速率,在数据包中加一些标识,从而实现数据的传递。

 这里多说几句,还记得刚开始写led灯的时候,提到的一个概念叫做“坐标系”,这种理念用在很多地方,通讯也是,而时钟就是坐标,如果没有时钟作为参考,那么发送的数据只是一些无序的高低电平。

1.4通讯速率

 衡量通讯性能的一个非常重要的参数就是通讯速率,通常以比特率(Bitrate)来表示,即每秒钟传输的二进制位数,单位为比特每秒(bit/s)。容易与比特率混淆的概念是“波特率”(Baudrate),它表示每秒钟传输了多少个码元。而码元是通讯信号调制的概念,通讯中常用时间间隔相同的符号来表示一个二进制数字,这样的信号称为码元。如常见的通讯传输中,用 0V 表示数字 0,5V 表示数字 1,那么一个码元可以表示两种状态 0 和 1,所以一个码元等于一个二进制比特位,此时波特率的大小与比特率一致;如果在通讯传输中,有 0V、2V、4V 以及 6V 分别表示二进制数 00、01、10、11,那么每个码元可以表示四种状态,

即两个二进制比特位,所以码元数是二进制比特位数的一半,这个时候的波特率为比特率的一半。

 不过大多时候都是一个码元一个bite,所以除特殊情况外没什么区别。

总结

 这篇了解了一下通讯的基本概念,下一篇开始学习各种具体的通讯模式。

相关文章
|
3月前
|
存储 缓存 安全
学习服务器硬件基础知识
服务器是指一种高性能计算机,提供计算、存储和通信服务。通常运行在网络环境中,为计算机、设备或用户提供资源共享、数据存储和处理等服务。服务器可以是专门设计的硬件设备,也可以是在普通计算机上运行的特定软件。
81 6
|
6月前
|
安全 SDN 数据中心
|
6月前
|
存储 缓存 算法
作者推荐 | 【底层服务/编程功底系列】「底层技术原理」史上最清晰的采用程序员的视角方式进行深入探索Linux零拷贝技术原理及实现
作者推荐 | 【底层服务/编程功底系列】「底层技术原理」史上最清晰的采用程序员的视角方式进行深入探索Linux零拷贝技术原理及实现
59 0
|
6月前
|
域名解析 缓存 网络协议
《网络是怎么样连接的》读书笔记 - 认识网络基础概念(一)
《网络是怎么样连接的》读书笔记 - 认识网络基础概念(一)
181 1
|
芯片
一文搞懂I2C协议-硬件基础
I2C总线是由飞利浦在80年代初设计的,以允许位于同一电路板上的组件之间能够轻松通信。其大大简化了电路的设计,早期的电视机中很多地方用到了I2C这种通信方式。飞利浦半导体于2006年迁移到了NXP。I2C名称翻译为“ Inter IC”。有时,该总线称为IIC或I²C总线。I2C总结的基本的特征
1167 0
|
存储 网络协议 API
网络基础编程
网络基础编程
64 0
|
监控 网络协议 网络安全
【从零开始的嵌入式生活】网络编程1——网络基础
【从零开始的嵌入式生活】网络编程1——网络基础
【从零开始的嵌入式生活】网络编程1——网络基础
|
存储 网络协议 Linux
Linux网络基础编程|学习笔记
快速学习Linux网络基础编程
217 0
Linux网络基础编程|学习笔记
|
网络协议 网络架构
网络通讯原理简介以及演示通讯过程
网络通讯原理简介以及演示通讯过程
180 0
网络通讯原理简介以及演示通讯过程
|
网络协议 API
【从零开始的嵌入式生活】网络编程4——UDP编程
【从零开始的嵌入式生活】网络编程4——UDP编程
【从零开始的嵌入式生活】网络编程4——UDP编程