嵌入式硬件必知道的基础知识

总线(Bus)

总线是各种信号线得集合,是嵌入式系统中各部件之间传送数据、地址和控制信息的公共通路。在同一时刻,每条通路线路上能够传输一位二进制信号,按照总线所传送的信息类型,可以分为:数据总线(DB)、地址总线(AB)和控制总线(CB)。

总线的主要参数:
总线带度:一定时间内总线上可以传送的数据量,一般用MByte/s表示
总线宽度:总线能同时传送的数据位数(bit),即人们常说的32位、64位等总线宽度的概念,也叫总线位宽。总线的位宽越宽,总线的每秒数据传输率越大,也就是总线宽带越宽。
总线频率:工作时钟频率以MHz为单位,工作频率越高,则总线工作速度越快,也即总线带宽越宽。
总线带宽=总线位宽×总线频率/8,单位是MBps。
常用总线:ISA总线、PCI总线、IIC总线、SPI总线、PC104总线和CAN总线等。

总线的分类
1、地址总线
(1)CPU是通过地址总线来指定存储单元的
(2)地址总线决定了cpu所能访问的最大内存空间的大小。比如:十根地址线能访问的最大的内存为1024位二进制数据
(3)地址总线是地址线数量之和。

2、数据总线
(1)是cpu与内存或其他器件之间的数据传送的通道。
(2)数据总线的宽度决定了CPU和外界的数据传送速度。
(3)每条传输线一次只能传输1位二进制数据。比如:8根数据线一次可传送一个8位二进制数据(一个字节)。
(4)数据总线是数据线数量之和。

3、控制总线
(1)CPU通过控制总线对外部器件进行控制。
(2)控制总线的宽度决定了CPU对外部器件的控制能力。
(3)控制总线式控制数量之和。

总线通信方式

总线通信方式可以分为:并行通信和串行通信。
1、并行通信
并行通信:可以一次传送8bit、16bit、32bit甚至更高的位数,相应的就需要8根、16根、32根数据线,同时需要加入更多的信号地线。在这里插入图片描述
并行通信的特点:控制简单,传输速度快;由于传输线较多,适用于短距离通信。
1、串行通信
串行通信:数据的各位在同一根数据线上逐位发送和接收。
在这里插入图片描述
串行通信的特点:控制复杂,传输速度慢;只需要一根数据线,适用于远距离通信。

串行通信数据传送方向
根据串行数据的传输方向,我们可以将通信分为单工、半双工、双工。
单工:是指数据传输仅能沿一个方向,不能实现反向传输。
半双工:是指数据传输可以沿两个方向,但需要分时进行传输。
全双工:是指数据可以同时进行双向传输。

下面是单工、半双工及全双工的示意图
在这里插入图片描述

串行通信方式分类之同步、异步通信

串行通信根据是否有时钟线进行同步又分为 同步通信、异步通信

1、同步通信

同步通信是指发送端和接收端必须使用同一时钟,是一种连续传送数据的通信方式,一次通讯传送多个字符数据(一帧数据)。下图是同步串行通信帧格式:
在这里插入图片描述
同步串行通信方式:
把许多字符组成一个信息组(信息振),每帧的开始用字符来指示。并且发送和接收的双方必须采用同一时钟,这样接收方就可以通过时钟信号来确定每个信息位。(如下图所示)
在这里插入图片描述
同步串行通信帧:是将许多字符组成一个信息帧,字符可以一个接一个传输。但是,需要在每帧信息的开始加上同步字符,在没有信息要传输时,要填上空字符,因为同步传输不允许有间隙。

同步串行通信的特点:必须有同步时钟,传输信息量大,传输速率高,但是传输设备则为复杂,技术要求高。

1、异步通信

异步通信是指发送和接收端使用的是各自的时钟,并且它是一种不连续的传输通信方式,一次通信只能传输一个字符数据(字符帧)。字符帧之间的间隙可以是任意的,下图是异步串行通信帧格式:
在这里插入图片描述
异步串行通信方式:是指通信双方以一个自读(包括特定附加位)作为数据传输单位且发送方传送字符的间隔时间是不定的,具有不规则数据段传输特性,下图是异步串行通信:
在这里插入图片描述
异步串行同信帧:将一个字节数据加上起始位、校验位以及停止位构成字符帧。由于异步通信没有同步时钟,所以接收端要时刻处于接收状态。

起始位:在没有数据传送时(空闲状态),此时通信线上为逻辑“1”。当发送端要发送一个数据时,首先发送一个逻辑“0”,这个低电平就是帧格式的起始位。作用是告诉接收端要开始发送一帧数据。接收端检测到这个低电平之后,就准备接收数据信号。

数据位:在起始位之后,发送端发出的就是数据位,数据位的位数没有严格限制(5-8位都可以)。低位在前,高位在后。由低位向高位逐位发送。

校验位:数据位发送完成之后,可以发送以为用来校验数据在传送过程中是否出错。校验位是收发双方预先约定好的有限制差错检验的方式之一(可不用)。

停止位:字符帧格式的最后部分是停止位,逻辑“1”有效,它的占位有1/2位、1位或者2位。停止位表示传送一帧信息的结束,也作为发送下一帧数据信息做准备。

异步串行通信特点:不需要同步时钟,通信实现简单,设备简单。但是传输速率不高。

串口通信

串口通信(Serial Communications)的概念非常简单,串口按位(bit)发送和接收字节。串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。

串口硬件基础
通信接口有并口和串口之分,串口又有公头和母头之分,如下图所示
在这里插入图片描述
以上图片位DB9的图片,我们可以看一下他每个引脚的功能,
在这里插入图片描述
串口通信时序

在这里插入图片描述

TTL、RS232和RS485简介

在这里插入图片描述