Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Serial port 为什么不是';T4b5b与I2C、SPI一样使用?_Serial Port_Arduino_I2c - Fatal编程技术网

Serial port 为什么不是';T4b5b与I2C、SPI一样使用?

Serial port 为什么不是';T4b5b与I2C、SPI一样使用?,serial-port,arduino,i2c,Serial Port,Arduino,I2c,我在向我的朋友解释I2C/SPI串行协议时,他提到有一种方法可以使用一根带有4B5B协议的电线在两个设备之间发送数据。如果这是真的,为什么B5B不用于(比如)在arduino和外围设备之间发送数据?这里有一个不太有用的答案:我认为它不是arduino平台的一部分的主要原因是它没有在arduino构建的大多数芯片上实现: Arduino和基于/。168和328都没有或协议支持 Arduino使用。它同样缺乏对单线协议的支持 Arduino使用了不同的AVR架构芯片ATmega32u4,但情况相同

我在向我的朋友解释I2C/SPI串行协议时,他提到有一种方法可以使用一根带有4B5B协议的电线在两个设备之间发送数据。如果这是真的,为什么B5B不用于(比如)在arduino和外围设备之间发送数据?

这里有一个不太有用的答案:我认为它不是arduino平台的一部分的主要原因是它没有在arduino构建的大多数芯片上实现:

  • Arduino和基于/。168和328都没有或协议支持
  • Arduino使用。它同样缺乏对单线协议的支持
  • Arduino使用了不同的AVR架构芯片ATmega32u4,但情况相同

最后,这个问题可能应该交给Atmel而不是Arduino的设计者。

简单的回答是,当I2C和SPI在使用时,4B5B不是一个可以使用的协议


I2C和SPI符合OSI网络1级和2级规范,涵盖设备之间连接的物理电气规范以及连接设备如何使用连接进行通信。4B5B仅仅是一种位编码方案,仅涵盖如何在5位信号中表示4位数据,以确保生成的信号具有足够的自动时钟内容。4B5B不是“协议”或1级或2级网络规范,这意味着如果您尝试“使用4B5B”连接两个设备,您仍将有太多未指定的细节,无法实际创建一个可以交换数据的连接

可能有一些“单线”串行协议。为什么不用呢?它很慢。但在许多应用程序中,这并不重要。我认为最好在EE上问这个问题。那么。对不起,什么是EE。那么?对不起,我应该链接到