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

[复制链接]
 楼主| 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
NE5532 发表于 2010-1-3 13:50 | 显示全部楼层
看不懂,没用过这个机型,你自己检查:模拟功能是不是都关闭了,端口的输入输出状态是否正确,有功率控制寄存器的CPU记得关闭不用的模块,尽量使用内部RC。
 楼主| dnemperor 发表于 2010-1-3 14:40 | 显示全部楼层
都好多天了,都没个结果 ,郁闷。。。
NE5532 发表于 2010-1-3 16:08 | 显示全部楼层
你把每个引脚的电压量了传上来看看呢。
 楼主| dnemperor 发表于 2010-1-4 09:05 | 显示全部楼层
PORT5 和port8 输入接上拉。port6输出低电平。port7输入状态,
p7.6\p7.7接上拉电阻高 。其他的是为低。 port9 的p9.6 p9.7输入,上拉电阻,高电平。p9.5 p9.4输出低电平。。
xll123456 发表于 2010-1-4 09:56 | 显示全部楼层
单片机的睡眠功耗指的是单片机内部模块的功耗,CPU,定时器,AD等等,单是整机的功耗,不仅仅是单片机内部模块的功耗,例如外部的分压,驱动,以及各端口的状态等等,功耗还是很大的,自己要注意查查,才能有效的开发出合格的产品。
sz_kd 发表于 2010-1-4 10:00 | 显示全部楼层
你应该考虑你的外围电路是否有耗电的地方,依次断开排查,然后还要正确设置你程序,保证你的MCU各部分电路接口和寄成器在睡眠时候设置正确。
 楼主| dnemperor 发表于 2010-1-4 13:00 | 显示全部楼层
ok 谢谢啦
谈的元 发表于 2010-1-7 23:00 | 显示全部楼层
说说啊,怎么OK
wyp1984 发表于 2010-1-8 13:56 | 显示全部楼层
禁止所有漏极输出,禁止下拉,不用唤醒的IO下拉也禁止了!断开所有负载!
 楼主| dnemperor 发表于 2010-1-11 10:56 | 显示全部楼层
本帖最后由 dnemperor 于 2010-1-11 11:00 编辑

ok的意思说按照各位前辈的方法试一试。呵呵
不过结果是,到了最后也没有降下来。不管怎么弄。。:(
还是纳闷DATASHEET上的1ua是怎么出来的。。。
szshawn2010 发表于 2010-1-11 21:24 | 显示全部楼层
建议你上传一会电路图上来.
通常,如果你应用的有三极管,升/降压管,或其他类似元件.你的功耗肯定大
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

6

帖子

1

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