打印

pic低功耗请教

[复制链接]
7017|47
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
fxhfxh|  楼主 | 2012-11-20 16:39 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
用PIC10LF322做了一个发射器,线路见图。因为是用的纽扣电池供电,要求功耗越小越好,因功能需要有2个状态,因此在3脚接了一个转换开关进行状态控制,实际中间发现当开关断开时(即3脚为高电平时),静态功耗50微安档基本不动,令人满意;但在开关接地(即3脚为低电平时),静态功耗大约0.1毫安,不知这样的结果是否正确?(我想开关接地,肯定应该有电流从单片机内部流过,但不知这个大小是否正确?)请知道的朋友指教。(实际中间R0,R1没有使用,可以不用。)

相关帖子

沙发
阿南| | 2012-11-20 16:57 | 只看该作者
3V通过10K电阻拉到地,就已经有0.3mA了

使用特权

评论回复
板凳
fxhfxh|  楼主 | 2012-11-20 17:46 | 只看该作者
3V通过10K电阻拉到地,就已经有0.3mA了
阿南 发表于 2012-11-20 16:57

谢谢回复。
已经说了,为了降低功耗,R0,R1没有接,实际证明可以不接。因此帖子中并没有0.3mA之说,而是大约0.1mA左右。我想了解的是,对于这样的硬件电路而言,0.1mA是否正确?对于纽扣电池供电的东西来说,0.1mA的静态电流是不是偏大?(没有使用电源开关。)

使用特权

评论回复
地板
gx_huang| | 2012-11-20 18:25 | 只看该作者
请看看该芯片的数据手册。
建议关闭内部的上拉电阻,加大外部的上拉电阻。

使用特权

评论回复
5
fxhfxh|  楼主 | 2012-11-20 19:27 | 只看该作者
谢谢回复,目前就是使用的内部弱上拉(为了怕功耗大,因此没有使用外部的2个10K的电阻)。芯片手册中好像没有说上拉电阻是多大阻值的。但pic10lf322是新出的低功耗的芯片,如果这样使用就有0.1mA的电流的话,那就说明这样设计是不正确的?或者是软件方面的问题?但如是软件方面的问题,在开关断开的时候,基本是可以认为没有用电,又是正确的。难道说在使用内部弱上拉,口接地的情况下就应该有0.1mA的电流?

使用特权

评论回复
6
NE5532| | 2012-11-20 19:58 | 只看该作者
楼主太忽略内部上拉了,内上拉手册里是有讲的,不过可能是用电流的形式表达,经验值估计在10-100k量级上,跟你的外上拉是一回事。

你的S1应该用单刀双掷开关,直接投到电源或者GND上,而不是用上拉!

建议不要使用大电阻做外上拉,即没有解决根本问题,还会因为潮气引入误动作。

使用特权

评论回复
7
fxhfxh|  楼主 | 2012-11-20 20:40 | 只看该作者
谢谢回复。我已经说了上图中的10k电阻(R0,R1)没有用,见新图。;P  用单刀双掷开关有什么作用?开关闭合了不就是直接接了GND了吗?而且开关断开了的情况相当好,基本是看不见表针的摆动(50uA档)。就是接地的时候有0.1mA。

使用特权

评论回复
8
NE5532| | 2012-11-20 20:47 | 只看该作者
谢谢回复。我已经说了上图中的10k电阻(R0,R1)没有用,见新图。;P  用单刀双掷开关有什么作用?开关闭合了不就是直接接了GND了吗?而且开关断开了的情况相当好,基本是看不见表针的摆动(50uA档)。就是接地的时候 ...
fxhfxh 发表于 2012-11-20 20:40


楼主啊,单刀双掷开关保证你的3脚始终有一个固定电平,要不然你S1断开的时候,3脚读入的是高还是低呢?数电学的基本内容——输入引脚不能悬浮,搞忘了?不要说你开了上拉,上拉就是你电流的来源,请仔细阅读我的回帖,你挑不到我的漏洞滴。:lol

使用特权

