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

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

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


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

文章目录

前言

一、通讯的基本概念

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,所以除特殊情况外没什么区别。

总结

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

相关文章
|
5天前
|
安全 SDN 数据中心
|
5天前
|
监控 Linux 定位技术
Linux应用开发基础知识——串口应用编程(十一)
Linux应用开发基础知识——串口应用编程(十一)
62 0
Linux应用开发基础知识——串口应用编程(十一)
|
5天前
|
域名解析 缓存 网络协议
《网络是怎么样连接的》读书笔记 - 认识网络基础概念(一)
《网络是怎么样连接的》读书笔记 - 认识网络基础概念(一)
105 1
|
7月前
|
存储 网络协议 API
网络基础编程
网络基础编程
23 0
|
芯片
一文搞懂I2C协议-硬件基础
I2C总线是由飞利浦在80年代初设计的,以允许位于同一电路板上的组件之间能够轻松通信。其大大简化了电路的设计,早期的电视机中很多地方用到了I2C这种通信方式。飞利浦半导体于2006年迁移到了NXP。I2C名称翻译为“ Inter IC”。有时,该总线称为IIC或I²C总线。I2C总结的基本的特征
866 0
|
监控 网络协议 网络安全
【从零开始的嵌入式生活】网络编程1——网络基础
【从零开始的嵌入式生活】网络编程1——网络基础
【从零开始的嵌入式生活】网络编程1——网络基础
|
设计模式 监控 网络协议
Linux网络原理与编程——第十一节 网络基础及套接字
从system call(系统调用结构)开始往下,都是属于OS和硬件的范畴,我们一般的程序员所进行的开发,通常都是在用户层。(这个我们后面还会具体说到)。
174 0
Linux网络原理与编程——第十一节 网络基础及套接字
|
存储 网络协议 Linux
Linux网络基础编程|学习笔记
快速学习Linux网络基础编程
185 0
Linux网络基础编程|学习笔记
|
存储
14个PLC入门基础知识
14个PLC入门基础知识
183 0
14个PLC入门基础知识
|
内存技术 网络协议 编解码
带你读《计算机网络原理》之三:数据通信技术
本书以层次化的网络体系结构为线索,针对通信子网功能详细地介绍了计算机网络的基本概念及数据通信的基本原理。