MSP430内部上拉下拉使用注意——IO口测高低电平

MSP430单片机IO口用来检测高低电平时,是不需要外部上拉下拉的,因为其内部有上拉和下拉。

在用作高低电平检测时,需要开启上拉或下拉。如果有效状态为高电平,则需要配置为REN为上拉使能,且配置OUT为0,即设置为下拉。如果有效状态为低电平,则需啊哟配置REN为使能,且OUT位1,即设置为上拉。

如果不开启内部上拉下拉使能,则IO可能出现不固定状态。譬如,当IO被输入高后,外部输入被撤除,但IO寄存器仍然为高。

注意:

这里出现的情况是给IO输入高电平后,外部输入撤离,但是IO寄存器IN仍然保持高电平,而是用万用表量电压后,IO变为0.
出现这个情况的原因是IO对地串联了一个3K电阻和100nf电容,外部输入是加在电阻和电容的连接处的。应该是由外部输入时,对电容充电,外部输入撤离后电容保持该电压。

分享到: 更多
版权申明:

本站保留所有原创文章的版权,本站地址:奔跑的博客[http://www.elecbench.com]

原创文章转载时请注明出处,并添加文章所在页面的链接:http://www.elecbench.com/msp430%e5%86%85%e9%83%a8%e4%b8%8a%e6%8b%89%e4%b8%8b%e6%8b%89%e4%bd%bf%e7%94%a8%e6%b3%a8%e6%84%8f%e2%80%94%e2%80%94io%e5%8f%a3%e6%b5%8b%e9%ab%98%e4%bd%8e%e7%94%b5%e5%b9%b3/

本站所有 2010年3月4日 以后发表、未标明为“转载”的文章均是本站原创。

发表评论?

1 条评论。

  1. 楼主想请教下,“在用作高低电平检测时,需要开启上拉或下拉。如果有效状态为高电平,则需要配置为REN为上拉使能,且配置OUT为0,即设置为下拉。如果有效状态为低电平,则需啊哟配置REN为使能,且OUT位1,即设置为上拉。” 这段话,既然是要检测端口高低电平,那又如何提前知道到底是高还是低电平?
    我研究MSP430有两年多了,最近却在msp430f2132的软件I2C模拟上栽了跟头,读数据怎么都是错的,后来看示波器发现在ACK阶段出现了中间电平,这个中间电平的来源,只可能是单片机端口配置的问题,困扰了我几个月的时间,求楼主解答!!多谢了

发表评论


(设置自己的个性头像)

*

申请属于你的免费顶级域名