打印
[技术问答]

N76E003 IO口唤醒问题,有累计唤醒次数限制?

[复制链接]
2960|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zuiainideren|  楼主 | 2018-5-24 13:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用N76E003开发一个方案,使用 P03做按键高电平唤醒,IO口外部用有100k下拉。 通过按键唤醒,处理后重新进入休眠,没有打开看门狗,以省电。 现发现按键唤醒,当唤醒次数达到60次左右, 再也无法唤醒,IO口电平有上拉,但再也无法唤醒,只能断电或者复位。 这问题有遇到么?如何解决?
沙发
zuiainideren|  楼主 | 2018-5-24 13:47 | 只看该作者
自己顶下帖

使用特权

评论回复
板凳
ayb_ice| | 2018-5-24 14:00 | 只看该作者
为什么不能唤醒呢,肯定是程序自身原因,或电平不正确

使用特权

评论回复
地板
xinpian101| | 2018-5-24 15:36 | 只看该作者
没限制。这个怎么会有限制。

使用特权

评论回复
5
xinpian101| | 2018-5-24 17:03 | 只看该作者
自己写的程序还是官方的例子。

使用特权

评论回复
6
xinpian101| | 2018-5-24 17:06 | 只看该作者
/*---------------------------------------------------------------------------------------------------------*/
/*                                                                                                         */
/* Copyright(c) 2017 Nuvoton Technology Corp. All rights reserved.                                         */
/*                                                                                                         */
/*---------------------------------------------------------------------------------------------------------*/

//***********************************************************************************************************
//  Nuvoton Technoledge Corp.
//  Website: http://www.nuvoton.com
//  E-Mail : MicroC-8bit@nuvoton.com
//  Date   : Apr/21/2017
//***********************************************************************************************************

//***********************************************************************************************************
//  File Function: N76E003 wake up timer interrupt demo code
//***********************************************************************************************************
#include "N76E003.h"
#include "Common.h"
#include "Delay.h"
#include "SFR_Macro.h"
#include "Function_define.h"

void WakeUp_Timer_ISR (void)   interrupt 17     //ISR for self wake-up timer
{
                clr_GPIO1;
                Timer1_Delay10ms(5);
                set_GPIO1;
                Timer1_Delay10ms(5);
                clr_GPIO1;
                Timer1_Delay10ms(5);
                set_GPIO1;
          clr_WKTF;                                               //clear interrupt flag   
}


/************************************************************************************************************
*    Main function
************************************************************************************************************/
void main (void)
{
   
    P12_PushPull_Mode;

                clr_GPIO1;
                Timer0_Delay1ms(400);
                set_GPIO1;
                Timer0_Delay1ms(400);
                clr_GPIO1;
                Timer0_Delay1ms(400);
                set_GPIO1;
                Timer0_Delay1ms(400);
                clr_GPIO1;
                Timer0_Delay1ms(400);
                set_GPIO1;

//-----------------------------------------------------
//        WKT initial        
//-----------------------------------------------------       
                WKCON = 0x02;                                                                                 //timer base 10k, Pre-scale = 1/16
//                RWK = 0XFF;                                                                                        //        if prescale is 0x00, never set RWK = 0xff
                RWK = 0X00;
          set_EWKT;                                                                                                        // enable WKT interrupt
                set_WKTR;                                                                                                 // Wake-up timer run
                EA = 1;
       
                while(1);
}

使用特权

评论回复
7
xinpian101| | 2018-5-24 17:10 | 只看该作者
有两种方法可以中止空闲模式,方法一、任何使能的中断发生都可以使系统退出空闲模式。中断发生自动清零IDL位,中止空闲模式,且将执行中断源对应的中断服务程序(ISR),直到执行RETI返指令,返回后立即执行使CPU进入空闲模式的指令,使CPU进入空闲模式。第二种方法是除软件复位外的所有复位,如果看门狗复位用来中止空闲模式,WIDPD (WDCON.4)需要设置为1,让WDT在空闲模式下继续运行。

使用特权

评论回复
8
xinpian101| | 2018-5-24 17:11 | 只看该作者
参考这个定时器中断唤醒的,反正什么中断都行。

使用特权

评论回复
9
Harvard| | 2018-5-25 11:40 | 只看该作者
应该没有吧

使用特权

评论回复
10
wanduzi| | 2018-5-25 23:21 | 只看该作者
没有,怎么会有这种事。

使用特权

评论回复
11
wahahaheihei| | 2018-5-27 14:24 | 只看该作者
没有,是不是有中断标志没有被清。

使用特权

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

本版积分规则

5

主题

16

帖子

0

粉丝