串口通讯
2022-02-08 11:48:24 1 举报
AI智能生成
集合TTL电平/CMOS电平/UART/IIC/SPI串口知识点
作者其他创作
大纲/内容
TTL电平
CMOS电平
TTL电平与CMOS电平转换
CMOS电平能驱动TTL电平
TTL电平不能驱动CMOS电平,需加上上拉电阻
TTL电平与CMOS电平区别
CMOS具有更大的抗噪区域
电路驱动能力不一样,TTL25mA,CMOS一般10mA
需要输入电流不一样,TTL电平2.5mA左右,CMOS几乎不需要电流输入
很多器件都是兼容TTL和CMOS,不考虑速度和性能,一般可以互换
UART
串行、异步、全双工
数据帧
硬件连接
串口使用
UART控制器-Exynos4412
RS232-RS485
UART存在的问题
RS232接口
RS232信号
TTL与RS232电平转换
MAX232芯片
RS232存在的问题
RS485
RS485协议
两线制
接线方式为总线式拓扑结构,在同一总线上可同时存在多个节点
数据发送和接收都使用这对差分信号线,发送和接收不能同时进行(半双工)
TTL与RS485电平转换
MAX485芯片
RS485优势
IIC总线
多主机总线,连接在IIC总线上的器件为主机和从机,主机有权发起和结束一次通信,
而从机只能为主机呼叫
而从机只能为主机呼叫
可挂载多个芯片
IIC总线特点
当总线上有多个主机同时启用总线时,IIC也具备冲突检测和仲裁的功能来防止错误产生
连接IIC总线器件有一个唯一的地址(7bit),每个器件可作为主机也可作为从机
(同一时间只能有1个主机),总线上器件的增加和删除不影响其他器件的正常工作
(同一时间只能有1个主机),总线上器件的增加和删除不影响其他器件的正常工作
IIC总线通信过程
7位,最后1位决定字节传送方向,0:主机->从机,1:从机->主机
IIC总线信号的实现
起始信号:SCL为高电平时,SDA由高变低表示起始信号
停止信号:SCL为高电平时,SDA由低变高表示停止信号
起始和停止信号都由主机发出
停止信号:SCL为高电平时,SDA由低变高表示停止信号
起始和停止信号都由主机发出
数据线线SDAS高电平表示逻辑1,低电平表示逻辑0
字节传送与应答
同步信号
典型时序
主机向从机发送数据
从机向主机发送数据
主机先想从机发送数据,然后从机再向主机发送数据
Exynos4412下的IIC控制器
标准模式下支持最大100kb/s传输速度,400kb/s(快速模式)
SPI总线
高速、全双工、同步的串行通信总线
寻址方式
SPI通信过程
采用同步工作方式,SCLK线在上升沿或下降沿时发送器向数据线上发送数据,
紧接着下降沿或上升沿时接收器从数据线上读取数据,完成1位数据传送,
8个时钟周期即可完成1个字节数据的传送
紧接着下降沿或上升沿时接收器从数据线上读取数据,完成1位数据传送,
8个时钟周期即可完成1个字节数据的传送
极性和相位
SPI总线有4种不同的工作模式,取决于极性CPOL和相位CPHL
CPOL表示SCLK空闲时的状态,CPOL=0,空闲时SCLK为低电平,
CPHL=1,空闲时SCLK为高电平;
CPHL=1,空闲时SCLK为高电平;
SPHA表示采样时刻,CPHA=0,每个周期的第1个时钟沿采样,
CPHA=1,每个周期的第二个时钟沿采样
CPHA=1,每个周期的第二个时钟沿采样
IIC和SPI的异同
0 条评论
下一页