SLEEP无法唤醒

[复制链接]
 楼主| liuzaiy 发表于 2020-6-2 20:36 | 显示全部楼层 |阅读模式
代码如下:
        GIE = 1;
                        PEIE = 1;
                        INTE = 1;
                        INTF = 0;
                        INTEDG = 1;
                        IOCIE = 1;
                     SLEEP();
                        NOP();
                        PEIE = 0;
                        INTE = 0;
                        IOCIE = 0;
SLEEP时的电流为几百个微安,按按键电流一点变化都没有。
是哪里没设好吗?
renyaq 发表于 2020-6-2 20:40 | 显示全部楼层
使用哪个端口产生中断,需要配置。程序里没有配啊。
 楼主| liuzaiy 发表于 2020-6-2 20:43 | 显示全部楼层
PA口都是输入,都需要中断,并且相关功能已经实现,设置如下:
        TRISA0 = 1;
        TRISA1 = 1;                                
        TRISA3 = 1;
        TRISA4 = 1;
        TRISA5 = 1;
        ANSELA = 2;
llljh 发表于 2020-6-2 20:45 | 显示全部楼层
楼主看一下这两个寄存器:IOCAP   IOCAN
 楼主| liuzaiy 发表于 2020-6-2 20:50 | 显示全部楼层

                        IOCAP = 0xFF;
                        IOCAN = 0XFF;
这样设置还是不行诶
 楼主| liuzaiy 发表于 2020-6-2 20:53 | 显示全部楼层
高手今天都出去浪了吗?
bqyj 发表于 2020-6-2 20:57 | 显示全部楼层
有点意思,前两天刚遇到类似问题。后来用MCC建立了程序,立刻好用。当时我的问题原因是ANSELA配置错了。IO上电后默认是模拟模式的,要使用数字功能,一定要通过代码将ANSEL相应bit清零。不知道你是不是也是这个问题。
zwll 发表于 2020-6-2 21:00 | 显示全部楼层
你先用一个IO做唤醒,一个IO做挂一个LED输出来测试吧。
dingy 发表于 2020-6-2 21:05 | 显示全部楼层
IOC应该就是配置TRISC,ANSEL,IOCxP, IOCxN, IOCIE,看不到你程序的全貌也很难说再多
renyaq 发表于 2020-6-2 21:08 | 显示全部楼层

代码不全啊。你的Sleep怎么进入的?
 楼主| liuzaiy 发表于 2020-6-2 21:11 | 显示全部楼层
SLEEP();
wangpe 发表于 2020-6-2 21:15 | 显示全部楼层
你没懂我的意思, 你这段代码放哪儿了?
是while(1)里面还是之前了。
更多操作
 楼主| liuzaiy 发表于 2020-6-2 21:20 | 显示全部楼层
可以休眠唤醒了,但是电流太大了,有70uA.怎么降到20几uA啊?
zwll 发表于 2020-6-2 21:23 | 显示全部楼层
楼主查到SLEEP无法唤醒的原因了?能否分享一下?
 楼主| liuzaiy 发表于 2020-6-2 21:26 | 显示全部楼层

GIE = 0;
                        PEIE = 1;
                        INTE = 1;
                        INTF = 0;
                        INTEDG = 1;
                        IOCIE = 1;
                        IOCAP = 0xFF;
                        IOCAN = 0XFF;
                        IOCAF = 0;
                        IOCIF = 0;                        
                        OSCCON = 0X02;
                        NOP();
                     SLEEP();
 楼主| liuzaiy 发表于 2020-6-2 21:30 | 显示全部楼层

嗯,预料中的结果,多谢大家啦
您需要登录后才可以回帖 登录 | 注册

本版积分规则

735

主题

7546

帖子

2

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