CN110334042A - 由mcu的i/0口识别四种端口状态及区分外设种类的方法 - Google Patents
由mcu的i/0口识别四种端口状态及区分外设种类的方法 Download PDFInfo
- Publication number
- CN110334042A CN110334042A CN201910571538.0A CN201910571538A CN110334042A CN 110334042 A CN110334042 A CN 110334042A CN 201910571538 A CN201910571538 A CN 201910571538A CN 110334042 A CN110334042 A CN 110334042A
- Authority
- CN
- China
- Prior art keywords
- port
- switch
- state
- mouth
- mcu
- 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
- 230000002093 peripheral effect Effects 0.000 title claims abstract description 31
- 238000000034 method Methods 0.000 title claims abstract description 26
- 230000004069 differentiation Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microcomputers (AREA)
Abstract
本发明提供一种由MCU的I/0口识别四种端口状态及区分外设种类的方法,四种端口状态分别为:状态一:直接接逻辑高电平端口;状态二:直接接逻接地的端口;状态三:带上拉电阻的端口;状态四:带下拉电阻的端口。识别四种端口状态的方法为:由单片机MCU的一个I/O口进行识别,单片机芯片内部的I/O口受程序指令控制能够设定浮空输入:开关K1、开关K2断开,上拉输入:开关K1闭合、开关K2断开,下拉输入:开关K1断开、开关K2闭合,三种模式。利用MCU的I/0口识别四种端口状态并用其对外设种类进行区分,可以识别2的N+1次方个外设(N为MCUI/O口的数量),可以降低成本,尤其是增加外设或新的供应商器件扩容时,可以在不改变硬件结构的前提下实现。
Description
技术领域
本发明涉及电子产品控制技术领域,特别涉及一种由MCU的I/0口识别四种端口状态及区分外设种类的方法。
背景技术
在电子产品设计应用中,mcu一般都带有多个外设或者mcu兼容多家供应商的器件外设(每家器件外设都需要识别,并配有不同的初始化设置),需要MCU读取地址码,进行软件识别区分,然后配置不同的初始化程序,保证整机产品可以兼容多家供应商的器件产品。
如果将端口的状态的不同设置为设备的地址码,即简单又方便。但是,一般地,MCU一个I/O口只能识别2种状态,也就是可以识别2的N次方个外设(N为MCU配备的I/O口数量),在I/O口的数量有限或硬件设计已经完成,需要多配置增加供应商器件的数量情况下,就会出现困难,地址码重叠,增加管理难度。本发明利用MCU的I/O口的不同输入模式变换,可以实现单个I/O口识别四种状态,可以使I/O口的利用率提高1倍,就是可以识别2的N+1次方个外设(N为MCUI/O口的数量)。可以使I/O口的利用率提高一倍,可以降低成本,尤其是增加外设或新的供应商器件扩容时,可以在不改变硬件结构的前提下实现。
发明内容
为了解决背景技术中所述问题,本发明提供一种由MCU的I/0口识别四种端口状态及区分外设种类的方法,利用MCU的I/0口识别四种端口状态并用其对外设种类进行区分,可以识别2的N+1次方个外设(N为MCUI/O口的数量),可以降低成本,尤其是增加外设或新的供应商器件扩容时,可以在不改变硬件结构的前提下实现。
为了达到上述目的,本发明采用以下技术方案实现:
一种由MCU的I/0口识别四种端口状态的方法,所述的四种端口状态分别为:状态一:直接接逻辑高电平端口;状态二:直接接逻接地的端口;状态三:带上拉电阻的端口;状态四:带下拉电阻的端口。
所述的识别四种端口状态的方法为:由单片机MCU的一个I/O口进行识别,单片机芯片内部的I/O口受程序指令控制能够设定浮空输入:开关K1、开关K2断开,上拉输入:开关K1闭合、开关K2断开,下拉输入:开关K1断开、开关K2闭合,三种模式;其中:开关K1、开关K2为单片机内部的I/O口软件设置开关。
包括如下步骤:
步骤一、单片机MCU的I/O口的开关K1、开关K2断开,浮空输入读取I/O状态;
步骤二、读取I/O状态为高电平时,转入步骤三;读取I/O状态为低电平时,转入步骤四;
步骤三、开关K1断开、开关K2闭合,下拉输入模式,读取端口状态,当读取为高电平时端口为状态一,当读取为低电平时,端口为状态三;
步骤四、开关K1闭合、开关K2断开,上拉输入模式,读取端口状态,当读取为高电平时端口为状态四,当读取为低电平时,端口为状态二。
单片机MCU的I/O口的内部弱上拉和弱下拉电阻均设定为4.7K欧姆。
四种端口的电路分别为:
端口一电路:直接接逻辑高电平端口,直接接到逻辑高电平;
端口二电路:直接接逻辑地,直接接地;
端口三电路:带上拉电阻的端口,经串联上拉电阻后接到逻辑高电平;
端口四电路:带下拉电阻的端口,经串联下拉电阻后接地。
采用权利要求1所述的由MCU的I/0口识别四种端口状态的方法对MCU外设种类进行区分的方法,包括:
1)对单片机MCU的不同供应商的外设端口进行不同的端口状态种类约定,所述的端口
状态种类包括所述的状态一至状态四;
2)通过单片机MCU对不同的端口状态的判断,从而区分外设的供应商种类,最大能够识别2(N+1)个外设,N为单片机MCU的I/O口的数量。
与现有技术相比,本发明的有益效果是:
本发明利用MCU的I/0口识别四种端口状态并用其对外设种类进行区分,可以识别2的N+1次方个外设(N为MCUI/O口的数量),可以降低成本,尤其是增加外设或新的供应商器件扩容时,可以在不改变硬件结构的前提下实现。
附图说明
图1为本发明的四种端口状态电路图;
图2为本发明的单片机MCU的一个I/O口内部图;
图3为本发明的识别四种端口状态的方法流程图。
其中:1-单片机MCU的一个I/O口 2-端口状态一 3-端口状态二 4-端口状态三 5-端口状态四。
具体实施方式
以下结合附图对本发明提供的具体实施方式进行详细说明。
一种由MCU的I/0口识别四种端口状态的方法,所述的四种端口状态分别为:状态一:直接接逻辑高电平端口;状态二:直接接逻接地的端口;状态三:带上拉电阻的端口;状态四:带下拉电阻的端口。
如图1所示,外部电路可以有四种状态接法。状态1:直接接逻辑高电平3.3v端口(2),所述的(2)直接接到逻辑高电平(这里以3.3V为例);状态2:直接接逻辑地(3),直接接地。状态3:带500K上拉电阻的端口(4),带500K的上拉电阻(以500K为例);状态4:带500K下拉电阻的端口(5),带500K的下拉电阻(以500K为例)。
所述的识别四种端口状态的方法为:由单片机MCU的一个I/O口进行识别,单片机芯片内部的I/O口受程序指令控制能够设定浮空输入:开关K1、开关K2断开,上拉输入:开关K1闭合、开关K2断开,下拉输入:开关K1断开、开关K2闭合,三种模式。
如图2所示,一个带弱上拉,弱下拉电阻控制的MCU I/O端口(1),所述MCU I/O端口(1)是常用的普通单片机的一个I/O口,受程序指令控制可以设定浮空输入,上拉输入,下拉输入三种模式,其中:开关K1、开关K2为单片机内部的I/O口软件设置开关;内部弱上拉电阻设定为4.7K欧姆。
如图3所示,识别四种端口状态的方法包括如下步骤:
步骤一、单片机MCU的I/O口的开关K1、开关K2断开,浮空输入读取I/O状态;
步骤二、读取I/O状态为高电平时,转入步骤三;读取I/O状态为低电平时,转入步骤四;
步骤三、开关K1断开、开关K2闭合,下拉输入模式,读取端口状态,当读取为高电平时端口为状态一,当读取为低电平时,端口为状态三;
步骤四、开关K1闭合、开关K2断开,上拉输入模式,读取端口状态,当读取为高电平时端口为状态四,当读取为低电平时,端口为状态二。
采用由MCU的I/0口识别四种端口状态的方法对MCU外设种类进行区分的方法,包括:
1)对单片机MCU的不同供应商的外设端口进行不同的端口状态种类约定,所述的端口状态种类包括所述的状态一至状态四;
2)通过单片机MCU对不同的端口状态的判断,从而区分外设的供应商种类,最大能够识别2(N+1)个外设,N为单片机MCU的I/O口的数量。
以上实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于上述的实施例。上述实施例中所用方法如无特别说明均为常规方法。
Claims (4)
1.一种由MCU的I/0口识别四种端口状态的方法,其特征在于,所述的四种端口状态分别为:状态一:直接接逻辑高电平端口;状态二:直接接逻接地的端口;状态三:带上拉电阻的端口;状态四:带下拉电阻的端口;
所述的识别四种端口状态的方法为:由单片机MCU的一个I/O口进行识别,单片机芯片内部的I/O口受程序指令控制能够设定:浮空输入:开关K1、开关K2断开,上拉输入:开关K1闭合、开关K2断开,下拉输入:开关K1断开、开关K2闭合,三种模式;其中:开关K1、开关K2为单片机内部的I/O口软件设置开关;
包括如下步骤:
步骤一、单片机MCU的I/O口的开关K1、开关K2断开,浮空输入读取I/O状态;
步骤二、读取I/O状态为高电平时,转入步骤三;读取I/O状态为低电平时,转入步骤四;
步骤三、开关K1断开、开关K2闭合,下拉输入模式,读取端口状态,当读取为高电平时端口为状态一,当读取为低电平时,端口为状态三;
步骤四、开关K1闭合、开关K2断开,上拉输入模式,读取端口状态,当读取为高电平时端口为状态四,当读取为低电平时,端口为状态二。
2.根据权利要求1所述的一种由MCU的I/0口识别四种端口状态的方法,其特征在于,单片机MCU的I/O口的内部弱上拉和弱下拉电阻均设定为4.7K欧姆。
3.根据权利要求1所述的由MCU的I/0口可以识别的四种端口电路的端口状态识别方法,其特征在于,四种端口的电路分别为:
端口一电路:直接接逻辑高电平端口,直接接到逻辑高电平;
端口二电路:直接接逻辑地,直接接地;
端口三电路:带上拉电阻的端口,经串联上拉电阻后接到逻辑高电平;
端口四电路:带下拉电阻的端口,经串联下拉电阻后接地。
4.采用权利要求1所述的由MCU的I/0口识别四种端口状态的方法对MCU外设种类进行区分的方法,其特征在于,包括:
1)对单片机MCU的不同供应商的外设端口进行不同的端口状态种类约定,所述的端口状态种类包括所述的状态一至状态四;
2)通过单片机MCU对不同的端口状态的判断,从而区分外设的供应商种类;最大能够识别2(N+1)个外设,N为单片机MCU的I/O口的数量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910571538.0A CN110334042A (zh) | 2019-06-28 | 2019-06-28 | 由mcu的i/0口识别四种端口状态及区分外设种类的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910571538.0A CN110334042A (zh) | 2019-06-28 | 2019-06-28 | 由mcu的i/0口识别四种端口状态及区分外设种类的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110334042A true CN110334042A (zh) | 2019-10-15 |
Family
ID=68144630
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910571538.0A Pending CN110334042A (zh) | 2019-06-28 | 2019-06-28 | 由mcu的i/0口识别四种端口状态及区分外设种类的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110334042A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111929570A (zh) * | 2020-10-12 | 2020-11-13 | 上海海栎创微电子有限公司 | 状态检测电路及控制检测方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007198927A (ja) * | 2006-01-27 | 2007-08-09 | Calsonic Kansei Corp | 抵抗検査方法 |
CN106556752A (zh) * | 2015-09-25 | 2017-04-05 | 鸿富锦精密工业(武汉)有限公司 | Gpio接口侦测电路 |
CN206932211U (zh) * | 2017-06-13 | 2018-01-26 | 龙芯中科技术有限公司 | 一种上下拉状态配置电路 |
CN109002410A (zh) * | 2018-07-02 | 2018-12-14 | 广州视源电子科技股份有限公司 | 一种gpio口的检测方法 |
CN109753470A (zh) * | 2019-01-16 | 2019-05-14 | Oppo广东移动通信有限公司 | 一种控制方法、微控制单元及计算机存储介质 |
-
2019
- 2019-06-28 CN CN201910571538.0A patent/CN110334042A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007198927A (ja) * | 2006-01-27 | 2007-08-09 | Calsonic Kansei Corp | 抵抗検査方法 |
CN106556752A (zh) * | 2015-09-25 | 2017-04-05 | 鸿富锦精密工业(武汉)有限公司 | Gpio接口侦测电路 |
CN206932211U (zh) * | 2017-06-13 | 2018-01-26 | 龙芯中科技术有限公司 | 一种上下拉状态配置电路 |
CN109002410A (zh) * | 2018-07-02 | 2018-12-14 | 广州视源电子科技股份有限公司 | 一种gpio口的检测方法 |
CN109753470A (zh) * | 2019-01-16 | 2019-05-14 | Oppo广东移动通信有限公司 | 一种控制方法、微控制单元及计算机存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111929570A (zh) * | 2020-10-12 | 2020-11-13 | 上海海栎创微电子有限公司 | 状态检测电路及控制检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN207473599U (zh) | 一种i2c总线控制接口电路 | |
CN204557471U (zh) | 一种新型usb转uart串行通信电路 | |
CN110162496A (zh) | 一种基于中央处理器实现pcie端口自动配置的方法 | |
CN110334042A (zh) | 由mcu的i/0口识别四种端口状态及区分外设种类的方法 | |
CN105892394A (zh) | 用于制冷系统的带冗余数字温度传感器总线控制器 | |
US20120137031A1 (en) | Communication bus with shared pin set | |
CN107305526A (zh) | 一种用于微控制器的调试器 | |
CN205721745U (zh) | 内置蓝牙固件升级电路、装置及数字对讲机 | |
CN201607723U (zh) | 存储器写保护电路 | |
CN102761624B (zh) | 一种调试网口出面板的方法、装置 | |
CN207704429U (zh) | 一种切换电路及终端设备 | |
CN106502911A (zh) | 多终端接入装置 | |
CN201130374Y (zh) | 自动识别连接串口或通用串行总线架构接口的装置 | |
CN204680008U (zh) | 一种具有id识别功能的spi总线扩展电路 | |
CN205038645U (zh) | 一种具有指纹认证功能的电表 | |
CN107608927A (zh) | 一种支持全功能的lpc总线主机端口的设计方法 | |
CN107168923A (zh) | 一种配置多个fpga的装置及方法 | |
CN207939526U (zh) | 一种新型网络通信电路 | |
CN105955205A (zh) | 运动模拟器嵌入式实时控制系统 | |
CN208172785U (zh) | 一种串口通讯控制装置 | |
CN102642209B (zh) | 一种七自由度力反馈手控器测控系统 | |
CN205450193U (zh) | 一种信号环路检测电路 | |
CN206878851U (zh) | 一种工业以太网通信控制器 | |
CN208335000U (zh) | 基于可编程逻辑控制器单通道多间断的电子凸轮控制器 | |
CN105630120A (zh) | 一种加载处理器硬件配置字的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191015 |
|
RJ01 | Rejection of invention patent application after publication |