【技术实现步骤摘要】
单根GPIO模拟I2C设备进行通信的电路、方法和网络设备
[0001]本专利技术涉及通信
,尤其涉及一种单根
GPIO
模拟
I2C
设备进行通信的电路
、
方法和网络设备
。
技术介绍
[0002]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
,串行外设
)
等接口
。
[0003]有些
MCU
或通信芯片上,没有
I2C
硬件接口或硬件接口不够,导致只能用
GPIO
来模拟
I2Cr/>协议波形进行数据通信
。
现有技术中,在使用
GPIO
模拟
I2C
协议时需要通过两根
GPIO
线来模拟,一根
GPIO
线用于模拟
I2C
的
SCL(I2C
时钟信号
)
,一根
GPIO
线用于模拟
SDA(I2C
数据信号线
)。
[0004]然而,在一些情况下,设备上硬件资源不足,没有足够的
GPIO
线能够使用,导致无法进行
I2C
通信
。
技术实现思路
[0005]本专利技术提出了一种单根
GPIO
模拟
I2C
设备进行通信的电路
、
方法和网络设备,以解决硬件资源不足时如何通过1根
GPIO
线模拟
I2C
协议进行通信的问题
。
[0006]为了解决上述技术问题,本专利技术是这样实现的:
[0007]第一方面,本专利技术实施例提供了一种
I2C
通信电路,所述电路包括:控制单元和分压单元;
[0008]所述控制单元分别与主
I2C
设备的
SCL
接口
、SDA
接口连接;
[0009]所述分压单元的第一端与从设备的
GPIO
接口连接,所述分压单元的第二端与所述控制单元连接;
[0010]所述控制单元用于根据所述主
I2C
设备的
SCL
接口
、SDA
接口输出的信号控制所述分压单元的阻值大小,以调节所述从设备的
GPIO
接口接收的电压信号
。
[0011]可选的,所述分压单元包括:第一电阻
、
第二电阻和第三电阻;所述控制单元包括第一控制器和第二控制器;
[0012]所述第一控制器,包括控制极
、
第一极和第二极,所述第一控制器的控制极与主
I2C
设备的
SCL
接口连接,所述第一控制器的第一极与所述第一电阻的第二端连接,所述第一控制器的第二极与所述第三电阻的第二端连接;
[0013]所述第二控制器,包括控制极
、
第一极和第二极,所述第二控制器的控制极与主
I2C
设备的
SDA
接口连接,所述第二控制器的第一极与所述第二电阻的第二端连接,所述第二控制器的第二极与第三电阻的第二端连接;
[0014]所述第一电阻的第一端
、
所述第二电阻的第一端
、
所述第三电阻的第一端并联后与从设备的
GPIO
接口连接
。
[0015]可选的,所述
I2C
通信电路还包括模式调节单元,所述模式调节单元包括第三控制器:
[0016]所述第三控制器,包括控制极
、
第一极和第二极,所述第三控制器的控制极与从设备的
GPIO
接口连接,所述第三控制器的第一极与主
I2C
设备的
SDA
接口连接,所述第三控制器的第二极接地连接
。
[0017]可选的,所述分压单元还包括第四电阻,所述第四电阻的第一端与第一电源连接,所述第四电阻的第二端与所述第一电阻
、
第二电阻以及第三电阻的第一端连接
。
[0018]可选的,所述第一控制器
、
第二控制器和所述第三控制器均为
MOS
管
。
[0019]可选的,所述第一控制器
、
第二控制器和所述第三控制器都是
PMOS
管,所述第一极为源极
、
所述第二极为漏极
、
所述控制极为栅极
。
[0020]可选的,所述第三电阻的阻值<所述第一电阻的阻值<所述第二电阻的阻值
。
[0021]第二方面,本专利技术实施例提供了一种
I2C
通信电路的通信方法,所述方法应用于从设备,所述从设备包括一个
GPIO
接口,所述
GPIO
接口如本专利技术实施例任一所述的电路连接,所述方法包括:
[0022]检测所述
GPIO
接口的电压;
[0023]根据检测到的电压,与主设备进行数据传输
。
[0024]可选的,所述根据检测到的电压,与主设备进行数据传输包括:
[0025]在模拟模式,当检测到所述
GPIO
接口的电压为符合起始条件的电压时,确定需要从所述主设备进行数据接收;
[0026]根据检测到的所述
GPIO
接口的电压获取对应的比特值;
[0027]当检测到所述
GPIO
接口的电压为停止信号对应的电压时,确定数据传输结束
。
[0028]可选的,当所述第一控制器
、
第二控制器是
PMOS
管,所述第三电阻的阻值<所述第一电阻的阻值<所述第二电阻的阻值时:
[0029]所述当开始进行数据接收后,根据检测到本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.
一种
I2C
通信电路,其特征在于,包括:控制单元和分压单元;所述控制单元分别与主
I2C
设备的
SCL
接口
、SDA
接口连接;所述分压单元的第一端与从设备的
GPIO
接口连接,所述分压单元的第二端与所述控制单元连接;所述控制单元用于根据所述主
I2C
设备的
SCL
接口
、SDA
接口输出的信号控制所述分压单元的阻值大小,以调节所述从设备的
GPIO
接口接收的电压信号
。2.
根据权利要求1所述的
I2C
通信电路,其特征在于,所述分压单元包括:第一电阻
、
第二电阻和第三电阻;所述控制单元包括第一控制器和第二控制器;所述第一控制器,包括控制极
、
第一极和第二极,所述第一控制器的控制极与主
I2C
设备的
SCL
接口连接,所述第一控制器的第一极与所述第一电阻的第二端连接,所述第一控制器的第二极与所述第三电阻的第二端连接;所述第二控制器,包括控制极
、
第一极和第二极,所述第二控制器的控制极与主
I2C
设备的
SDA
接口连接,所述第二控制器的第一极与所述第二电阻的第二端连接,所述第二控制器的第二极与第三电阻的第二端连接;所述第一电阻的第一端
、
所述第二电阻的第一端
、
所述第三电阻的第一端并联后与从设备的
GPIO
接口连接
。3.
根据权利要求1所述的
I2C
通信电路,其特征在于,所述
I2C
通信电路还包括模式调节单元,所述模式调节单元包括第三控制器:所述第三控制器,包括控制极
、
第一极和第二极,所述第三控制器的控制极与从设备的
GPIO
接口连接,所述第三控制器的第一极与主
I2C
设备的
SDA
接口连接,所述第三控制器的第二极接地连接
。4.
根据权利要求2所述的
I2C
通信电路,其特征在于,所述分压单元还包括第四电阻,所述第四电阻的第一端与第一电源连接,所述第四电阻的第二端与所述第一电阻
、
第二电阻以及第三电阻的第一端连接
。5.
根据权利要求3所述的
I2C
通信电路,其特征在于,所述第一控制器
、
第二控制器和所述第三控制器均为
MOS
管
。6.
根据权利要求5所述的
I2C
通信电路,其特征在于,所述第一控制器
、
第二控制器和所述第三控制器都是
PMOS
管,所述第一极为源极
、
所述第二极为漏极
、
所述控制极为栅极
。7.
根据权利要求2所述的
I2C
通信电路,其特征在于,所述第三电阻的阻值<所述第一电阻的阻值<所述第二电阻的阻值
【专利技术属性】
技术研发人员:靳大搞,
申请(专利权)人:中国移动通信集团有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。