单片机的IO口置1就是输入什么意思

还有上拉的输入是什么意思?上拉就一定是置1吗?

单片机的IO口可以置1,也可以置0,看你的需要。比如I/O口作为输入时,若输入为低电平有效(表示有输入),那就要事先将这个I/O口置为1,然后等待信号输入。若输入为高电平有效(表示有输入),那就要事先将这个I/O口置为0,然后等待信号输入。为了使I/O口电平满足要求,I/O口置0有时要在I/O口引脚上接一个下拉电阻,I/O口置为1则有时要在I/O口引脚上接一个上拉电阻,这个要看I/O口的特性情况。I/O口作为输出也会有同样问题。不管是上拉还是下拉,主要目的就是使得设置端口后,端口实际电平能符合达到设置要求。追问

输入是低电平有效还是高电平有效看什么?
还有上啦能不能在具体讲一讲啊,拜托了

追答

输入是低电平有效还是高电平有效,这个看你的设计或传感器输出特性。比如传感器是一个感应开关,没有物体是一直为高电平,有物体感应时输出为低电平,即为低电平有效,这个时候,单片机IO口要检测这个传感器输出信号,就必须设为高电平,一旦出现低电平,说明有感应,就可以通过程序识别出来。如果单片机IO口一直为低电平,那它就识别不了感应信号了,就这个原理了。上拉电阻是这样:单片机有些端口内部没有上电阻,是集电极开路方式(如OC门),本身IO口没有电压,这个时候要使这个端口为高电平,就只能在端口外部接一个上拉电阻到电源端,端口就可以达到高电平,比如AT89C51单片机的P0口就是这样。如果没有加上拉电阻,那么程序控制输出端口为高电平时,端口也还是低电平,不可能形成高电平,那么程序控制就不能完成预定功能了。一般上拉电阻取值不能太小,否则端口为低电平时电流过大,有可能烧坏单片机端口;当然也不能太大,太大电平拉不够,不可靠,对于一般单片机,5V的取5~10K,3V的取1~5K较为合适。

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-08-29
以51系列单片机为例,看IO口端子的硬件电路图。
IO口是一个Input和Output复用的端子,端子内部有两个电路:可以用作输入接收外部的高、低电平的输入电路,和可以作为输出发出高、低电平的输出电路,输入和输出的外部端子是共用的。如果输出电路的输出能力都极强,而外接的也是一个输出能力都极强的输出电路(作为该IO口的输入),势必会造成高低电平之间的冲突,会使端子内部的输出电路和端子外部的输出电路之间短路,端子内部的输入电路也不可能检测到外部输入的真实的电平信号。
实际的IO口内部输出电路的设计可以解决这个问题:输出电路是一个上接电阻的电子开关,当电子开关导通饱和时输出低电平并有很强的吸收电流的能力;当电子开关截止不导通时电子开关本身没有任何驱动能力,只是通过那个上接电阻对外提供高电平输出(所以该上接的电阻称为上拉电阻,大概在10K左右),该高电平的驱动能力是有限的,即使端子上所接的外部输出电路输出的是0V的电平,外部输出电路吸收的低电平电流也是有限的,在外部输出电路的承受范围之内。
所以当IO口作为输入使用时,O功能一定要置1使输出电路的电子开关截止输出高电平。虽然这个高电平不会影响外部电路输出低电平能力,但多少增加了外部电路输出低电平时的驱动负担------这是IO端子共用以减少芯片引脚所付出的代价。追问

“输出电路是一个上接电阻的电子开关,当电子开关导通饱和时输出低电平并有很强的吸收电流的能力;......外部输出电路吸收的低电平电流也是有限的,在外部输出电路的承受范围之内。”
这段话不怎么懂?可以再详细点吗

追答

输出电路的结构:上面是一个上接电阻,接+5V,下面串一个电子开关,再接地。
当输出清0(clr)时,电子开关导通饱和,输出是低电平,这时电子开关有很强的吸收电流的能力;当输出置1(setb)时,电子开关截止不导通,通过那个上接电阻(10K左右)对外提供高电平输出,此时电子开关本身没有任何驱动能力。应为是通过上拉电阻输出高电平,所以该高电平的驱动能力是有限的,即外接端子上的负载电阻不能太小,否则上拉电阻和负载电阻的分压会减低输出“高电平”的电压。---这时这种输出电路的缺点,没有足够大的电流驱动能力;这种输出电路的优点是,使其输出端可以和输入电路的输入端连在一起合用一个端子成为可能:当该IO端作为输入端用(IO口置1)时,这个上拉电阻会对端子上外接的电平输入电路倒灌电流,但这个电流不大,即使端子上输入的是0V的低电平,这个倒灌电流也只有0.5毫安(=5/10K)左右,一般外接的电平输入电路都能承受。

