欢迎访问南京国益劳务有限公司(http://gylw88.com)!

串口通信与iic,串口和i2c哪个速度快

我用securecrt通过zmodem协议往设备传文件时,发现串口概率性卡死。表现为设备上运行的lrzsz进程在通过read函数读取串口数据时阻塞,只有断电重启设备才能恢复,如附图1,但是通过另一个USB转UART的串口线监控PC往下发的数据,发现PC通过串口发送完整个文件的数据,只是设备的串口接收没有收到,在设备的串口接收中断中增加计数,当发生故障时,计数不增加,说明串口接收不正常,或者接收中断不正常。

该代码的逻辑是这样的,用于调试的串口是多功能复用的GPIO口,在使用时可能需要切换到其它工作模式,比如当需要烧写uboot时,需要将该串口切换为I2C的工作模式。驱动代码增加了通过连接输入5个字符”1″或者”2″来切换工作模式。当传输的文件中包括有连续5个”1″或者”2″的字符串时,该串口就被切换到其它工作模式,而不能进行串口数据的收发。

1、同步串口协议SSI(包括SPI

区别:SPI:高速同步串行口。3~4线接口,收发独立、可同步进行UART:通用异步串行口。按照标准波特率完成双向通讯,速度慢SPI:一种串行传输方式,三线制,网上可找到其通信协议和用法的3根线实现数据双向传输串行外围接口SerialperipheralinterfaceUART:通用异步收发器UART是用于控制计算机与串行设备的芯片。

作为接口的一部分,UART还提供以下功能:将由计算机内部传送过来的并行数据转换为输出的串行数据流。将计算机外部来的串行数据转换为字节,供计算机内部使用并行数据的器件使用。在输出的串行数据流中加入奇偶校验位,并对从外部接收的数据流进行奇偶校验。在输出数据流中加入启停标记,并从接收数据流中删除启停标记。处理由键盘或鼠标发出的中断信号(键盘和鼠票也是串行设备)。

2、串口通信,spi通信和i^2c通信的数据帧有什么不同?

1、接口标准不同串口通信可将接受的串行数据流转换为并行的数据字符供给CPU的器件。SPI通信由三条信号线组成:串行时钟(SCLK)、串行数据输出(SDO)、串行数据输入(SDI)。I2C总线是双向、两线(SCL、SDA)、串行、多主控(multimaster)接口标准。2、使用线的根数不同串口通信可以在使用一根线发送数据的同时用另一根线接收数据。

I2C总线是一种简单、双向二线制同步串行总线,它只需要两根线即可在连接于总线上的器件之间传送信息。3、基本协议不同串口进行通信过程至少涉及三个层次的协议:物理层协议、数据路层协议和应用层协议,spi通信通常由一个主模块和一个或多个从模块组成,主模块选择一个从模块进行同步通信,从而完成数据的交换,SPI是一个环形结构。I2C总线数据传输必须带响应,相关的响应时钟脉冲由主机产生。

  • 最新
  • 最热