我们现在有一个检测限位到位的需求。
实际使用情况是:1.需要获得限位信息时,开启上拉,用430的内部上拉做高电平。
2.不需要获得限位信息时,关闭430内部上拉,以达到省电的目的。
但是现在发现上拉一旦使能,再配置成失能时,电流并不会下降。
问题是,如何取消430的上拉电平,或者说如何配置才能让IO口在不需要时最省电。
Susan Yang:
在用作高低电平检测时,需要开启上拉或下拉。如果有效状态为高电平,则需要配置为REN为上拉使能,且配置OUT为0,即设置为下拉。如果有效状态为低电平,则需啊哟配置REN为使能,且OUT位1,即设置为上拉。
如果不开启内部上拉下拉使能,则IO可能出现不固定状态进而增加功耗。
您可以参考下对未使用IO口的处理
为了使MSP430最大限度的达到低功耗,对于MSP430未使用的GPIO而言,应该将其设置为输出;或者是设置为输入,但是将管脚的电平固定,可以通过外部电路将管脚连接至Vcc或者GND,也可使能内部上下拉电阻,将管脚电平固定。
Tim Lee:
回复 Susan Yang:
引脚在初始未设置状态功耗是最低的。一旦设置上拉或者下拉,功耗急剧增加,待机电流从十几微安上升到几十微安。我现在就是想取消上下拉设置。
而且实际测试结果是不开启内部上下拉状态功耗反而是最低的。
Susan Yang:
回复 Tim Lee:
我对您的描述有些疑惑了。请问您现在是如何测试的呢?
PxREN寄存器是用来控制拉电阻是否启用的
灰小子:
回复 Tim Lee:
建议上传下代码和相关部分的电路图