第2个回答  2012-08-29
你说呢?

单片机的IO口置1就是输入什么意思
单片机的IO口可以置1,也可以置0,看你的需要。比如I\/O口作为输入时,若输入为低电平有效(表示有输入),那就要事先将这个I\/O口置为1,然后等待信号输入。若输入为高电平有效(表示有输入),那就要事先将这个I\/O口置为0,然后等待信号输入。为了使I\/O口电平满足要求,I\/O口置0有时要在I\/O...

51单片机中怎么样将输入输出端口设置成输入功能
普通单片机io设置成1就是输入了 因为1能被拉成0 但是0不能被拉成1 (电流高的话也可以的,一般不会有那么高的电流)

我想问问关于51单片机I\/O口的问题!!
51单片机置1是输入状态,--也是输出状态,但是也可以输入。是呈现高阻态的,就是I\/O口内部结构的开关是断开的,不接地,--P0 口,确实是这样的。但还接一个上拉电阻吧!(都带上拉电阻)。--P0 口没有上拉电阻。--P1P2P3,都有上拉电阻。--但是电阻很大,几百K,上拉作用有限。那...

单片机怎么用c语言设置I\/O口输入或输出
P1M0=0;P1M1=255; \/\/all 推挽输出 而51单片机的所有IO引脚,在启动后默认都是1。因此,如之前没有对此引脚进行过置0操作的话,可以直接读该引脚。但为了保险起见,也为了使程序通用、可移植,最好在读取之前对此引脚置1。

为什么51单片机io端口输出库信号一般选择低电平有效?
因为51单片机的IO口在复位后的默认状态为1,也就是高电平\/输入状态。如果以高电平作为有效信号,单片机复位到程序初始化之间会有一个时间窗口,那么很容易在上电时造成噼里啪啦一堆误动作、甚至由于瞬态负载过重导致电源无法启动。因此在设计时应当将各种输出信号设计成低电平有效\/低电平触发动作。

单片机的IO口输入输出是相对什么讲的
那高电平就为5V,低电平为0V。如果做输出口的话,就是单片机通过软件置位相关寄存器让端口置高电平或低电平,达到电平输出的目的,如果做输入口,就是单片机捕捉端口的电平然后置位相关寄存器,然后软件读取寄存器中0或1,达到输入作用。这是很通俗的理解,如果想更深的了解可以参考通用I\/O的结构。

,PIC单片机IO口什么时候设置为输入,什么时候设置为输出,这个输入输出...
单片机,全称单片微型计算机(英语:Single-Chip Microcomputer),又称微控制器(Microcontroller),是把中央处理器、存储器、定时\/计数器(Timer\/Counter)、各种输入输出接口等都集成在一块集成电路芯片上的微型计算机。与应用在个人电脑中的通用型微处理器相比,它更强调自供应(不用外接硬件)和节约成本...

stc单片机程序刚开始时,程序把所有引脚置1,是什么意思?
不仅仅STC,51系列其他的单片机一般都这样处理,硬件设计时,为提高可靠性,一般都是“低”有效,刚刚上电,单片机复位后,一般IO口都是“1”的,程序设计者还是不放心,所以程序开始,初始化的时候,常常置IO口“1”,让各个口处于“无效”状态,以免开始外设不受控制的乱动,呵呵,双重保护。

急。。单片机读引脚时,为什么要向I\/O口写1
51单片机的P1 P2 P3 口为准双向口,输出高电平是由内部开关管与地断开,上拉到高电平,如果内部的开关管与地是通的,那么输出的是低电平“0”,这样你怎么读端口都会一直是低电平,所以要先写个“1”,就是让它输出高电平,这样内部开关管就与地断开了,读到的电平就是外部的电平了。简单言之,...

如何将51单片机的IO口设置为输入口?
MOV P1,#0FEH;那么P1.7-P1.1就是输入口,P1.0作为输出口。

相似回答