IO输入口扩展电路转让专利

申请号 : CN201310384866.2

文献号 : CN103439905B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 林治印屈朋伟杜杰平侯勇陈江武

申请人 : 广州视源电子科技股份有限公司

摘要 :

本发明公开了一种IO输入口扩展电路,其中,所述IO输入口具有模拟电压采集功能,所述IO输入口扩展电路包括输出端口、至少两个扩展电路和至少两个输入端口,每一扩展电路的输入端分别对应连接一个所述输入端口,每一扩展电路的输出端均连接所述输出端口,所述输出端口连接所述IO输入口;藉由所述至少两个输入端口输入的至少两个数字电压通过对应的扩展电路后转换成一个共同的模拟电压后通过所述输出端口输出给所述IO输入口。实施本发明IO输入口扩展电路,通过采集IO输入口的输入电压能够有效地实现读取IO口状态,无需其他IO口控制即可达到IO口扩展的目的,电路简单且成本低。

权利要求 :

1.一种IO输入口扩展电路,其中,所述IO输入口具有模拟电压采集功能,其特征在于,所述IO输入口扩展电路包括输出端口、至少两个扩展电路和至少两个输入端口,每一扩展电路的输入端分别对应连接一个所述输入端口,每一扩展电路的输出端均连接所述输出端口,所述输出端口连接所述IO输入口;藉由所述至少两个输入端口输入的至少两个数字电压通过对应的扩展电路转换后,生成一个共同的模拟电压并通过所述输出端口输出给所述IO输入口;

其中,每一所述扩展电路包括MOS管、接地电阻和两个分压电阻;所述MOS管的栅极一方面连接一个所述输入端口,另一方面通过所述接地电阻接地;所述MOS管的源极接地;所述MOS管的漏极一方面通过一个所述分压电阻连接电源,另一方面通过另一个所述分压电阻连接所述输出端口;或每一所述扩展电路包括MOS管、接地电阻和分压电阻;所述MOS管的栅极一方面连接一个所述输入端口,另一方面通过所述接地电阻接地;所述MOS管的源极接地;所述MOS管的漏极一方面通过一个共用分压电阻连接电源,另一方面通过所述分压电阻连接所述输出端口;或每一所述扩展电路包括三极管和两个分压电阻,所述三极管的基极连接一个所述输入端口;所述三极管的发射极接地;所述三极管的集电极通过所述两个分压电阻串联后连接电源,且所述两个分压电阻之间的连接点连接所述输出端口;或每一所述扩展电路包括三极管和分压电阻,所述三极管的基极连接一个所述输入端口;所述三极管的发射极接地;所述三极管的集电极连接所述分压电阻并通过一个共用分压电阻连接电源,且所述分压电阻与所述共用分压电阻之间的连接点连接所述输出端口。

2.如权利要求1所述的IO输入口扩展电路,其特征在于,通过所述模拟电压值能够唯一地获得每一所述输入端口输入的数字电压为高电平/低电平。

3.如权利要求1所述的IO输入口扩展电路,其特征在于,所述IO输入口为ADC输入口。

4.如权利要求1所述的IO输入口扩展电路,其特征在于,所述扩展电路为两个,所述输入端口为两个。

5.如权利要求1所述的IO输入口扩展电路,其特征在于,所述扩展电路为三个,所述输入端口为三个。

说明书 :

IO输入口扩展电路

技术领域

[0001] 本发明涉及模拟电子技术和数字电子技术领域,尤其涉及一种IO输入口扩展电路。

背景技术

[0002] 在各个领域的智能化管理及过程控制等领域中,通常使用单片机作为主控芯片来控制各种仪器和电器的工作。
[0003] 由于单片机的IO口的个数是固定的,而且一个IO口一般只能够输入/输出一路信号,当输入到单片机的信号较多时,经常会遇到单片机的IO输入口不够用的情况。
[0004] 以往解决上述问题的方法主要有两种,一种是更换IO口个数更多的单片机,然而对安装好的单片机进行更换,会造成生产工序的繁琐,从而增大生产成本:另一种解决方法是通过增加专门的扩展芯片来扩展IO口,然而扩展芯片的价格比较高,因此同样存在生产成本高的问题。
[0005] 因此,有必要提供一种改进型的IO输入口扩展电路来克服上述缺陷。

