PIC的IO口怎样读三态:悬空/接地/接VCC三态?

[复制链接]
 楼主| 花子 发表于 2007-5-15 20:50 | 显示全部楼层 |阅读模式
PIC16F873,RC口是设置为输入状态.<br />分别读入0,1,浮的三种状态<br /><br />现在知道0,1的读入,如果RC口悬空的话,读入是什么值?<br /><br />硬件怎样设置?读入标识为什么?<br /><br />请大侠指教!
谈的元 发表于 2007-5-15 22:35 | 显示全部楼层

不确定,不是0就是1呀

不确定,不是0就是1呀<br /><br />要判断是否悬空,口具有内部上拉和下拉就可以,如上拉读到1,下拉读到0,就是悬空了。<br />或者你给口上加个可控的外部上拉和下拉来判断<br /><br />再就是在口上加个rc输出0,1来判断是否悬空了
yewuyi 发表于 2007-5-16 09:07 | 显示全部楼层

“如上拉读到1,下拉读到0,就是悬空了”

不一定对,要看是否带上拉电阻和下拉电阻
shiaf 发表于 2007-5-16 12:58 | 显示全部楼层

非典应用。

输出1,马上读回<br />输出0,马上读回<br /><br />读到全1,接的是高<br />读到全0,接的是低<br />第一次是&nbsp;1&nbsp;,第二次是0&nbsp;,外部悬空。<br /><br />注意外面拉的是弱&nbsp;&quot;1&quot;&nbsp;或&nbsp;弱&nbsp;&quot;0&quot;,避免强&nbsp;&quot;1&quot;和强&nbsp;&quot;0&quot;&nbsp;打架。&nbsp;
谈的元 发表于 2007-5-16 18:49 | 显示全部楼层

回yewuyi

当然不要了
sopren 发表于 2007-5-17 16:20 | 显示全部楼层

都知道悬空了,还读什么劲?

  
xwj 发表于 2007-5-17 16:54 | 显示全部楼层

LS,就是不知道是否悬空才要判断啊

  
xieyuanbin 发表于 2007-5-18 21:59 | 显示全部楼层

谈的元的想法不错

不过PIC很少有既带上拉又带下拉的IO,至少要外加一个5K下拉电阻.前提是LZ说的,要直接接地或VCC.
无悔 发表于 2007-5-19 12:26 | 显示全部楼层

口上加RC怎么判断啊?

好象要固定负载才好设置RC的参数吧?
谈的元 发表于 2007-5-19 20:27 | 显示全部楼层

请注意,4楼朋友的创意好

请注意,4楼朋友的创意好<br /><br />我已经验证,但时序要把握好。就是输出1后要延时哈,就是输出0后也要延时哈,也不要太久。30US左右,要自己验证;太短,电平未建立好。太长输出的1会变低。<br />&nbsp;&nbsp;这样一来,一口可以读2个开关,还可以检测开关线是否断(即悬空),<br /><br />只要接个限流电阻,一个口又少了上拉或下拉电阻,太好了。连电容都省了,<br /><br />就是不知有无什么隐患没,大家讨论哈嘛
yewuyi 发表于 2007-5-19 20:48 | 显示全部楼层

隐患肯定有的……

早就有帖子说过了把?
谈的元 发表于 2007-5-20 08:04 | 显示全部楼层

楼上兄再说哈,怎样?

  
yewuyi 发表于 2007-5-20 08:50 | 显示全部楼层

我讲不如shiaf讲了……

记得以前shiaf曾经就检测原理和弊端都做了介绍的,但俺找不到那帖子了……
谈的元 发表于 2007-5-20 11:09 | 显示全部楼层

我也找了,找不到才请教兄台的

  
谈的元 发表于 2007-5-20 11:11 | 显示全部楼层

那请shiaf 再讲下 其弊端

那请shiaf&nbsp;再讲下&nbsp;其弊端<br />谢谢
xieyuanbin 发表于 2007-5-21 09:17 | 显示全部楼层

他已经讲了弊端

&quot;注意外面拉的是弱&nbsp;&quot;1&quot;&nbsp;或&nbsp;弱&nbsp;&quot;0&quot;,避免强&nbsp;&quot;1&quot;和强&nbsp;&quot;0&quot;&nbsp;打架。&quot;<br />强1强0打架肯定是不行的,可能导致单片机PIN与PIN之间短路,也就是电源直接短路,这是危险的行为.我曾经做过试验,虽然不会立即烧坏单片机,但两个端口的电压都是VCC1/2,对TTL触发的IO口来讲,读出值的始终为1.且严重发热.<br />另外对于输出1,立即读入这个概念,需要考虑的是外部电路的线间电容的影响,电容大了,显然立即读入的数值有误差.
shiaf 发表于 2007-5-21 09:54 | 显示全部楼层

弊端就是外部的分布电容,IC 内部的分布电容未知。

就怕不同的应用,延时时间不好把握。
谈的元 发表于 2007-5-21 17:58 | 显示全部楼层

呵呵,打架肯定不会

呵呵,打架肯定不会,你要加个隔离电阻呀。<br /><br />延时时间的确需要把握好。<br /><br />我还以为有其他&nbsp;弊端&nbsp;&nbsp;比如口易坏...<br /><br /><br />
xieyuanbin 发表于 2007-5-24 08:06 | 显示全部楼层

既然端口外的分布电容不好办,那就加一个电容.

弄一个101的电容并上,连按键消抖处理都可省了.
谈的元 发表于 2007-5-24 22:23 | 显示全部楼层

电容

电容我觉得可以,<br /><br />假如有几十个输入的话,成本要增加不少,
您需要登录后才可以回帖 登录 | 注册

本版积分规则

15

主题

46

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部