uart spi iic之间的区别

Uart   串行  异步   全双工

      读取温湿度数据       语音播报   字库下载

Spi     串行  同步   全双工

       Oled屏驱动   闪存的信息读取    

Iic    串行    同步   全双工

       St20温湿度传感器     6轴加速度传感器     hp6血压心率模块

Rs485(底层硬件)+modbus(上层协议) 

Wifi (esp8266) 

特殊的外设的信息传输

Lcd屏                          用fsmc()模拟8080时序

光照,烟雾的数据采集           DMA直接数据传输

温湿度dht11                   单总线数据

1UART的

通信过程

     TXD ---------->>RXD

     RXD----------->>TXD

数据格式

起始位+数据位+校验位+停止位  (位协议rs232  也称(1801))

数据  1:                     数据   0

适用范围

    两个设备 一对一通信

用串口中断解决数据按位发送问题,将数据放在缓冲区,当数据满,全部发送

传输

程序代码:

2spi

的通信过程                        设备1             设备2

        

(主) Cs(片选)------------------------ (从) cs     与从设备公用sck miso mosi线

sck(时钟) ------------------------> sck(时钟)   不共用片选线(通过片选择从设备)

miso(串行输入)<----------------------- mosi

mosi(串行输出)----------------------à miso

数据格式:

通过时钟极性和时钟相位确定模式   模式0和3为上升沿采样下降沿发送

传输步骤:1主句发送时钟信号  2主机拉低片选激活从机   3主机通过mosi将数据发送给从机  4  若需要响应从机将数据发送给

3iic

Iic的结构是什么?

   由SDA(串行数据线)和SCL(串行时钟线)及上拉电阻组成。

   谁控制时钟线(即控制SCL的电平高低变换)谁就是主设备。

特点:1支持多个主机和多个从机,2连接总线的设备都有一个唯一地址3多个主机同时使用总线时,为了防止数据冲突,会利用仲裁方式决定由哪个设备占用总线。

数据的有效位:SCL 为高电平的时候 SDA 表示的数据有效,即此时的 SDA 为高电平时表示数据“ 1”,为低电平时表示数据“ 0”。当 SCL为低电平时, SDA 的数据无效,一般在这个时候 SDA 进行电平切换,为下一次表示数据做好准备。

通讯过程:

数据格式:起始信号+从机地址+(读写选择位)S/W+(应答信号)A+(数据8位)+A+DATA

+数据停止信号(p)

如果要写 MPU-6050寄存器,主设备需要发出起始信号( S)和硬件地址,还要加一个R/W位, 0为写, 1为读。在第9个时钟周期(上升沿时), MPU-6050产生应答信号。然后主设备开始传送寄存器地址( RA), 接到MPU6050的应答后, 开始传送寄存器数据, 然后仍然要有应答信号,依次类推。如下图:。

开始信号:串行时钟线为高电平,串行数据线由低电平向高电平跳变

结束信号:串行时钟线为高电平,串行数据线由高电平向低电平跳变

应答信号:主机串行时钟线(scl)拉高时,读取从机串行数据线(sda)的电平,如果为低电平,表示从机产生应答信号,若为高表示信号无效。

Uatr  spi   iic  三者比较

             SPI                    IIC                  UART

传输速率    spi最高                   iic次之           uart 最低

数据线:    spi4根                   iic2根                 uart 2根

通信设备   一主多从                  多主多从            单对单

从机选择方式  片选信号选择           地址选择从机

校验          无                                          奇偶校验

                        
 

  • 20
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值