义隆单片机进入休眠之后如何减小静态电流

[复制链接]
5729|9
 楼主| sun520up 发表于 2011-9-17 17:14 | 显示全部楼层 |阅读模式
用的是EM78P153,现在的测试结果超过了50uA,要求是5uA一下。在休眠模式下要怎么设置呢?
;===============================================
;休眠子程序     
;===============================================   
sleep:
    MOV    A, @00000000B
    IOW    IOCC
    MOV    A, @11111111B
    IOW    IOCB
    MOV    A, @00000000B
    MOV    PORT6, A          ;P6口赋初值
    MOV    PORT5, A  
    ;---------------------
    mov    a,@0b00000010         
    contw                        ;tcc分配预分频器
    clr    tcc                   ;清tcc和预分频器
    mov    a,@0b00001110         
    contw                        ;wdt分配预分频器
    wdtc                         ;清wdt和预分频器
    clra        
    iow    ioce                  ;关闭wdt
    mov    port6,port6           ;读取Port6
    mov    a,@0b00000010         ;使能Port6输入中断
    iow    iocf        
    disi
    nop
    slep                         ;系统挂起,当P6口输入变化时,程序被唤醒并从slep指令的下一条指令开始执行
    WDTC
    MOV    A,@00000000B
    IOW    IOCF              
    ;------------------------
    nop
    clra
iow    ioce              ;关闭看门狗
    JMP    KeyWake
 楼主| sun520up 发表于 2011-9-18 13:47 | 显示全部楼层
没人用过吗?
hopewise 发表于 2011-9-18 18:24 | 显示全部楼层
1.把没用到的I/O设为输出状态,并且设为低电平.
2.处于sleep状态下的不用检测的I/O设为输出状态,并且设为低电平.
3.处于sleep状态下,把一些IC的电源关闭,wake后再打开.
这样功耗就降下很多,我搞的产品在sleep状态下的功耗一般最大15uA,最小的才几uA.
 楼主| sun520up 发表于 2011-9-19 00:20 | 显示全部楼层
3# hopewise
白天上班了试试看,有问题再反馈呀,先谢过了:handshake
scytrenbin 发表于 2011-10-7 18:09 | 显示全部楼层
因为LZ没有将IOCD寄存器的内容显示出来,所以可能是由于你的Port6中的某个pin有上拉,但你输出了低。
Jimmy_zjd 发表于 2013-6-19 16:56 | 显示全部楼层
本人刚接触义隆单片机,也希望得到高人指点哈
ansile 发表于 2013-6-20 09:32 | 显示全部楼层
这个单片机可以处理到低于5UA的
Jimmy_zjd 发表于 2013-6-21 13:43 | 显示全部楼层
ansile 发表于 2013-6-20 09:32
这个单片机可以处理到低于5UA的

举例说明
Jimmy_zjd 发表于 2013-7-1 14:27 | 显示全部楼层
这个静电流我现在的是0.1UA.用FLUKE测试的。
donkey456 发表于 2013-7-3 14:50 | 显示全部楼层
强烈建议3楼,,继续普科,扫盲《《《,,
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

162

帖子

1

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