独闷闷网

标题: 当2个以上的IO口连在一起时,有什么问题必须要注意的,否则后果严重?已解答。 [打印本页]

作者: jianhong_wu    时间: 2015-1-4 12:31
标题: 当2个以上的IO口连在一起时,有什么问题必须要注意的,否则后果严重?已解答。
本帖最后由 jianhong_wu 于 2015-3-24 16:21 编辑

小武-深圳:
鸿哥,我有4个IO口连在一起,为什么我的单片机引脚被拉低了?

鸿哥-深圳:
有一个原则:
当有2个以上的IO口连在一起时,只允许其中1个IO口是输出模式,其它的IO口必须是悬空(高阻态)或者输入模式,千万不能设置为输出模式,否则就会有两个高低输出引脚“相撞”短路的情况。51单片机的IO口跟PIC等单片机不一样,51单片机的IO口是准双向IO口,51单片机的IO口没有输入输出模式,但是当51单片机要检测外部引脚的时候,软件上要先给IO口赋值1相当于处于输入模式,然后再读取实际数据。

小武-深圳:
噢噢,可能我的有引脚没设置输入模式,明天我再看看,有一个没设置也不行吗?鸿哥

鸿哥-深圳:
根据以上原则,没设置的必须默认是悬空(高阻态)或者输入模式,千万不能是输出模式。

小武-深圳:
2个以上IO连在一起,是附近相临的连在一起两个以上?


鸿哥-深圳:
不一定是相邻,哪怕是任何几个不同单片机的IO口连在一起,都是这个原则。
小鱼儿-湖北:
如果p1.0=1,p1.1=0 ,现在把这两个i/o口接在一起p1.0=?

鸿哥-深圳:
P1.0是0V,被拉低了,跟51单片机的内部结构有关,它是准双向口,不存在输入和输出这种配置,它的高电平是靠内部上拉电阻的,低电平是类似于NPN三极管导通接地。如果是其它双向口的单片机,直接输出的高电平和输出的低电平连在一起是不允许的,就相当于5V跟0V短路了,引脚很容易烧坏。两个IO口连在一起,只允许其中一个是输出状态,另外一个必须是输入状态或者悬空高阻状态。







欢迎光临 独闷闷网 (http://dumenmen.com/) Powered by Discuz! X3.2