单根GPIO模拟I2C设备进行通信的电路、方法和网络设备与流程

文档序号:36245499发布日期:2023-12-02 10:54阅读:52来源:国知局
单根的制作方法

本发明涉及通信,尤其涉及一种单根gpio模拟i2c设备进行通信的电路、方法和网络设备。


背景技术:

1、mcu(microcontroller unit,微控制单元)或通信芯片等芯片都会带有不同数量不同种类的外设接口,这些外设接口是用来和外设进行通信数据交换的,而接口又分为不同的接口类型,比如spi/uart/i2c/sdio/adc……这些接口都是通过gpio(general-purpose input/output,通用输入/输出接口)接口映射出来的,即芯片的gpio接口,只要芯片本身把这些硬件接口映射到一个支持模拟接口的gpio上,就可以随时映射为i2c、adc(analog to digital converter,数模转换)或者spi(serial peripheral interfac,串行外设)等接口。

2、有些mcu或通信芯片上,没有i2c硬件接口或硬件接口不够,导致只能用gpio来模拟i2c协议波形进行数据通信。现有技术中,在使用gpio模拟i2c协议时需要通过两根gpio线来模拟,一根gpio线用于模拟i2c的scl(i2c时钟信号),一根gpio线用于模拟sda(i2c数据信号线)。

3、然而,在一些情况下,设备上硬件资源不足,没有足够的gpio线能够使用,导致无法进行i2c通信。


技术实现思路

1、本发明提出了一种单根gpio模拟i2c设备进行通信的电路、方法和网络设备,以解决硬件资源不足时如何通过1根gpio线模拟i2c协议进行通信的问题。

2、为了解决上述技术问题,本发明是这样实现的:

3、第一方面,本发明实施例提供了一种i2c通信电路,所述电路包括:控制单元和分压单元;

4、所述控制单元分别与主i2c设备的scl接口、sda接口连接;

5、所述分压单元的第一端与从设备的gpio接口连接,所述分压单元的第二端与所述控制单元连接;

6、所述控制单元用于根据所述主i2c设备的scl接口、sda接口输出的信号控制所述分压单元的阻值大小,以调节所述从设备的gpio接口接收的电压信号。

7、可选的,所述分压单元包括:第一电阻、第二电阻和第三电阻;所述控制单元包括第一控制器和第二控制器;

8、所述第一控制器,包括控制极、第一极和第二极,所述第一控制器的控制极与主i2c设备的scl接口连接,所述第一控制器的第一极与所述第一电阻的第二端连接,所述第一控制器的第二极与所述第三电阻的第二端连接;

9、所述第二控制器,包括控制极、第一极和第二极,所述第二控制器的控制极与主i2c设备的sda接口连接,所述第二控制器的第一极与所述第二电阻的第二端连接,所述第二控制器的第二极与第三电阻的第二端连接;

10、所述第一电阻的第一端、所述第二电阻的第一端、所述第三电阻的第一端并联后与从设备的gpio接口连接。

11、可选的,所述i2c通信电路还包括模式调节单元,所述模式调节单元包括第三控制器:

12、所述第三控制器,包括控制极、第一极和第二极,所述第三控制器的控制极与从设备的gpio接口连接,所述第三控制器的第一极与主i2c设备的sda接口连接,所述第三控制器的第二极接地连接。

13、可选的,所述分压单元还包括第四电阻,所述第四电阻的第一端与第一电源连接,所述第四电阻的第二端与所述第一电阻、第二电阻以及第三电阻的第一端连接。

14、可选的,所述第一控制器、第二控制器和所述第三控制器均为mos管。

15、可选的,所述第一控制器、第二控制器和所述第三控制器都是pmos管,所述第一极为源极、所述第二极为漏极、所述控制极为栅极。

16、可选的,所述第三电阻的阻值<所述第一电阻的阻值<所述第二电阻的阻值。

17、第二方面,本发明实施例提供了一种i2c通信电路的通信方法,所述方法应用于从设备,所述从设备包括一个gpio接口,所述gpio接口如本发明实施例任一所述的电路连接,所述方法包括:

18、检测所述gpio接口的电压;

19、根据检测到的电压,与主设备进行数据传输。

20、可选的,所述根据检测到的电压,与主设备进行数据传输包括:

21、在模拟模式,当检测到所述gpio接口的电压为符合起始条件的电压时,确定需要从所述主设备进行数据接收;

22、根据检测到的所述gpio接口的电压获取对应的比特值;

23、当检测到所述gpio接口的电压为停止信号对应的电压时,确定数据传输结束。

24、可选的,当所述第一控制器、第二控制器是pmos管,所述第三电阻的阻值<所述第一电阻的阻值<所述第二电阻的阻值时:

25、所述当开始进行数据接收后,根据检测到的电压信号获取对应的比特值包括:

26、当所述gpio处检测到的电压为v4时,收到的比特值为1;

