单片机的IO口输入输出是相对什么讲的

输出是从IO口往外输出东西吗,这个东西就是1或0吧?输出1的话,就是把IO口的电压弄大到一定值,输出为0就是把IO口的电压值降到一定小的值是这样的吗?但是他IO口的值不是还受IO口上连接的东西的影响吗,那么是不是IO上接的东西不一样给IO口在输出为高或低状态的数值也是不一样的
还有输入又是怎么一回事?麻烦大神了

I/O口即通用输出输出口,I/O口只能出入或者输出0和1,0对应低电平,1对应高电平,如果是3.3V系统,高电平就为3.3,如果为5V,那高电平就为5V,低电平为0V。如果做输出口的话,就是单片机通过软件置位相关寄存器让端口置高电平或低电平,达到电平输出的目的,如果做输入口,就是单片机捕捉端口的电平然后置位相关寄存器,然后软件读取寄存器中0或1,达到输入作用。这是很通俗的理解,如果想更深的了解可以参考通用I/O的结构。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-11-23
IO口,
I是input 输入
O是out 输出

输出是,设定这个脚为输出,读取这个脚的状态值的话,1为高电压,0为低电平。
输出一般是驱动一个小东西,再带动一个大装置来达到自己想要的要求。
输出你可以看做一个电源。能给你的东西供电。就象电源不会随你会接的东西影响,它始终都是电源。只是有状态,有电,没电。。负载太大的话,只能说是驱动不起来。它输出的状态没变。设计时肯定要避免负载过大的。

输入就像是接受端。你给我电,单片机就会知道,输入端是1,你不给我电,输入端是0。
一般大于1.2V,单片机就能识别为1。
第2个回答  2012-11-23
单片机的 IO 口 (输入/输出 口),是相对单片机 本身 而言的,
就是 单片机 IO 口 往外输出 信号 1 或者 0 ( 1 的输出电圧 = VCC , 0 的电圧 = 0 V )
或者 单片机从 IO 口 读取 输入 信息 1 或者 0 ( 可以 理解为 1 > VCC/2 , 0 < VCC/2 )
也就是 1 为 高电平 , 0 为 低电平,
对于 不同 型号 的 单片机 这个 VCC/2 有些差异。
第3个回答  2012-11-23
感觉应该这样理解:
*1*I/O口的输出是对电流而言的,高电平输出就是输出(或拉出)电流,低电平输出就是输入(或灌入)电流,一般C51单片机1状态为高电平状态,电压接近于电源电压(5V),0状态为低电平状态接近0伏;我们在应用其输出功能时,首先就要在设计上保证I/O口输出高电平时电压不能降低,因其拉电流能力及其微弱,所以高电平输出时一般只用于MOS元件或TTL接口的控制,另外,I/O口的低电平输出时,要保证灌入的电流不超过芯片的要求,否则也不能正常工作;
*2*I/O口的输入是对电压而言的,一般当口上电压高于2V时,单片机会作为高电平采如,低于0.8V是单片机会认为是低电平,至于高低电平的电压究竟时多少,各系列芯片或有差异。
*3*至于“那么是不是IO上接的东西不一样给IO口在输出为高或低状态的数值也是不一样的”是这样,不管让单片机I/O口接上什么东西,都要通过限流分压等方式来保证I/O口输出的电压值为5V或0,这要变了就会失控的。