CN104242901A - 单io口同时实现输入输出功能的装置及其实现方法 - Google Patents
单io口同时实现输入输出功能的装置及其实现方法 Download PDFInfo
- Publication number
- CN104242901A CN104242901A CN201310586896.1A CN201310586896A CN104242901A CN 104242901 A CN104242901 A CN 104242901A CN 201310586896 A CN201310586896 A CN 201310586896A CN 104242901 A CN104242901 A CN 104242901A
- Authority
- CN
- China
- Prior art keywords
- input
- output
- signal
- port
- processing module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000012905 input function Methods 0.000 title abstract 4
- 239000003990 capacitor Substances 0.000 claims description 51
- ATJFFYVFTNAWJD-UHFFFAOYSA-N Tin Chemical compound [Sn] ATJFFYVFTNAWJD-UHFFFAOYSA-N 0.000 claims description 15
- 230000008569 process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000012938 design process Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Landscapes
- Microcomputers (AREA)
Abstract
本发明公开一种单IO口同时实现输入输出功能的装置及其实现方法,其中单IO口同时实现输入输出功能的装置包括信号输入端、微控制器、输入处理模块、输出处理模块和信号输出端。本发明从信号输入端输入外部输入信号,通过输入处理模块向微控制器的IO口输出与该外部输入信号状态一致的IO输入信号,微控制器的IO口作为输入口时,通过IO口读取IO输入信号,IO口作为输出口时,微控制器通过IO口输出IO输出信号,输出处理模块通过信号输出端输出与该IO输出信号状态一致的外部输出信号。从而解决了单个IO口同时作为输入口和输出口使用时出现的输入与输出信号互相干扰问题,而且本发明还具有电路结构简单、成本低廉的优点。
Description
技术领域
本发明涉及电子电路技术领域,尤其涉及一种单IO口同时实现输入输出功能的装置及其实现方法。
背景技术
微控制器(MCU)的输入输出口(IO口)同时具有输入和输出的功能,即MCU的一个IO口既可以作为输入口使用,也可以作为输出口使用。在MCU应用中,MCU与外部电路连接,当IO口作为输入口时,MCU通过IO口从与其连接的外部电路读取外部输入信号,当IO口作为输出口时,MCU通过IO口向外部电路发送外部输出信号。但是,在MCU的IO口使用过程中一般只用到了IO口的单项功能:输入或是输出。从而,在电路设计过程中需要的IO口数量较多时,会出现IO口不足的问题,此时一般通过将IO口同时作为输入口和输出口使用,然而,当一个IO口同时作为输入口和输出口使用时,向IO口输入的外部输入信号和从IO口输出的外部输出信号会互相干扰,即IO口的输入与输出信号会互相干扰。目前主要是通过在MCU的外部加一个缓冲集成电路(缓冲IC)来解决IO口输入与输出信号互相干扰问题,然而采用缓冲IC导致电路设计成本比较高。
发明内容
本发明的主要目的是提出一种单IO口同时实现输入输出功能的装置及其实现方法,旨在解决单个IO口同时作为输入口和输出口使用时出现的IO口输入与输出信号互相干扰问题,而且降低设计成本。
为了达到上述目的,本发明提出一种单IO口同时实现输入输出功能的装置,该装置包括:
信号输入端,用于供外部输入信号输入;
微控制器,所述微控制器的IO口作为输入口时,所述微控制器通过所述IO口读取IO输入信号,所述微控制器的IO口作为输出口时,所述微控制器通过所述IO口输出IO输出信号;
输入处理模块,用于检测所述信号输入端输入的外部输入信号,并向所述微控制器的IO口输出与该外部输入信号状态一致的IO输入信号;
输出处理模块,用于检测所述IO输出信号,并输出与该IO输出信号状态一致的外部输出信号;以及
信号输出端,用于将与所述IO输出信号状态一致的外部输出信号向外部电路输出;其中,
所述输入处理模块的输入端与所述信号输入端连接,所述输入处理模块的输出端和所述输出处理模块的输入端与所述微控制器的同一IO口连接,所述输出处理模块的输出端与所述信号输出端连接。
优选地,所述输入处理模块检测到所述外部输入信号为高电平时,所述输入处理模块输出高电平的IO输入信号;所述输入处理模块检测到所述外部输入信号为低电平时,所述输入处理模块输出低电平的IO输入信号。
优选地,所述输出处理模块检测到所述IO输出信号为高电平时,所述输出处理模块输出高电平的外部输出信号;所述输出处理模块检测到所述IO输出信号为低电平时,所述输出处理模块输出低电平的外部输出信号。
优选地,所述输入处理模块包括第一二极管、第一电阻和第二电阻;
所述第一二极管的阳极经由所述第一电阻与所述信号输入端连接,所述第一二极管的阴极与所述微控制器的IO口连接,且经由所述第二电阻接地。
优选地,所述输出处理模块包括第二二极管、一电容、第三电阻和第四电阻;
所述第二二极管的阳极与所述微控制器的IO口连接,且与所述第一二极管的阴极连接,所述第二二极管的阴极与所述电容的正极连接,且与所述第三电阻的一端连接;所述第三电阻的另一端与所述信号输出端连接,且经由所述第四电阻接地,所述电容的负极接地。
优选地,所述电容的充电时间Tcin大于所述微控制器读取IO口输入状态的时间Tin;所述电容的放电时间Tcout大于所述微控制器读取IO口输入状态的时间Tin。
优选地,所述Tcin的取值满足:
Tcin=1.1*R1*C1;
所述Tcout的取值满足:
Tcout=1.1*(R3+R4)*C1;
其中,R1为第一电阻的阻值,R3为第三电阻的阻值,R4为第四电阻的阻值,C1为电容的电容量。
本发明提出的单IO口同时实现输入输出功能的装置,通过输入处理模块检测信号输入端输入的外部输入信号,并向微控制器的IO口输出与该外部输入信号状态一致的IO输入信号,当微控制器的IO口作为输入口时,微控制器通过IO口读取输入处理模块输出的IO输入信号,当IO口作为输出口时,微控制器通过IO口输出IO输出信号,输出处理模块检测该IO输出信号,并通过信号输出端输出与该IO输出信号状态一致的外部输出信号。从而微控制器的IO口在输入和输出功能转换过程中,微控制器从输入处理模块读取到的IO输入信号与输出处理模块输出的外部输出信号不互相干扰,解决了单个IO口同时作为输入口和输出口使用时出现的IO口输入与输出信号互相干扰问题,而且本发明通过输入处理模块和输出处理模块来实现,输入处理模块和输出处理模块的电路结构简单,从而易于实现,降低了设计成本。
本发明还提出一种单IO口同时实现输入输出功能的装置的实现方法,该实现方法包括如下步骤:
输入处理模块检测信号输入端输入的外部输入信号,并向微控制器的IO口输出与该外部输入信号状态一致的IO输入信号;
将微控制器的IO口作为输入口,所述微控制器通过所述IO口读取所述IO输入信号;
将微控制器的IO口作为输出口,所述微控制器通过所述IO口输出IO输出信号;
输出处理模块检测所述IO输出信号,并输出与该IO输出信号状态一致的外部输出信号,通过信号输出端将与所述IO输出信号状态一致的外部输出信号向外部电路输出。
优选地,所述输入处理模块检测信号输入端输入的外部输入信号,并向微控制器的IO口输出与该外部输入信号状态一致的IO输入信号具体为:
所述输入处理模块检测到所述外部输入信号为高电平时,所述输入处理模块输出高电平的IO输入信号;所述输入处理模块检测到所述外部输入信号为低电平时,所述输入处理模块输出低电平的IO输入信号。
优选地,所述输出处理模块检测所述IO输出信号,并输出与该IO输出信号状态一致的外部输出信号具体为:
所述输出处理模块检测到所述IO输出信号为高电平时,所述输出处理模块输出高电平的外部输出信号;所述输出处理模块检测到所述IO输出信号为低电平时,所述输出处理模块输出低电平的外部输出信号。
本发明提出的单IO口同时实现输入输出功能的装置的实现方法,首先通过输入处理模块检测信号输入端输入的外部输入信号,并向微控制器的IO口输出与该外部输入信号状态一致的IO输入信号,将微控制器的IO口作为输入口,微控制器通过IO口读取输入处理模块输出的IO输入信号,再将IO口作为输出口,微控制器通过IO口输出IO输出信号,然后输出处理模块检测该IO输出信号,并通过信号输出端输出与该IO输出信号状态一致的外部输出信号。从而微控制器的IO口在输入和输出功能转换过程中,微控制器从输入处理模块读取到的IO输入信号与输出处理模块输出的外部输出信号不互相干扰,解决了单个IO口同时作为输入口和输出口使用时出现的IO口输入与输出信号互相干扰问题,而且本发明仅通过结构简单的输入处理模块和输出处理模块来实现,降低了设计成本。
附图说明
图1为本发明单IO口同时实现输入输出功能的装置较佳实施例的原理框图;
图2为本发明单IO口同时实现输入输出功能的装置较佳实施例的电路结构示意图;
图3为本发明单IO口同时实现输入输出功能的装置的实现方法较佳实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
以下结合说明书附图及具体实施例进一步说明本发明的技术方案。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提出一种单IO口同时实现输入输出功能的装置。
参照图1,图1为本发明单IO口同时实现输入输出功能的装置较佳实施例的原理框图。
本发明较佳实施例中,单IO口同时实现输入输出功能的装置包括信号输入端IN、微控制器100、输入处理模块200、输出处理模块300和信号输出端OUT。其中,输入处理模块200的输入端与信号输入端IN连接,输入处理模块200的输出端和输出处理模块300的输入端与微控制器100的同一IO口连接,输出处理模块300的输出端与信号输出端OUT连接。
外部电路(图未示)发送的外部输入信号Vin从信号输入端IN输入,输入处理模块200检测信号输入端IN输入的外部输入信号Vin,并向微控制器100的IO口输出与该外部输入信号Vin状态一致的IO输入信号VIOin,当微控制器100的IO口作为输入口,即微控制器100读取IO口输入状态时,微控制器100通过IO口读取IO输入信号VIOin,当微控制器100的IO口作为输出口时,微控制器100通过IO口输出IO输出信号VIOout,输出处理模块300检测IO输出信号VIOout,并输出与该IO输出信号VIOout状态一致的外部输出信号Vout,信号输出端OUT将输出处理模块300输出的与该IO输出信号VIOout状态一致的外部输出信号Vout向外部电路输出。
相对于现有技术,本发明的单IO口同时实现输入输出功能的装置,通过输入处理模块200和输出处理模块300的处理,输入处理模块200输出与信号输入端IN输入的外部输入信号Vin状态一致的IO输入信号VIOin,微控制器100的IO口作为输出口时,读取到与外部输入信号Vin状态一致的IO输入信号VIOin,微控制器100的IO口作为输出口时,输出处理模块300输出与微控制器100通过IO口输出IO输出信号VIOout状态一致的外部输出信号Vout。从而微控制器100的IO口在输入和输出功能转换过程中,微控制器100从输入处理模块200读取到的IO输入信号VIOin与输出处理模块300输出的外部输出信号Vout不互相干扰,解决了单个IO口同时作为输入口和输出口使用时出现的IO口输入与输出信号互相干扰问题,而且本发明通过输入处理模块200和输出处理模块300来实现,输入处理模块200和输出处理模块300的电路结构简单,从而易于实现,降低了设计成本。
具体地,输入处理模块200检测到外部输入信号Vin为高电平时,输入处理模块200输出高电平的IO输入信号VIOin;输入处理模块200检测到外部输入信号Vin为低电平时,输入处理模块200输出低电平的IO输入信号VIOin。确保了微控制器100的IO口作为输入口时,微控制器100读取到的IO输入信号VIOin与从信号输入端IN输入的外部输入信号Vin的状态一致,不受微控制器100的IO口作为输出口时输出的IO输出信号VIOout,以及输出处理模块300输出的外部输出信号Vout状态的干扰。
输出处理模块300检测到IO输出信号VIOout为高电平时,输出处理模块300输出高电平的外部输出信号Vout;输出处理模块300检测到IO输出信号VIOout为低电平时,输出处理模块300输出低电平的外部输出信号Vout。确保了微控制器100的IO口作为输出口时,输出处理模块300输出的外部输出信号Vout与微控制器100通过IO口输出的IO输出信号VIOout状态一致,不受从信号输入端IN输入的外部输入信号Vin与输入处理模块200输出的IO输入信号VIOin状态的干扰。
再参照图2,图2为本发明单IO口同时实现输入输出功能的装置较佳实施例的电路结构示意图。
如图2所示,输入处理模块200包括第一二极管D1、第一电阻R1和第二电阻R2。
第一二极管D1的阳极经由第一电阻R1与信号输入端IN连接,第一二极管D1的阴极与微控制器100的IO口连接,且经由第二电阻R2接地。
输出处理模块300包括第二二极管D2、电容C1、第三电阻R3和第四电阻R4。
第二二极管D2的阳极与微控制器100的IO口连接,且与第一二极管D1的阴极连接,第二二极管D2的阴极与电容C1的正极连接,且与第三电阻R3的一端连接;第三电阻R3的另一端与信号输出端OUT连接,且经由第四电阻R4接地,电容C1的负极接地。
具体地,电容C1的充电时间Tcin大于微控制器100读取IO口输入状态的时间Tin;电容C1的放电时间Tcout大于微控制器100读取IO口输入状态的时间Tin。
具体地,电容C1的充电时间Tcin的取值满足:
Tcin=1.1*R1*C1;
电容C1的放电时间Tcout的取值满足:
Tcout=1.1*(R3+R4)*C1;
其中,R1为第一电阻R1的阻值,R3为第三电阻R3的阻值,R4为第四电阻R4的阻值,C1为电容C1的电容量。
在本实施例中,电容C1的充电时间Tcin=1.1*R1*C1,从而电容C1的充电时间Tcin由第一电阻R1的阻值和电容C1的电容量决定,因此通过适当选取第一电阻R1的阻值和电容C1的电容量,可使得电容C1的充电时间Tcin大于微控制器100读取IO口输入状态的时间Tin,使得微控制器100的IO口在输入和输出功能转换过程中,微控制器100从输入处理模块200读取到的IO输入信号VIOin与输出处理模块300输出的外部输出信号Vout不互相干扰。例如微控制器100读取IO口输入状态的时间Tin=100μs,第一电阻R1的阻值选用10KΩ,电容C1的电容量选用10μF,则电容C1的充电时间Tcin=1.1*R1*C1=1.1*(10*103Ω)*(10*10-6F)=110ms>100μs。
同理,电容C1的放电时间Tcout=1.1*(R3+R4)*C1,从而电容C1的放电时间Tcout由第三电阻R3的阻值、第四电阻R4的阻值和电容C1的电容量决定,因此通过适当选取第三电阻R3的阻值、第四电阻R4的阻值和电容C1的电容量,可使得电容C1的放电时间Tcout大于微控制器100读取IO口输入状态的时间Tin,使得微控制器100的IO口在输入和输出功能转换过程中,微控制器100从输入处理模块200读取到的IO输入信号VIOin与输出处理模块300输出的外部输出信号Vout不互相干扰。例如微控制器100读取IO口输入状态的时间Tin=100μs,第三电阻R3的阻值选用10KΩ,第四电阻R4的阻值选用47KΩ,电容C1的电容量选用10μF,则电容C1的放电时间Tcout=1.1*(R3+R4)*C1=1.1*((10+47)*103Ω)*(10*10-6F)=627ms>100μs。
以上仅仅是对第一电阻R1、第三电阻R3、第四电阻R4和电容C1的取值的选取进行举例,但并不限制与上述取值,只要第一电阻R1、第三电阻R3、第四电阻R4和电容C1的取值满足电容C1的充电时间为Tcin大于微控制器100读取IO口输入状态的时间为Tin;电容C1的放电时间为Tcout大于微控制器100读取IO口输入状态的时间为Tin。
本发明单IO口同时实现输入输出功能的装置的工作原理具体描述如下:
如图2所示,从信号输入端IN输入的外部输入信号Vin有高电平和低电平两种电平状态,微控制器100的IO口输出的IO输出信号VIOout也有高电平和低电平两种电平状态,从而微控制器100工作过程中,IO口的输入与输出状态有如下四种情况:
(1)在信号输入端IN输入的外部输入信号Vin为高电平,IO口输出的IO输出信号VIOout为高电平情况下。
当微控制器100的IO口作为输入口时,由于外部输入信号Vin为高电平,因此第一二极管D1导通,高电平的外部输入信号Vin经过第一电阻R1、第一二极管D1后输出的IO输入信号VIOin为高电平,从而在外部输入信号Vin为高电平时,微控制器100读取IO口的输入状态所读取到的IO输入信号VIOin为高电平。同时,在微控制器100的IO口作为输出口时,由于第二二极管D2反向隔离作用,IO输入信号VIOin没有被外部输出信号Vout干扰。
当微控制器100的IO口作为输出口时,由于IO口输出的IO输出信号VIOout为高电平,因此第二二极管D2导通,该高电平的IO输出信号VIOout经过第二二极管D2、第三电阻R3后输出的外部输出信号Vout为高电平,此时通过信号输出端OUT输出的外部输出信号Vout为高电平;而且由于外部输入信号Vin为高电平,高电平的外部输入信号Vin经过第一电阻R1、第一二极管D1后输出的IO输入信号VIOin为高电平,此时IO输入信号VIOin再经过第二二极管D2、第三电阻R3后,通过信号输出端OUT输出的外部输出信号Vout仍为高电平;从而在IO口输出的IO输出信号VIOout为高电平时,信号输出端OUT输出高电平的外部输出信号Vout。同时,在IO口作为输入口时,电容C1通过第三电阻R3和第四电阻R4放电,根据电容C1两端的电压不能突变原理,电容C1上的电压缓慢降低,而且由于电容C1的放电时间Tcout大于微控制器100读取IO口输入状态的时间Tin,因此在IO口处于输入状态期间,信号输出端OUT输出的外部输出信号Vout仍为高电平,从而保证在IO口作为输入口时,信号输出端OUT稳定输出高电平的外部输出信号Vout,没有受到外部输入信号Vin的干扰。
(2)在信号输入端IN输入的外部输入信号Vin为高电平,IO口输出的IO输出信号VIOout为低电平情况下。
当微控制器100的IO口作为输入口时,由于外部输入信号Vin为高电平,因此第一二极管D1导通,高电平的外部输入信号Vin经过第一电阻R1、第一二极管D1后输出的IO输入信号VIOin为高电平,从而在外部输入信号Vin为高电平时,微控制器100读取IO口的输入状态所读取到的IO输入信号VIOin为高电平。同时,在微控制器100的IO口作为输出口时,由于第二二极管D2反向隔离作用,IO输入信号VIOin没有被外部输出信号Vout干扰。
当微控制器100的IO口作为输出口时,由于IO口输出的IO输出信号VIOout为低电平,因此第二二极管D2截止,此时电容C1通过第三电阻R3和第四电阻R4放电,电容C1上一直为低电平,而且由于第四电阻R4的下拉作用,此时通过信号输出端OUT输出的外部输出信号Vout为低电平,从而在IO口输出的IO输出信号VIOout为低电平时,信号输出端OUT输出低电平的外部输出信号Vout。同时,在IO口作为输入口时,由于外部输入信号Vin为高电平,外部输入信号Vin通过第一电阻R1、第一二极管D1、第二二极管D2给电容C1充电,根据电容C1两端的电压不能突变原理,电容C1上的电压缓慢升高,而且由于电容C1的充电时间Tcin大于微控制器100读取IO口输入状态的时间Tin,因此在IO口处于输入状态期间,信号输出端OUT输出的外部输出信号Vout仍为低电平,从而保证在IO口作为输入口时,信号输出端OUT稳定输出低电平的外部输出信号Vout,没有受到外部输入信号Vin的干扰。
(3)在信号输入端IN输入的外部输入信号Vin为低电平,IO口输出的IO输出信号VIOout为高电平情况下。
当微控制器100的IO口作为输入口时,由于外部输入信号Vin为低电平,因此第一二极管D1截止,此时由于第二电阻R2的下拉作用,输入到IO口上的IO输入信号VIOin为低电平,从而在外部输入信号Vin为低电平时,微控制器100读取IO口的输入状态所读取到的IO输入信号VIOin为低电平。同时,在IO口作为输出口时,由于第二二极管D2反向隔离作用,IO输入信号VIOin没有被外部输出信号Vout干扰。
当微控制器100的IO口作为输出口时,由于IO口输出的IO输出信号VIOout为高电平,因此第二二极管D2导通,该高电平的IO输出信号VIOout经过第二二极管D2、第三电阻R3后输出的外部输出信号Vout为高电平,此时通过信号输出端OUT输出的外部输出信号Vout为高电平,从而在IO口输出的IO输出信号VIOout为高电平时,信号输出端OUT稳定输出高电平的外部输出信号Vout。同时,在IO口作为输入口时,由于电容C1通过第三电阻R3和第四电阻R4放电,根据电容C1两端的电压不能突变原理,电容C1上的电压缓慢降低,而且由于电容C1的放电时间Tcout大于微控制器100读取IO口输入状态的时间Tin,因此在IO口处于输入状态期间,信号输出端OUT输出的外部输出信号Vout仍为高电平,从而保证在IO口作为输入口时,信号输出端OUT稳定输出高电平的外部输出信号Vout,没有受到外部输入信号Vin的干扰。
(4)在信号输入端IN输入的外部输入信号Vin为低电平,IO口输出的IO输出信号VIOout为低电平情况下。
当微控制器100的IO口作为输入口时,由于外部输入信号Vin为低电平,因此第一二极管D1截止,此时由于第二电阻R2的下拉作用,输入到IO口上的IO输入信号VIOin为低电平,从而在外部输入信号Vin为低电平时,微控制器100读取IO口的输入状态所读取到的IO输入信号VIOin为低电平。
当微控制器100的IO口作为输出口时,由于IO口输出的IO输出信号VIOout为低电平,因此第二二极管D2截止,此时由于第四电阻R4的下拉作用,通过信号输出端OUT输出的外部输出信号Vout为低电平,从而在IO口输出的IO输出信号VIOout为低电平时,信号输出端OUT稳定输出低电平的外部输出信号Vout。
综上可知,微控制器100的IO口作为输入口时,微控制器100读取到的IO输入信号VIOin的电平状态与从信号输入端IN输入的外部输入信号Vin的电平状态一致,微控制器100的IO口作为输出口时,从信号输出端OUT输出的外部输出信号Vout的电平状态与微控制器100通过IO口输出的IO输出信号VIOout的电平状态一致,都没有因IO口处于输入状态或者输出状态而受到干扰。
本发明还提出一种单IO口同时实现输入输出功能的装置的实现方法。
结合参照图1至图3,其中图3为本发明单IO口同时实现输入输出功能的装置的实现方法较佳实施例的流程示意图。
如图3所示,本发明较佳实施例中,单IO口同时实现输入输出功能的装置的实现方法包括如下步骤:
步骤S10:输入处理模块检测信号输入端输入的外部输入信号,并向微控制器的IO口输出与该外部输入信号状态一致的IO输入信号;
步骤S20:将微控制器的IO口作为输入口,所述微控制器通过所述IO口读取所述IO输入信号;
步骤S30:将微控制器的IO口作为输出口,所述微控制器通过所述IO口输出IO输出信号;
步骤S40:输出处理模块检测所述IO输出信号,并输出与该IO输出信号状态一致的外部输出信号,通过信号输出端将与所述IO输出信号状态一致的外部输出信号向外部电路输出。
如图1至图3所示,若微控制器100通过IO口循环地读取IO输入信号VIOin和输出IO输出信号VIOout,则上述步骤将循环执行,直至若微控制器100停止读取IO输入信号VIOin和输出IO输出信号VIOout。此外上述步骤流程以微控制器100的IO口先作为输入口,再作为输出口为例,描述本发明的实现方法,由于本发明的实现方法在微控制器100的IO口作为输入口,微控制器100通过IO口读取IO输入信号VIOin的过程,与微控制器100的IO口作为输出口,输出处理模块300通过信号输出端OUT将外部输出信号Vout输出的过程不互相干扰,因此上述步骤中,也可先执行步骤S30和步骤S40,再执行步骤S10和步骤S20。
相对于现有技术,本发明的单IO口同时实现输入输出功能的装置的实现方法,首先通过输入处理模块200检测信号输入端IN输入的外部输入信号Vin,并向微控制器100的IO口输出与该外部输入信号Vin状态一致的IO输入信号VIOin,将微控制器100的IO口作为输入口,微控制器100通过IO口读取输入处理模块200输出的IO输入信号VIOin,再将IO口作为输出口,微控制器100通过IO口输出IO输出信号VIOout,然后输出处理模块300检测该IO输出信号VIOout,并通过信号输出端OUT输出与该IO输出信号VIOout状态一致的外部输出信号Vout。从而微控制器100的IO口在输入和输出功能转换过程中,微控制器100从输入处理模块200读取到的IO输入信号VIOin与输出处理模块300输出的外部输出信号Vout不互相干扰,解决了单个IO口同时作为输入口和输出口使用时出现的IO口输入与输出信号互相干扰问题,而且本发明仅通过结构简单的输入处理模块200和输出处理模块300来实现,降低了设计成本。
具体地,步骤S10具体为:
输入处理模块200检测到外部输入信号Vin为高电平时,输入处理模块200输出高电平的IO输入信号VIOin;输入处理模块200检测到外部输入信号Vin为低电平时,输入处理模块200输出低电平的IO输入信号VIOin。
确保了微控制器100的IO口作为输入口时,微控制器100读取到的IO输入信号VIOin与从信号输入端IN输入的外部输入信号Vin的状态一致,不受微控制器100的IO口作为输出口时输出的IO输出信号VIOout,以及输出处理模块300输出的外部输出信号Vout状态的干扰。
优选地,步骤S40具体为:
输出处理模块300检测到IO输出信号VIOout为高电平时,输出处理模块300输出高电平的外部输出信号Vout;输出处理模块300检测到IO输出信号VIOout为低电平时,输出处理模块300输出低电平的外部输出信号Vout。
确保了微控制器100的IO口作为输出口时,输出处理模块300输出的外部输出信号Vout与微控制器100通过IO口输出的IO输出信号VIOout状态一致,不受从信号输入端IN输入的外部输入信号Vin与输入处理模块200输出的IO输入信号VIOin状态的干扰。
本发明提出的单IO口同时实现输入输出功能的装置的实现方法,首先通过输入处理模块200检测信号输入端IN输入的外部输入信号Vin,并向微控制器100的IO口输出与该外部输入信号Vin状态一致的IO输入信号VIOin,将微控制器100的IO口作为输入口,微控制器100通过IO口读取输入处理模块200输出的IO输入信号VIOin,再将IO口作为输出口,微控制器100通过IO口输出IO输出信号VIOout,然后输出处理模块300检测该IO输出信号VIOout,并通过信号输出端OUT输出与该IO输出信号VIOout状态一致的外部输出信号Vout。从而微控制器100的IO口在输入和输出功能转换过程中,微控制器100从输入处理模块200读取到的IO输入信号VIOin与输出处理模块300输出的外部输出信号Vout不互相干扰,解决了单个IO口同时作为输入口和输出口使用时出现的IO口输入与输出信号互相干扰问题,而且本发明仅通过结构简单的输入处理模块200和输出处理模块300来实现,降低了设计成本。
从而,微控制器100的IO口作为输入口时,微控制器100读取到的IO输入信号VIOin的电平状态与从信号输入端IN输入的外部输入信号Vin的电平状态一致,微控制器100的IO口作为输出口时,从信号输出端OUT输出的外部输出信号Vout的电平状态与微控制器100通过IO口输出的IO输出信号VIOout的电平状态一致,都没有因IO口处于输入状态或者输出状态而受到干扰。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种单IO口同时实现输入输出功能的装置,其特征在于,包括:
信号输入端,用于供外部输入信号输入;
微控制器,所述微控制器的IO口作为输入口时,所述微控制器通过所述IO口读取IO输入信号,所述微控制器的IO口作为输出口时,所述微控制器通过所述IO口输出IO输出信号;
输入处理模块,用于检测所述信号输入端输入的外部输入信号,并向所述微控制器的IO口输出与该外部输入信号状态一致的IO输入信号;
输出处理模块,用于检测所述IO输出信号,并输出与该IO输出信号状态一致的外部输出信号;以及
信号输出端,用于将与所述IO输出信号状态一致的外部输出信号向外部电路输出;其中,
所述输入处理模块的输入端与所述信号输入端连接,所述输入处理模块的输出端和所述输出处理模块的输入端与所述微控制器的同一IO口连接,所述输出处理模块的输出端与所述信号输出端连接。
2.如权利要求1所述的装置,其特征在于,所述输入处理模块检测到所述外部输入信号为高电平时,所述输入处理模块输出高电平的IO输入信号;所述输入处理模块检测到所述外部输入信号为低电平时,所述输入处理模块输出低电平的IO输入信号。
3.如权利要求1所述的装置,其特征在于,所述输出处理模块检测到所述IO输出信号为高电平时,所述输出处理模块输出高电平的外部输出信号;所述输出处理模块检测到所述IO输出信号为低电平时,所述输出处理模块输出低电平的外部输出信号。
4.如权利要求1所述的装置,其特征在于,所述输入处理模块包括第一二极管、第一电阻和第二电阻;
所述第一二极管的阳极经由所述第一电阻与所述信号输入端连接,所述第一二极管的阴极与所述微控制器的IO口连接,且经由所述第二电阻接地。
5.如权利要求4所述的装置,其特征在于,所述输出处理模块包括第二二极管、一电容、第三电阻和第四电阻;
所述第二二极管的阳极与所述微控制器的IO口连接,且与所述第一二极管的阴极连接,所述第二二极管的阴极与所述电容的正极连接,且与所述第三电阻的一端连接;所述第三电阻的另一端与所述信号输出端连接,且经由所述第四电阻接地,所述电容的负极接地。
6.如权利要求5所述的装置,其特征在于,所述电容的充电时间Tcin大于所述微控制器读取IO口输入状态的时间Tin;所述电容的放电时间Tcout大于所述微控制器读取IO口输入状态的时间Tin。
7.如权利要求6所述的装置,其特征在于,所述Tcin的取值满足:
Tcin=1.1*R1*C1;
所述Tcout的取值满足:
Tcout=1.1*(R3+R4)*C1;
其中,R1为第一电阻的阻值,R3为第三电阻的阻值,R4为第四电阻的阻值,C1为电容的电容量。
8.一种单IO口同时实现输入输出功能的装置的实现方法,其特征在于,包括如下步骤:
输入处理模块检测信号输入端输入的外部输入信号,并向微控制器的IO口输出与该外部输入信号状态一致的IO输入信号;
将微控制器的IO口作为输入口,所述微控制器通过所述IO口读取所述IO输入信号;
将微控制器的IO口作为输出口,所述微控制器通过所述IO口输出IO输出信号;
输出处理模块检测所述IO输出信号,并输出与该IO输出信号状态一致的外部输出信号,通过信号输出端将与所述IO输出信号状态一致的外部输出信号向外部电路输出。
9.如权利要求8所述的实现方法,其特征在于,所述输入处理模块检测信号输入端输入的外部输入信号,并向微控制器的IO口输出与该外部输入信号状态一致的IO输入信号具体为:
所述输入处理模块检测到所述外部输入信号为高电平时,所述输入处理模块输出高电平的IO输入信号;所述输入处理模块检测到所述外部输入信号为低电平时,所述输入处理模块输出低电平的IO输入信号。
10.如权利要求8所述的实现方法,其特征在于,所述输出处理模块检测所述IO输出信号,并输出与该IO输出信号状态一致的外部输出信号具体为:
所述输出处理模块检测到所述IO输出信号为高电平时,所述输出处理模块输出高电平的外部输出信号;所述输出处理模块检测到所述IO输出信号为低电平时,所述输出处理模块输出低电平的外部输出信号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310586896.1A CN104242901A (zh) | 2013-11-19 | 2013-11-19 | 单io口同时实现输入输出功能的装置及其实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310586896.1A CN104242901A (zh) | 2013-11-19 | 2013-11-19 | 单io口同时实现输入输出功能的装置及其实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104242901A true CN104242901A (zh) | 2014-12-24 |
Family
ID=52230370
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310586896.1A Pending CN104242901A (zh) | 2013-11-19 | 2013-11-19 | 单io口同时实现输入输出功能的装置及其实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104242901A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105786638A (zh) * | 2016-03-22 | 2016-07-20 | 江苏友奥电器有限公司 | 一种掉电记忆电控板 |
CN106773854A (zh) * | 2016-12-22 | 2017-05-31 | 南京熊猫电子股份有限公司 | 一种用于机器人的多功能io模块 |
CN115494764A (zh) * | 2022-09-14 | 2022-12-20 | 深圳市汇川技术股份有限公司 | Io功能复用电路及方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0358501A2 (en) * | 1988-09-08 | 1990-03-14 | Kawasaki Steel Corporation | Programmable input/output circuit |
EP0456400A2 (en) * | 1990-05-11 | 1991-11-13 | Actel Corporation | Input/output module with latches |
CN101510096A (zh) * | 2009-03-09 | 2009-08-19 | 三一重工股份有限公司 | 端口复用及故障检测电路及具有该电路的智能模块 |
CN201540566U (zh) * | 2009-11-05 | 2010-08-04 | 上海德科电子仪表有限公司 | 端口复用电路 |
CN102497197A (zh) * | 2011-12-28 | 2012-06-13 | 中冶南方(武汉)自动化有限公司 | 带隔离双向数字输入输出电路 |
CN202696575U (zh) * | 2012-07-05 | 2013-01-23 | 无锡艾美博特汽车电子设备有限公司 | 有效电平自适应装置 |
CN103297032A (zh) * | 2013-05-31 | 2013-09-11 | 成都锐奕信息技术有限公司 | 复用接口的防倒灌电路 |
-
2013
- 2013-11-19 CN CN201310586896.1A patent/CN104242901A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0358501A2 (en) * | 1988-09-08 | 1990-03-14 | Kawasaki Steel Corporation | Programmable input/output circuit |
EP0456400A2 (en) * | 1990-05-11 | 1991-11-13 | Actel Corporation | Input/output module with latches |
CN101510096A (zh) * | 2009-03-09 | 2009-08-19 | 三一重工股份有限公司 | 端口复用及故障检测电路及具有该电路的智能模块 |
CN201540566U (zh) * | 2009-11-05 | 2010-08-04 | 上海德科电子仪表有限公司 | 端口复用电路 |
CN102497197A (zh) * | 2011-12-28 | 2012-06-13 | 中冶南方(武汉)自动化有限公司 | 带隔离双向数字输入输出电路 |
CN202696575U (zh) * | 2012-07-05 | 2013-01-23 | 无锡艾美博特汽车电子设备有限公司 | 有效电平自适应装置 |
CN103297032A (zh) * | 2013-05-31 | 2013-09-11 | 成都锐奕信息技术有限公司 | 复用接口的防倒灌电路 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105786638A (zh) * | 2016-03-22 | 2016-07-20 | 江苏友奥电器有限公司 | 一种掉电记忆电控板 |
CN106773854A (zh) * | 2016-12-22 | 2017-05-31 | 南京熊猫电子股份有限公司 | 一种用于机器人的多功能io模块 |
CN115494764A (zh) * | 2022-09-14 | 2022-12-20 | 深圳市汇川技术股份有限公司 | Io功能复用电路及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103475341B (zh) | 时钟信号生成方法及生成电路、栅极驱动电路 | |
CN103066972B (zh) | 一种带有全局使能脉冲控制自动复位功能的上电复位电路 | |
CN107589340B (zh) | 负载插入的检测电路及插接端口和电器 | |
CN204465489U (zh) | 一种新型低压上电复位电路 | |
CN108832595B (zh) | 一种具有动态滤波功能的欠压锁定电路 | |
CN101425031B (zh) | 多电压准位检测电路 | |
CN110928823A (zh) | 一种电平转换电路 | |
CN104242901A (zh) | 单io口同时实现输入输出功能的装置及其实现方法 | |
CN206672033U (zh) | 一种复位电路 | |
CN107544300A (zh) | 一种接口处理装置及其控制方法 | |
CN102769450A (zh) | 电源起始重置电路 | |
CN102237675B (zh) | 电子装置 | |
CN107222213B (zh) | 一种基于单片机技术的模数转换器 | |
CN106547332B (zh) | 电源启动重置电路、电源启动重置方法及其电子装置 | |
CN104205650A (zh) | 基于反相器和开关电容器的静噪检测器装置和方法 | |
CN103856207A (zh) | 电平转换电路和电平转换方法 | |
CN107562671B (zh) | 通讯总线供电电路 | |
CN115453404A (zh) | 电源电压差检测电路、芯片、电子部件及电子设备 | |
US9075590B2 (en) | Voltage identification definition reference voltage generation circuit and boot voltage generating method thereof | |
CN203086437U (zh) | 电平转换电路 | |
CN204119195U (zh) | 一种抗干扰复位电路 | |
CN109684762B (zh) | 芯片及其引脚的设置电路 | |
CN217037163U (zh) | 电平转换电路 | |
CN104467799A (zh) | 输入输出电路装置 | |
CN110992866A (zh) | 显示面板的驱动电路和电子设备的逻辑电路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 518057, Shenzhen Province, Nanshan District hi tech Zone, Guangdong hi tech Zone, No. 9, building 8, East Applicant after: BANGYAN TECHNOLOGY CO., LTD. Address before: 518057, Shenzhen Province, Nanshan District hi tech Zone, Guangdong hi tech Zone, No. 9, building 8, East Applicant before: Shenzhen Bangyan Information Technology Co., Ltd. |
|
COR | Change of bibliographic data | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20141224 |
|
RJ01 | Rejection of invention patent application after publication |