发明内容

[0006] 本发明的多个方面提供一种IO输入口扩展电路,通过采集IO输入口的输入电压能够有效地实现读取IO口状态,无需其他IO口控制即可达到IO口扩展的目的,电路简单且成本低。
[0007] 本发明提供了一种IO输入口扩展电路,其中,所述IO输入口具有模拟电压采集功能,所述IO输入口扩展电路包括输出端口、至少两个扩展电路和至少两个输入端口,每一扩展电路的输入端分别对应连接一个所述输入端口,每一扩展电路的输出端均连接所述输出端口,所述输出端口连接所述IO输入口;藉由所述至少两个输入端口输入的至少两个数字电压通过对应的扩展电路后转换后,生成一个共同的模拟电压并通过所述输出端口输出给所述IO输入口。
[0008] 作为上述技术方案的改进,通过所述模拟电压值能够唯一地获得每一所述输入端口输入的数字电压为高电平/低电平。
[0009] 作为上述技术方案的改进,所述IO输入口为ADC输入口。
[0010] 在本发明的一个实施例中,所述扩展电路为两个,所述输入端口为两个。
[0011] 在本发明的另一实施例中,所述扩展电路为三个,所述输入端口为三个。
[0012] 在本发明的另一实施例中,每一所述扩展电路包括MOS管、接地电阻和两个分压电阻;所述MOS管的栅极一方面连接一个所述输入端口,另一方面通过所述接地电阻接地;所述MOS管的源极接地;所述MOS管的漏极一方面通过一个所述分压电阻连接电源,另一方面通过另一个所述分压电阻连接所述输出端口。
[0013] 在本发明的另一实施例中,每一所述扩展电路包括MOS管、接地电阻和分压电阻;所述MOS管的栅极一方面连接一个所述输入端口,另一方面通过所述接地电阻接地;所述MOS管的源极接地;所述MOS管的漏极一方面通过一个共用分压电阻连接电源,另一方面通过所述分压电阻连接所述输出端口。
[0014] 在本发明的另一实施例中,每一所述扩展电路包括三极管和两个分压电阻,所述三极管的基极连接一个所述输入端口;所述三极管的发射极接地;所述三极管的集电极通过所述两个分压电阻串联后连接电源,且所述两个分压电阻之间的连接点连接所述输出端口。
[0015] 在本发明的另一实施例中,每一所述扩展电路包括三极管和分压电阻,所述三极管的基极连接一个所述输入端口;所述三极管的发射极接地;所述三极管的集电极连接所述分压电阻并通过一个共用分压电阻连接电源,且所述分压电阻与所述共用分压电阻之间的连接点连接所述输出端口。
[0016] 与现有技术相比,本发明公开的IO输入口扩展电路具有如下有益效果:
[0017] 1、将多个输入的数字电压通过本发明通过IO输入口扩展电路而输出模拟电压到具有模拟电压采集功能的IO输入口,根据输出电压和输入电压的对应关系,通过采集IO输入口的输入电压(即扩展电路的输出电压)能够有效地读取IO口输入状态,无需其他IO口控制即可达到IO口扩展的目的;
[0018] 2、电路简单,成本低;本发明的IO输入口扩展电路只需要利用简单的电阻和MOS管(或三极管)电路实现,比起现有技术中能够实现相同功能的DAC转换器成本低,而且该电路相比DAC转换器少了一些控制IO口,只需要小电流驱动,电路简单容易实现。

附图说明

[0019] 图1是本发明实施例1中一种IO输入口扩展电路的结构示意图;
[0020] 图2是本发明实施例2中一种IO输入口扩展电路的结构示意图;
[0021] 图3是本发明实施例3中一种IO输入口扩展电路的结构示意图;
[0022] 图4是本发明实施例4中一种IO输入口扩展电路的结构示意图;
[0023] 图5是本发明实施例5中一种IO输入口扩展电路的结构示意图;
[0024] 图6是本发明实施例6中一种IO输入口扩展电路的结构示意图。

