打印

求救:义隆单片机的睡眠功耗问题。

[复制链接]
3081|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
dnemperor|  楼主 | 2010-1-2 16:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
求救:我使用的emc78803的单片机,在睡眠模式下,资料上说典型的的电流为1ua,但是我写了代码之后,测试为17ua,使用的port9 的6,7脚唤醒,请问各位大侠是什么原因,该如何进一步的降低功耗??测试的时候已经将803的IO口与外围的设备断开了。谢谢。
急,求救。

相关帖子

沙发
谈的元| | 2010-1-2 20:07 | 只看该作者
1ua指的是睡觉时的电流,如果有唤醒,电流肯定大于这个。

要根据需要做到少唤醒。

如果做输入口建议有大的下拉或上拉电阻。如果没下拉或上拉,

可以理解为输入口就好比一个电容,很容易被环境干扰。那样频繁唤醒电流就大了

使用特权

评论回复
板凳
NE5532| | 2010-1-2 20:46 | 只看该作者
断开并不是解决问题的办法,如果有输入状态的口线悬浮,10uA很容易就出来了。用万用表认真检查每个引脚的电平情况。

使用特权

评论回复
地板
dnemperor|  楼主 | 2010-1-3 12:39 | 只看该作者
slep之前的指令是这样的:麻烦给指正一下,谢谢:
        MOV        a,@11000000b
        IOW        P9_DIR  ;ioc9

        MOV        a,@0
        IOW        0x0a



        MOV A,@0XFF
        MOV        PORT8,a                ;Make rows 0-6 =output and =0
        IOW        P8_DIR
        MOV            A,@0X70   ;p58 用于唤醒
        IOW        P5_DIR
        BC              PORT5,7

        MOV        a,@0                        ;PORT6  all =outputs, all =0
        MOV        PORT6,a
        IOW        P6_DIR

        MOV        PORT6,a                ;Why repeat this instruction?
        MOV            A,@0XFF
        IOW        P7_DIR

        MOV    A,@00100000B
        CONTW

    MOV    A,@00101000B   ;选择wdt预除器
    CONTW
    WDTC
    MOV    A,@0X30
    MOV    0x0e,A  ;使用p96、p97唤醒。
   
    MOV    A,@00100000B
        CONTW
        CLR TCC   
    CLR    0X0A
    MOV    A,@0X00
    IOW    0X0F
    DISI
    SLEP                    ;进入睡眠模式
    NOP

使用特权

评论回复
5
NE5532| | 2010-1-3 13:50 | 只看该作者
看不懂,没用过这个机型,你自己检查:模拟功能是不是都关闭了,端口的输入输出状态是否正确,有功率控制寄存器的CPU记得关闭不用的模块,尽量使用内部RC。

使用特权

评论回复
6
dnemperor|  楼主 | 2010-1-3 14:40 | 只看该作者
都好多天了,都没个结果 ,郁闷。。。

使用特权

评论回复
7
NE5532| | 2010-1-3 16:08 | 只看该作者
你把每个引脚的电压量了传上来看看呢。

使用特权

评论回复
8
dnemperor|  楼主 | 2010-1-4 09:05 | 只看该作者
PORT5 和port8 输入接上拉。port6输出低电平。port7输入状态,
p7.6\p7.7接上拉电阻高 。其他的是为低。 port9 的p9.6 p9.7输入,上拉电阻,高电平。p9.5 p9.4输出低电平。。

使用特权

评论回复
9
xll123456| | 2010-1-4 09:56 | 只看该作者
单片机的睡眠功耗指的是单片机内部模块的功耗,CPU,定时器,AD等等,单是整机的功耗,不仅仅是单片机内部模块的功耗,例如外部的分压,驱动,以及各端口的状态等等,功耗还是很大的,自己要注意查查,才能有效的开发出合格的产品。

使用特权

评论回复
10
sz_kd| | 2010-1-4 10:00 | 只看该作者
你应该考虑你的外围电路是否有耗电的地方,依次断开排查,然后还要正确设置你程序,保证你的MCU各部分电路接口和寄成器在睡眠时候设置正确。

使用特权

评论回复
11
dnemperor|  楼主 | 2010-1-4 13:00 | 只看该作者
ok 谢谢啦

使用特权

评论回复
12
谈的元| | 2010-1-7 23:00 | 只看该作者
说说啊,怎么OK

使用特权

评论回复
13
wyp1984| | 2010-1-8 13:56 | 只看该作者
禁止所有漏极输出,禁止下拉,不用唤醒的IO下拉也禁止了!断开所有负载!

使用特权

评论回复
14
dnemperor|  楼主 | 2010-1-11 10:56 | 只看该作者
本帖最后由 dnemperor 于 2010-1-11 11:00 编辑

ok的意思说按照各位前辈的方法试一试。呵呵
不过结果是,到了最后也没有降下来。不管怎么弄。。:(
还是纳闷DATASHEET上的1ua是怎么出来的。。。

使用特权

评论回复
15
szshawn2010| | 2010-1-11 21:24 | 只看该作者
建议你上传一会电路图上来.
通常,如果你应用的有三极管,升/降压管,或其他类似元件.你的功耗肯定大

使用特权

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

本版积分规则

1

主题

6

帖子

1

粉丝