单片机的I/0口输入和输出,1和0是怎么回事。

2019-07-15 20:27发布

本帖最后由 pk670986 于 2014-3-26 21:37 编辑

本人自己编过一个时钟程序,用过中断,如不入门就不知道,但现在实习了,遇到I/0口的问题,以前编程都没注意过,我一直以为1就是输出,0就是输入,是不是?今天我百了一下,置1是输入,0是输出,那么和0,1是什么关系?一个是状态一个是电平么?电平又是怎么回事?怎么说呢,那你输出0就是低电平,接一个发光二极管会亮吧,那换成输入的话会亮吗?我也看过内部结构,什么集电极开路,输入是高阻态吗?是不是就不亮了,如果高阻态单片机怎么检测输入电平的?
如果觉得懒得解析,请告诉我知识点,等我自己看看也好。。。。谢谢
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
16条回答
pk670986
1楼-- · 2019-07-16 19:51
ntmusic 发表于 2014-3-27 09:40
作为输入端口,前提条件就是端口的状态能随外部电平变化而变化,如果外部拉低,端口应该被拉低,如果外部拉 ...

是置1是为输入状态吧?这就能读取外部电平了,那你说的置0为输出状态,端口电平不随外接电平改变,就等于高组态了吧,我记得电路是置1,三极管通,右边的三极管就不同啦,等于接了上拉电阻,是不是就是这个意思?

那置0的时候是输出状态,我矛盾的地方就在这里,怎么输出低和高电平?他接上拉电阻,应该等于输出高电平了吧?其实是怎么控制的呢?看规格书我又不怎明白,我还是想问问,输出状态的时候,端口输出0就是低电平了,那接一个发光二极管和高电平是不会亮的吧?  是不是输入状态的话接灯和高电平就会亮,而输出状态的话,就要看输出的是什么电平吗?我用C的时候不就是1和0这么简单啊,根本不用考虑这些问题也可以的,我就觉得思维混乱了。。。。。
pk670986
2楼-- · 2019-07-16 23:41
 精彩回答 2  元偷偷看……
djs1968
3楼-- · 2019-07-17 01:28
基础知识太薄弱了。输入输出都是针对单片机而言的。输出的理解是单片机影响外部电路,输入的理解是外部电路对单片机的影响。发光二极管要点亮是有条件的,简单地说要有足够(但不能超过极限,否则会损坏)的正向工作电流,一般是数mA到数十mA,通常认为它是外部输出部分。当然接有限流电阻的发光二极管通过开关接地(0)或接电源(1)的方式把开关脚接入单片机的输入端也能点亮发光二极管,同时完成输入,但是起主要作用的是开关,单片机输入端是被动接受,不能主动影响发光二极管的亮与灭。供参考。
pk670986
4楼-- · 2019-07-17 05:42
djs1968 发表于 2014-3-27 17:08
基础知识太薄弱了。输入输出都是针对单片机而言的。输出的理解是单片机影响外部电路,输入的理解是外部电路 ...

输入状态不是呈现高阻态吗?呈现高阻态才会外部输入啥就体现啥?那我接入led应该是不同的啊!!!
pk670986
5楼-- · 2019-07-17 09:50
ntmusic 发表于 2014-3-27 09:40
作为输入端口,前提条件就是端口的状态能随外部电平变化而变化,如果外部拉低,端口应该被拉低,如果外部拉 ...

谢谢你啊!但我还有个疑问,输出状态的时候是置0,就是MOS管使端口接地,就是你说的那样,输出0我明白,但怎么输出1啊?不是接地了吗?怎么输出1啊。还有同样问题,置1的时候mos管使端口和地断开,是高阻态吧!但还是接上拉电阻的啊!我接低电平的外器件不就输出1了吗?这不矛盾?
liu1032042013
6楼-- · 2019-07-17 14:06
看着看着就晕了

一周热门 更多>