评论回复
9
fxhfxh|  楼主 | 2012-11-20 21:19 | 只看该作者
8# NE5532
大侠呀,你说的是不是这样,如新图?
因为我使能了内部上拉,为了低功耗,就没有用外部上拉。实践证明单片机可以检测到是高电平。和原图没有大的区别呀。




[localimg=180,109]4[/localimg][localimg=180,109]4[/localimg][localimg=180,109]4[/localimg]







[localimg=180,109]1[/localimg]

[localimg=180,109]1[/localimg]

使用特权

评论回复
10
NE5532| | 2012-11-20 21:41 | 只看该作者
8# NE5532  
大侠呀,你说的是不是这样,如新图?
因为我使能了内部上拉,为了低功耗,就没有用外部上拉。实践证明单片机可以检测到是高电平。和原图没有大的区别呀。

131701


[loc ...
fxhfxh 发表于 2012-11-20 21:19


兄弟,你的数字电路应该重修了。请自己Google“悬浮的输入端”,还可以找你们数电老师退学费#%……¥%……&*&&(

使用特权

评论回复
11
fxhfxh|  楼主 | 2012-11-20 22:42 | 只看该作者
注意:s1为单刀双掷开关,用的库元件,看起来好像是处于悬浮状态,实际上是接在某一端的。

使用特权

评论回复
12
NE5532| | 2012-11-20 22:44 | 只看该作者
不是,是我理解你在说,用单刀单掷开关,在开关断路状态,端口一样可以检测到高电平,可能是我理解错了。

使用特权

评论回复
13
谈的元| | 2012-11-20 23:32 | 只看该作者
间歇上拉吧,100MS拉10US

使用特权

评论回复
14
fp123123| | 2012-11-20 23:37 | 只看该作者
无论使用内部还是外部上拉,一旦开关闭合接地,就有电流,这个问题要用软件解决,按下面的逻辑处理:
1 在内部上拉电阻打开的状态下,检测到开关闭合时,马上把内部上拉电阻关掉,这时只要开关保持闭合状态,读到的是低电平
2 在低电平状态下,如果开关打开,这时输入变成悬空,无法判断状态,所以在这个状态下,需要定时打开内部上拉电阻,再判断开关的状态
打开上拉电阻和判断的时间非常短,按每秒检测100次的设置,可以大幅度减少电流

使用特权

评论回复
15
fp123123| | 2012-11-20 23:39 | 只看该作者
简单地说,保证只在检测瞬间打开上拉电阻就可以了

使用特权

评论回复
16
Light_David| | 2012-11-21 00:51 | 只看该作者
:$  LZ兄啊,NE兄已经说的很明白了, 开了内部上拉和你在外部接个上拉电阻没区别,引脚接地时这个上拉电阻要耗电滴,

外接高阻上拉或用双掷开关,都不是好主意,一个稳定性差,一个结构复杂.

检测瞬间开上拉或许是个好主意. 视乎也不完美,
因为在高阻期间,引脚若引入干扰,一直徘徊在高低电平之间频繁切换,这样I/O内部管子也是要耗费不少电...
或许在高阻期间将引脚设定成模拟输入脚,就基本完美了。
具体可以看看MICROCHIP关于低功耗的应用笔记. 这方面都有提及.

使用特权

评论回复
17
Tinnal| | 2012-11-21 08:25 | 只看该作者
从根本上解决问题。你的开关常态是什么?是接地还是悬空(相当于接高)。如果是常态接地,那你更改你的软件,变成高有效,这样就变成常态悬空(相当于接高)。

有上拉电阻、接地就会有电流,这是再低功耗的芯片都有解决不了的,只有从设计上更改,才能达到最好的效果。

使用特权

评论回复
18
anvy178| | 2012-11-21 09:20 | 只看该作者
使能上拉 开关接地 肯定消耗电流,改为 浮空 应该电流就小了。

使用特权

评论回复
19
AppBaby| | 2012-11-21 10:33 | 只看该作者
间歇上拉吧,100MS拉10US
谈的元 发表于 2012-11-20 23:32


一句话浓缩了本帖的"精华"  哈哈

使用特权

评论回复
20
jiabin1024| | 2012-11-21 13:21 | 只看该作者
16楼的方法可行

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

52

主题

380

帖子

1

粉丝