具体实施方式

[0025] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0026] 本发明提供了一种IO输入口扩展电路,其中,所述IO输入口具有模拟电压采集功能(例如,ADC口),所述IO输入口扩展电路包括输出端口、至少两个扩展电路和至少两个输入端口,每一扩展电路的输入端分别对应连接一个所述输入端口,每一扩展电路的输出端均连接所述输出端口,所述输出端口连接所述IO输入口;藉由所述至少两个输入端口输入的至少两个数字电压通过对应的扩展电路后转换成一个共同的模拟电压后通过所述输出端口输出给所述IO输入口。通过所述模拟电压值能够唯一地获得每一所述输入端口输入的数字电压为高电平/低电平。
[0027] 本发明的IO输入口扩展电路,通过采集IO输入口的输入电压能够有效地实现读取IO口状态,无需其他IO口控制即可达到IO口扩展的目的,电路简单且成本低。
[0028] 下面,结合图1~图6,通过多个具体实施例描述本发明的IO输入口扩展电路的结构。
[0029] 实施例1
[0030] 参见图1,是本发明实施例提供的一种IO输入口扩展电路的结构示意图。该IO输入口扩展电路包括输出端口output、三个扩展电路11、12、13和三个输入端口input1、input2、input3,每一扩展电路11、12、13的输入端分别对应连接一个所述输入端口input1、input2、input3,每一扩展电路的输出端均连接所述输出端口output,所述输出端口output连接单片机的IO输入口,其中,该单片机的IO输入口具有模拟电压采集功能,例如ADC口。藉由所述三个输入端口input1、input2、input3输入的三个数字电压通过对应的扩展电路后转换成一个共同的模拟电压后通过所述输出端口output输出给单片机的IO输入口,并且,通过设置电路中的每个元件参数,使得通过知道单片机的IO输入口的模拟电压值,能够直接并唯一推导出所述三个输入端口input1、input2、input3输入的三个数字电压为高电平还是低电平。
[0031] 在本实施例中,每一个扩展电路为一个拓扑结构单元,且每个拓扑结构单元的电路结构相同,可以实现将数字输入转换为电压输出的功能。当需要将单片机的IO输入口扩展成N个输入口时,则利用N个拓扑结构单元来实现。在本实施例中,利用3个拓扑结构单元来实现将单片机的一个IO输入口扩展成3个输入口,即第一扩展电路11、第二扩展电路12和第三扩展电路13。
[0032] 具体的,第一扩展电路11包括MOS管Q1、接地电阻R7和两个分压电阻R1、R2;所述MOS管Q1的栅极一方面连接一个所述输入端口input1(即第一输入端口),另一方面通过所述接地电阻R7接地;所述MOS管Q1的源极接地;所述MOS管Q1的漏极一方面通过分压电阻R1连接电源VCC,另一方面通过分压电阻R2连接所述输出端口output。
[0033] 第二扩展电路12包括MOS管Q2、接地电阻R8和两个分压电阻R3、R4;所述MOS管Q2的栅极一方面连接一个所述输入端口input2(即第二输入端口),另一方面通过所述接地电阻R8接地;所述MOS管Q2的源极接地;所述MOS管Q2的漏极一方面通过分压电阻R3连接电源VCC,另一方面通过分压电阻R4连接所述输出端口output。
[0034] 第三扩展电路13包括MOS管Q3、接地电阻R9和两个分压电阻R5、R6;所述MOS管Q3的栅极一方面连接一个所述输入端口input3(即第三输入端口),另一方面通过所述接地电阻R9接地;所述MOS管Q3的源极接地;所述MOS管Q3的漏极一方面通过分压电阻R5连接电源VCC,另一方面通过分压电阻R6连接所述输出端口output。
[0035] 因此,通过设置电路中的每个元件参数,利用单片机的IO输入口(ADC口)采集所述输出端口output输出的模拟电压值,能够直接并唯一推导出所述第一输入端口input1、第二输入端口input2以及第三输入端口input3输入的数字电压为高电平还是低电平。例如,若供电为VCC,当输入端口input1,input2,input3输入为全为低电平时,输出端口output输出为VCC电压;若输入端口input1,input2,input3输入全为高电平时,输出端口output输出为0V;若输入端口input1,input2,input3输入分别为1、0、0时,输出端口output输出output=VCC*(R2/((R3+R4)//(R5+R6)+R2)),式中//表示电阻并联;若输入端口input1,input2,input3输入分别为1、1、0时,输出端口output输出output=VCC*(R2//R4/(R2//R4+R5+R6)),式中//表示电阻并联;以此类推,可以算出例如设置电路元件参数为VCC=3.3V,R1=3.9K,R2=20K,R3=22K,R4=20K,R5=27K,R6=47K时,输入逻辑和输出电压的关系如下表1:
[0036]Input1 0 0 0 0 1 1 1 1
Input2 0 0 1 1 0 0 1 1
Input3 0 1 0 1 0 1 0 1
Output(V) 3.3 2.11 1.73 1.07 1.41 0.71 0.39 0
[0037] 表1
[0038] 可见,本实施例的IO输入口扩展电路实现了简易的非线性DA转换器的功能,输入不同的逻辑电平,输出不同电压。通过调整电阻阻值,使得采集所述输出端口output输出的模拟电压值,能够直接并唯一推导出所述第一输入端口input1、第二输入端口input2以及第三输入端口input3输入的数字电压为高电平还是低电平。
[0039] 实施例2
[0040] 参见图2,是本发明实施例提供的一种IO输入口扩展电路的结构示意图。与实施例1的电路结构一样,本实施例的IO输入口扩展电路包括输出端口output、三个扩展电路11、12、13和三个输入端口input1、input2、input3,每一扩展电路11、12、13的输入端分别对应连接一个所述输入端口input1、input2、input3,每一扩展电路的输出端均连接所述输出端口output,所述输出端口output连接单片机的IO输入口,其中,该单片机的IO输入口具有模拟电压采集功能,例如ADC口。藉由所述三个输入端口input1、input2、input3输入的三个数字电压通过对应的扩展电路后转换成一个共同的模拟电压后通过所述输出端口output输出给单片机的IO输入口,并且,通过设置电路中的每个元件参数,使得通过知道单片机的IO输入口的模拟电压值,能够直接并唯一推导出所述三个输入端口input1、input2、input3输入的三个数字电压为高电平还是低电平。
[0041] 在本实施例中,每一个扩展电路为一个拓扑结构单元,且每个拓扑结构单元的电路结构相同,可以实现将数字输入转换为电压输出的功能。当需要将单片机的IO输入口扩展成N个输入口时,则利用N个拓扑结构单元来实现。在本实施例中,利用3个拓扑结构单元来实现将单片机的一个IO输入口扩展成3个输入口,即第一扩展电路11、第二扩展电路12和第三扩展电路13。
[0042] 与实施例1的电路结构不同的是,本实施例的第一扩展电路11、第二扩展电路12和第三扩展电路13的具体结构与实施例1的第一扩展电路11、第二扩展电路12和第三扩展电路13不同。
[0043] 具体的,第一扩展电路11包括MOS管Q1、接地电阻R7和分压电阻R2;所述MOS管Q1的栅极一方面连接一个所述输入端口input1(即第一输入端口),另一方面通过所述接地电阻R7接地;所述MOS管Q1的源极接地;所述MOS管Q1的漏极一方面通过一个共用分压电阻R连接电源VCC,另一方面通过所述分压电阻R2连接所述输出端口output。
[0044] 第二扩展电路12包括MOS管Q2、接地电阻R8和分压电阻R4;所述MOS管Q2的栅极一方面连接一个所述输入端口input2(即第二输入端口),另一方面通过所述接地电阻R8接地;所述MOS管Q2的源极接地;所述MOS管Q2的漏极一方面通过一个共用分压电阻R连接电源VCC,另一方面通过所述分压电阻R4连接所述输出端口output。
[0045] 第三扩展电路13包括MOS管Q3、接地电阻R9和分压电阻R6;所述MOS管Q3的栅极一方面连接一个所述输入端口input3(即第三输入端口),另一方面通过所述接地电阻R9接地;所述MOS管Q3的源极接地;所述MOS管Q3的漏极一方面通过一个共用分压电阻R连接电源VCC,另一方面通过所述分压电阻R6连接所述输出端口output。
[0046] 同样,通过设置电路中的每个元件参数,利用单片机的IO输入口(ADC口)采集所述输出端口output输出的模拟电压值,能够直接并唯一推导出所述第一输入端口input1、第二输入端口input2以及第三输入端口input3输入的数字电压为高电平还是低电平。其计算和推导过程可以参考实施例1,在此不再详细描述。
[0047] 实施例3
[0048] 参见图3,是本发明实施例提供的一种IO输入口扩展电路的结构示意图。该IO输入口扩展电路包括输出端口output、两个扩展电路11、12和两个输入端口input1、input2,每一扩展电路11、12的输入端分别对应连接一个所述输入端口input1、input2,每一扩展电路的输出端均连接所述输出端口output,所述输出端口output连接单片机的IO输入口,其中,该单片机的IO输入口具有模拟电压采集功能,例如ADC口。藉由所述两个输入端口input1、input2输入的两个数字电压通过对应的扩展电路后转换成一个共同的模拟电压后通过所述输出端口output输出给单片机的IO输入口,并且,通过设置电路中的每个元件参数,使得通过知道单片机的IO输入口的模拟电压值,能够直接并唯一推导出所述两个输入端口input1、input2输入的两个数字电压为高电平还是低电平。
[0049] 在本实施例中,每一个扩展电路为一个拓扑结构单元,且每个拓扑结构单元的电路结构相同,可以实现将数字输入转换为电压输出的功能。当需要将单片机的IO输入口扩展成N个输入口时,则利用N个拓扑结构单元来实现。在本实施例中,利用2个拓扑结构单元来实现将单片机的一个IO输入口扩展成2个输入口,即第一扩展电路11和第二扩展电路12。
[0050] 具体的,第一扩展电路11包括MOS管Q1、接地电阻R7和两个分压电阻R1、R2;所述MOS管Q1的栅极一方面连接一个所述输入端口input1(即第一输入端口),另一方面通过所述接地电阻R7接地;所述MOS管Q1的源极接地;所述MOS管Q1的漏极一方面通过分压电阻R1连接电源VCC,另一方面通过分压电阻R2连接所述输出端口output。
[0051] 第二扩展电路12包括MOS管Q2、接地电阻R8和两个分压电阻R3、R4;所述MOS管Q2的栅极一方面连接一个所述输入端口input2(即第二输入端口),另一方面通过所述接地电阻R8接地;所述MOS管Q2的源极接地;所述MOS管Q2的漏极一方面通过分压电阻R3连接电源VCC,另一方面通过分压电阻R4连接所述输出端口output。
[0052] 同样,通过设置电路中的每个元件参数,利用单片机的IO输入口(ADC口)采集所述输出端口output输出的模拟电压值,能够直接并唯一推导出所述第一输入端口input1和第二输入端口input2输入的数字电压为高电平还是低电平。其计算和推导过程可以参考实施例1,在此不再详细描述。
[0053] 实施例4
[0054] 参见图4,是本发明实施例提供的一种IO输入口扩展电路的结构示意图。该IO输入口扩展电路包括输出端口output、两个扩展电路11、12和两个输入端口input1、input2,每一扩展电路11、12的输入端分别对应连接一个所述输入端口input1、input2,每一扩展电路的输出端均连接所述输出端口output,所述输出端口output连接单片机的IO输入口,其中,该单片机的IO输入口具有模拟电压采集功能,例如ADC口。藉由所述两个输入端口input1、input2输入的两个数字电压通过对应的扩展电路后转换成一个共同的模拟电压后通过所述输出端口output输出给单片机的IO输入口,并且,通过设置电路中的每个元件参数,使得通过知道单片机的IO输入口的模拟电压值,能够直接并唯一推导出所述两个输入端口input1、input2输入的两个数字电压为高电平还是低电平。
[0055] 在本实施例中,每一个扩展电路为一个拓扑结构单元,且每个拓扑结构单元的电路结构相同,可以实现将数字输入转换为电压输出的功能。当需要将单片机的IO输入口扩展成N个输入口时,则利用N个拓扑结构单元来实现。在本实施例中,利用2个拓扑结构单元来实现将单片机的一个IO输入口扩展成2个输入口,即第一扩展电路11和第二扩展电路12。
[0056] 具体的,第一扩展电路11包括三级管Q1和分压电阻R1;所述三级管Q1的基极连接一个所述输入端口input1(即第一输入端口);所述三极管Q1的发射极接地;所述三极管Q1的集电极连接所述分压电阻R1并通过一个共用分压电阻R连接电源VCC,且所述分压电阻R1与所述共用分压电阻R之间的连接点连接所述输出端口output。
[0057] 第二扩展电路12包括三级管Q2和分压电阻R2;所述三级管Q2的基极连接一个所述输入端口input2(即第二输入端口);所述三极管Q2的发射极接地;所述三极管Q2的集电极连接所述分压电阻R2并通过一个共用分压电阻R连接电源VCC,且所述分压电阻R2与所述共用分压电阻R之间的连接点连接所述输出端口output。同样,通过设置电路中的每个元件参数,利用单片机的IO输入口(ADC口)采集所述输出端口output输出的模拟电压值,能够直接并唯一推导出所述第一输入端口input1和第二输入端口input2输入的数字电压为高电平还是低电平。其计算和推导过程可以参考实施例1,在此不再详细描述。
[0058] 实施例5
[0059] 参见图5,是本发明实施例提供的一种IO输入口扩展电路的结构示意图。该IO输入口扩展电路包括输出端口output、两个扩展电路11、12和两个输入端口input1、input2,每一扩展电路11、12的输入端分别对应连接一个所述输入端口input1、input2,每一扩展电路的输出端均连接所述输出端口output,所述输出端口output连接单片机的IO输入口,其中,该单片机的IO输入口具有模拟电压采集功能,例如ADC口。藉由所述两个输入端口input1、input2输入的两个数字电压通过对应的扩展电路后转换成一个共同的模拟电压后通过所述输出端口output输出给单片机的IO输入口,并且,通过设置电路中的每个元件参数,使得通过知道单片机的IO输入口的模拟电压值,能够直接并唯一推导出所述两个输入端口input1、input2输入的两个数字电压为高电平还是低电平。
[0060] 在本实施例中,每一个扩展电路为一个拓扑结构单元,且每个拓扑结构单元的电路结构相同,可以实现将数字输入转换为电压输出的功能。当需要将单片机的IO输入口扩展成N个输入口时,则利用N个拓扑结构单元来实现。在本实施例中,利用2个拓扑结构单元来实现将单片机的一个IO输入口扩展成2个输入口,即第一扩展电路11和第二扩展电路12。
[0061] 具体的,第一扩展电路11包括三级管Q1和两个分压电阻R1、R1’;所述三级管Q1的基极连接一个所述输入端口input1(即第一输入端口);所述三极管Q1的发射极接地;所述三极管Q1的集电极通过所述两个分压电阻R1、R1’串联后连接电源VCC,且所述两个分压电阻R1、R1’之间的连接点连接所述输出端口output。
[0062] 第二扩展电路12包括三级管Q2和两个分压电阻R2、R2’;所述三级管Q2的基极连接一个所述输入端口input2(即第二输入端口);所述三极管Q2的发射极接地;所述三极管Q2的集电极通过所述两个分压电阻R2、R2’串联后连接电源VCC,且所述两个分压电阻R2、R2’之间的连接点连接所述输出端口output。
[0063] 同样,通过设置电路中的每个元件参数,利用单片机的IO输入口(ADC口)采集所述输出端口output输出的模拟电压值,能够直接并唯一推导出所述第一输入端口input1和第二输入端口input2输入的数字电压为高电平还是低电平。其计算和推导过程可以参考实施例1,在此不再详细描述。
[0064] 实施例6
[0065] 参见图6,是本发明实施例提供的一种IO输入口扩展电路的结构示意图。该IO输入口扩展电路包括输出端口output、三个扩展电路11、12、13和三个输入端口input1、input2、input3,每一扩展电路11、12、13的输入端分别对应连接一个所述输入端口input1、input2、input3,每一扩展电路的输出端均连接所述输出端口output,所述输出端口output连接单片机的IO输入口,其中,该单片机的IO输入口具有模拟电压采集功能,例如ADC口。藉由所述三个输入端口input1、input2、input3输入的三个数字电压通过对应的扩展电路后转换成一个共同的模拟电压后通过所述输出端口output输出给单片机的IO输入口,并且,通过设置电路中的每个元件参数,使得通过知道单片机的IO输入口的模拟电压值,能够直接并唯一推导出所述三个输入端口input1、input2、input3输入的三个数字电压为高电平还是低电平。
[0066] 在本实施例中,每一个扩展电路为一个拓扑结构单元,且每个拓扑结构单元的电路结构相同,可以实现将数字输入转换为电压输出的功能。当需要将单片机的IO输入口扩展成N个输入口时,则利用N个拓扑结构单元来实现。在本实施例中,利用3个拓扑结构单元来实现将单片机的一个IO输入口扩展成3个输入口,即第一扩展电路11、第二扩展电路12和第三扩展电路13。
[0067] 具体的,第一扩展电路11包括三级管Q1和分压电阻R1;所述三级管Q1的基极连接一个所述输入端口input1(即第一输入端口);所述三极管Q1的发射极接地;所述三极管Q1的集电极连接所述分压电阻R1并通过一个共用分压电阻R连接电源VCC,且所述分压电阻R1与所述共用分压电阻R之间的连接点连接所述输出端口output。
[0068] 第二扩展电路12包括三级管Q2和分压电阻R2;所述三级管Q2的基极连接一个所述输入端口input2(即第二输入端口);所述三极管Q2的发射极接地;所述三极管Q2的集电极连接所述分压电阻R2并通过一个共用分压电阻R连接电源VCC,且所述分压电阻R2与所述共用分压电阻R之间的连接点连接所述输出端口output。
[0069] 第三扩展电路13包括三级管Q3和分压电阻R3;所述三级管Q3的基极连接一个所述输入端口input3(即第三输入端口);所述三极管Q3的发射极接地;所述三极管Q3的集电极连接所述分压电阻R3并通过一个共用分压电阻R连接电源VCC,且所述分压电阻R3与所述共用分压电阻R之间的连接点连接所述输出端口output。
[0070] 同样,通过设置电路中的每个元件参数,利用单片机的IO输入口(ADC口)采集所述输出端口output输出的模拟电压值,能够直接并唯一推导出所述第一输入端口input1、第二输入端口input2和第三输入端口input3输入的数字电压为高电平还是低电平。其计算和推导过程可以参考实施例1,在此不再详细描述。
[0071] 可以理解的,本发明的IO输入口扩展电路的扩展电路(拓扑结构单元)并不局限于在上述所有实施例中提及的2个或3个,当上述IO输入口扩展电路增加一个拓扑结构单元时,可增加一路输入。可以扩展到N路输入,并相应调整电路中各个电阻的阻值,使得采集输出端口输出的模拟电压值,能够直接并唯一推导出各个输入端口入的数字电压为高电平还是低电平。
[0072] 综上所述,本发明公开的IO输入口扩展电路具有如下有益效果:
[0073] 1、将多个输入的数字电压通过本发明通过IO输入口扩展电路而输出模拟电压到具有模拟电压采集功能的IO输入口,根据输出电压和输入电压的对应关系,通过采集IO输入口的输入电压(即扩展电路的输出电压)能够有效地读取IO口输入状态,无需其他IO口控制即可达到IO口扩展的目的;
[0074] 2、电路简单,成本低;本发明的IO输入口扩展电路只需要利用简单的电阻和MOS管(或三极管)电路实现,比起现有技术中能够实现相同功能的DAC转换器成本低,而且该电路相比DAC转换器少了一些控制IO口,只需要小电流驱动,电路简单容易实现。
[0075] 以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。