27、当所述gpio处检测到的电压为v3时,收到的比特值为0;

28、当所述gpio处检测到的电压低于v3时,一个比特的数据发送完成;

29、所述v4>v3。

30、可选的,所述i2c通信电路还包括:模式调节单元,所述模式调节单元包括第三控制器,所述第三控制器包括控制极、第一极和第二极,所述第三控制器的控制极与从设备的gpio接口连接,所述第三控制器的第一极与主i2c设备的sda接口连接,所述第三控制器的第二极接地连接;

31、所述方法还包括:每连续接收完预设比特的数据时将从设备的gpio接口切换为输出模式;

32、在输出模式下所述gpio接口通过所述第三控制器向所述主设备的sda接口发送应答信号;

33、所述应答信号发送完成后,所述从设备的gpio切换为模拟模式,继续进行数据接收,直到接收到所述停止信号。

34、第三方面,本发明实施例提供了一种网络设备,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序,所述程序被所述处理器执行时实现上述第二方面所述的i2c通信电路的通信方法的步骤。

35、第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述第二方面的i2c通信电路的通信方法的步骤。

36、本发明实施例提供的技术方案带来的有益效果至少包括:提供了一种i2c通信电路,所述电路包括:控制单元和分压单元;所述控制单元分别与主i2c设备的scl接口、sda接口连接;所述分压单元的第一端与从设备的gpio接口连接,所述分压单元的第二端与所述控制单元连接;所述控制单元用于根据所述主i2c设备的scl接口、sda接口输出的信号控制所述分压单元的阻值大小,以调节所述从设备的gpio接口接收的电压信号;通过上述电路能够实现通过单根gpio线模拟i2c从设备通信的技术效果。



技术特征:

1.一种i2c通信电路,其特征在于,包括:控制单元和分压单元;

2.根据权利要求1所述的i2c通信电路,其特征在于,所述分压单元包括:第一电阻、第二电阻和第三电阻;所述控制单元包括第一控制器和第二控制器;

3.根据权利要求1所述的i2c通信电路,其特征在于,所述i2c通信电路还包括模式调节单元,所述模式调节单元包括第三控制器:

4.根据权利要求2所述的i2c通信电路,其特征在于,所述分压单元还包括第四电阻,所述第四电阻的第一端与第一电源连接,所述第四电阻的第二端与所述第一电阻、第二电阻以及第三电阻的第一端连接。

5.根据权利要求3所述的i2c通信电路,其特征在于,所述第一控制器、第二控制器和所述第三控制器均为mos管。

6.根据权利要求5所述的i2c通信电路,其特征在于,所述第一控制器、第二控制器和所述第三控制器都是pmos管,所述第一极为源极、所述第二极为漏极、所述控制极为栅极。

7.根据权利要求2所述的i2c通信电路,其特征在于,所述第三电阻的阻值<所述第一电阻的阻值<所述第二电阻的阻值。

8.一种i2c通信电路的通信方法,其特征在于,所述方法应用于从设备,所述从设备包括一个gpio接口,所述gpio接口如权利要求1至7任一所述的电路连接,所述方法包括:

9.根据权利要求8所述的i2c通信电路的通信方法,其特征在于,所述根据检测到的电压,与主设备进行数据传输包括:

10.根据权利要求9所述的i2c通信电路的通信方法,其特征在于,当所述第一控制器、第二控制器是pmos管,所述第三电阻的阻值<所述第一电阻的阻值<所述第二电阻的阻值时:

11.根据权利要求9所述的i2c通信电路的通信方法,其特征在于,所述i2c通信电路还包括:模式调节单元,所述模式调节单元包括第三控制器,所述第三控制器包括控制极、第一极和第二极,所述第三控制器的控制极与从设备的gpio接口连接,所述第三控制器的第一极与主i2c设备的sda接口连接,所述第三控制器的第二极接地连接;

12.一种网络设备,其特征在于,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序,所述程序被所述处理器执行时实现如权利要求8至11中任一项所述的i2c通信电路的通信方法的步骤。

13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求8至11中任一项所述的i2c通信电路的通信方法的步骤。


技术总结
本发明提供一种单根GPIO模拟I2C设备进行通信的电路、方法和网络设备。所述电路包括控制单元和分压单元;所述控制单元分别与主I2C设备的SCL接口、SDA接口连接;所述分压单元的第一端与从设备的GPIO接口连接,所述分压单元的第二端与所述控制单元连接;所述控制单元用于根据所述主I2C设备的SCL接口、SDA接口输出的信号控制所述分压单元的阻值大小,以调节所述从设备的GPIO接口接收的电压信号;通过上述电路能够实现通过单根GPIO线模拟I2C从设备通信的技术效果。

技术研发人员:靳大搞
受保护的技术使用者:中移物联网有限公司
技术研发日:
技术公布日:2024/1/16
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1