您好、欢迎来到现金彩票网!
当前位置:在线斗牛棋牌 > 标准接口 >

常用的硬件接口及通信协议详解

发布时间:2019-07-03 07:45 来源:未知 编辑:admin

  常用的硬件接口及通信协议详解_信息与通信_工程科技_专业资料。主要介绍串口,SPI,I2C总线协议及其工作方式

  一:串口 串口是串行接口的简称,分为同步传输(USRT)和异步传输 (UART) 。在同步通信中,发送端和接收端使用同一个时钟。在异步 通信中,接受时钟和发送时钟是不同步的,即发送端和接收端都有自 己独立的时钟和相同的速度约定。 1:RS232 接口定义 2:异步串口的通信协议 作为 UART 的一种,工作原理是将传输数据的每个字符一位接一 位地传输。图一给出了其工作模式: 图 一 其中各位的意义如下: 起始位:先发出一个逻辑”0”的信号,表示传输字符的开始。 数据位:紧接着起始位之后。数据位的个数可以是 4、5、6、7、 8 等,构成一个字符。通常采用 ASCII 码。从最低位开始传送,靠时 钟定位。 奇偶校验位:资料位加上这一位后,使得“1”的位数应为偶数(偶 校验)或奇数(奇校验),以此来校验资料传送的正确性。 停止位:它是一个字符数据的结束标志。可以是 1 位、1.5 位、2 位的高电平。 空闲位:处于逻辑“1”状态,表示当前线路上没有资料传送。 波特率:是衡量资料传送速率的指针。表示每秒钟传送的二进制 位数。例如资料传送速率为 120 字符/秒,而每一个字符为 10 位,则 其传送的波特率为 10× 120=1200 字符/秒=1200 波特。 3:在嵌入式处理器中,通常都集成了串口,只需对相关寄存器进 行设置,就可以使用啦。尽管不同的体系结构的处理器中,相关的寄 存器可能不大一样,但是基于 FIFO 的 uart 框图还是差不多。 发送过程:把数据发送到 fifo 中,fifo 把数据发送到移位寄存器, 然后在时钟脉冲的作用下,往串口线上发送一位 bit 数据。 接受过程:接受移位寄存器接收到数据后,将数据放到 fifo 中, 接受 fifo 事先设置好触发门限,当 fifo 中数据超过这个门限时,就触 发一个中断,然后调用驱动中的中断服务函数,把数据写到 flip_buf 中。 二:SPI SPI,是英语 Serial Peripheral Interface 的缩写,顾名思义就是串行 外围设备接口。SPI,是一种高速的,全双工,同步的通信总线,并 且在芯片的管脚上只占用四根线,节约了芯片 的管脚,同时为 PCB 的布局上节省空间,提供方便,正是出于这种简单易用的特性,现在 越来越多的芯片集成了这种通信协议。 SPI 是一个环形总线结构,由 ss(cs)、sck、sdi、sdo 构成,其时序 其实很简单,主要是在 sck 的控制下,两个双向移位寄存器进行数据 交换。 上升沿发送、下降沿接收、高位先发送。 上升沿到来的时候,sdo 上的电平将被发送到从设备的寄存器中。 下降沿到来的时候,sdi 上的电平将被接收到主设备的寄存器中。 1:技术性能 SPI 接口是 Motorola 首先提出的全双工三线同步串行外围接口, 采用主从模式(Master Slave)架构;支持多 slave 模式应用,一般仅 支持单 Master。 时钟由 Master 控制,在时钟移位脉冲下,数据按位传输,高位在 前,低位在后(MSB first) ;SPI 接口有 2 根单向数据线,为全双工 通信,目前应用中的数据速率可达几 Mbps 的水平。 2:接口定义 SPI 接口共有 4 根信号线,分别是:设备选择线、时钟线、串行 输出数据线、串行输入数据线)MOSI:主器件数据输出,从器件数据输入 (2)MISO:主器件数据输入,从器件数据输出 (3)SCLK :时钟信号,由主器件产生 (4)/SS:从器件使能信号,由主器件控制 3:内部结构 4:传输时序 SPI 接口在内部硬件实际上是两个简单的移位寄存器,传输的数据 为 8 位,在主器件产生的从器件使能信号和移位脉冲下,按位传输, 高位在前,低位在后。如下图所示,在 SCLK 的下降沿上数据改变, 上升沿一位数据被存入移位寄存器。 SPI 接口没有指定的流控制,没有应答机制确认是否接收到数据 三:I2C I2C 总线是由数据线 SDA 和时钟 SCL 构成的串行总线 可发送和 , 接收数据。在 CPU 与被控 IC 之间、IC 与 IC 之间进行双向传送,最 高传送速率 100kbps。各种被控制电路均并联在这条总线上,就像电 话机一样只有拨通各自的号码才能工作,所以每个电路和模块都有唯 一的地址,在信息的传输过程中,I2C 总线上并接的每一模块电路既 是主控器(或被控器) ,又是发送器(或接收器) ,这取决于它所要完 成的功能。CPU 发出的控制信号分为地址码和控制量两部分,地址 码用来选址,即接通需要控制的电路,确定控制的种类;控制量决定 该调整的类别(如对比度、亮度等)及需要调整的量。这样,各控制 电路虽然挂在同一条总线上,却彼此独立,互不相关。 1:I2C 信号类型 I2C 总线有两根信号线,一根为 SDA(数据线) ,一根为 SCL(时 钟线) 。任何时候时钟信号都是由主控器件产生。 2:I2C 总线协议工作原理 以启动信号 START 来掌管总线,以停止信号 STOP 来释放总线 每次通讯以 START 开始,以 STOP 结束; 启动信号 START 后紧接着发送一个地址字节,其中 7 位为被控器 件的地址码,一位为读/写控制位 R/W,R. /W 位为 0 表示由主控向被 控器件写数据,R/W 为 1 表示由主控向被控器件读数据; 当被控器件检测到收到的地址与自己的地址相同时,在第 9 个时 钟期间反馈应答信号; 每个数据字节在传送时都是高位(MSB)在前; 3:I2C 协议读写过程 读过程 ①主控在检测到总线空闲的状况下, 首先发送一个 START 信号掌 管总线; ②发送一个地址字节(包括 7 位地址码和一位 R/W); ③当被控器件检测到主控发送的地址与自己的地址相同时发送一 个应答信号(ACK); ④主控收到 ACK 后释放数据总线,开始接收第一个数据字节; ⑤主控收到数据后发送 ACK 表示继续传送数据,发送 NACK 表 示传送数据结束; ⑥主控发送完全部数据后,发送一个停止位 STOP,结束整个通 讯并且释放总线; 写通讯过程: ①主控在检测到总线空闲的状况下, 首先发送一个 START 信号掌 管总线; ②发送一个地址字节(包括 7 位地址码和一位 R/W); ③当被控器件检测到主控发送的地址与自己的地址相同时发送一 个应答信号(ACK); ④主控收到 ACK 后开始发送第一个数据字节; ⑤被控器收到数据字节后发送一个 ACK 表示继续传送数据, 发送 NACK 表示传送数据结束; ⑥主控发送完全部数据后,发送一个停止位 STOP,结束整个通 讯并且释放总线C 协议总线信号时序分析 ①总线空闲状态 SDA 和 SCL 两条信号线都处于高电平, 即总线上所有的器件都释 放总线,两条信号线各自的上拉电阻把电平拉高; ②启动信号 START 时钟信号 SCL 保持高电平,数据信号 SDA 的电平被拉低(即负跳 变)。启动信号必须是跳变信号,而且在建立该信号前必修保证总线 处于空闲状态; ③停止信号 STOP 时钟信号 SCL 保持高电平,数据线被释放,使得 SDA 返回高电 平(即正跳变),停止信号也必须是跳变信号。 ④数据传送 SCL 线呈现高电平期间,SDA 线上的电平必须保持稳定,低电平 表示 0(此时的线电压为地电压),高电平表示 1(此时的电压由元器件 的 VDD 决定)。只有在 SCL 线为低电平期间,SDA 上的电平允许变 化。 ⑤应答信号 ACK I2C 总线 位)的方式传送的,发送器件每发送 一个字节之后,在时钟的第 9 个脉冲期间释放数据总线,由接收器发 送一个 ACK(把数据总线的电平拉低)来表示数据成功接收。 ⑥无应答信号 NACK 在时钟的第 9 个脉冲期间发送器释放数据总线,接收器不拉低数 据总线表示一个 NACK,NACK 有两种用途: a. 一般表示接收器未成功接收数据字节; b. 当接收器是主控器时,它收到最后一个字节后,应发送一个 NACK 信号,以通知被控发送器结束数据发送,并释放总线,以便主 控接收器发送一个停止信号 STOP。 四:TCP/IP

http://smartpongo.com/biaozhunjiekou/232.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有