新手求助,F767退出不了待机模式!!!

2019-07-20 11:36发布

本人菜鸟,F767学到待机唤醒这一节,下完标准程序后,运行正常。但是自己留意到了,只要按KEY UP键,DS0就亮,与我想的不一样,我觉得应该是,按3秒以上亮。后来我将 t>=100,改为t>=500,(只改了这一处),下载运行后,悲催了,按KEY UP 键无法退出待机模式,多久都不行,按说 不是15秒吗?程序如下:
u8 Check_WKUP(void)
{
        u8 t=0;
        u8 tx=0;//记录松开的次数
        LED0(0); //亮灯DS0
        while(1)
        {
                if(WKUP_KD)//已经按下了
                {
                        t++;
                        tx=0;
                }else
                {
                        tx++;
                        if(tx>3)//超过90ms内没有WKUP信号
                        {
                                LED0(1);
                                return 0;//错误的按键,按下次数不够
                        }
                }
                delay_ms(30);
                if(t>=100)//按下超过3秒钟
                {
                        LED0(0);    //点亮DS0
                        return 1;   //按下3s以上了
                }
        }
}  

现在是程序下不了,仿真也不行,如何退出待机模式,哪位大神可以帮小弟一下?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
正点原子
1楼-- · 2019-07-20 12:21
duanzhiruorou 发表于 2017-10-12 15:36
谢谢,我已经恢复过来了,和您说的一样。但是,还是感觉不应该这样退不出来啊,谁可以解释一下啊?

因为u8最大只有255,你大于500,不是找抽么?
liuliupiaoxue
2楼-- · 2019-07-20 17:39
 精彩回答 2  元偷偷看……
duanzhiruorou
3楼-- · 2019-07-20 18:51
 精彩回答 2  元偷偷看……
duanzhiruorou
4楼-- · 2019-07-20 23:22
正点原子 发表于 2017-10-12 15:07
因为u8最大只有255,你大于500,不是找抽么?

谢谢原子哥,自己粗心的毛病又犯了,考虑得太少了。但还有一点不明白,为什么程序刚下来,第一次运行时,按key up键DS0就亮?一开始t不是等于0吗,不应该按住3秒才亮吗?

一周热门 更多>