[STC单片机] 如何设置一键开关机程序

[复制链接]
 楼主| LKC134 发表于 2018-9-9 22:44 | 显示全部楼层 |阅读模式
STC15W408AS这款芯片如何设置在按键长按3秒开机和关机,如从掉电模式设置,每次开机要系统复位再运行应该怎样设置处理?不使用外部硬件电路完全是程式设置的,不知有那位大神做过,望指点下.谢谢!
 楼主| LKC134 发表于 2018-9-10 09:17 | 显示全部楼层
没人这样使用吗?
ayb_ice 发表于 2018-9-10 11:44 | 显示全部楼层
这还取决于硬件设计
jackyhuang1988 发表于 2018-9-10 13:54 | 显示全部楼层
只要你的按键接的引脚,是可以唤醒单片机的,就可以做了。类似下面这样处理就行了,总体思路是,sleepflag为1时说明要休眠了。按键唤醒休眠后,进入正常的程序,检测3秒按键。
                //休眠处理                if (SleepFlag)
                {
                        //进入休眠(关机)前执行的初始化
                        //你的代码
                                       
                        do
                        {
                                //执行进入休眠的代码
                        } while(!(IsChargeSigValid() || IsPeopleCome()));            //唤醒条件,比如是按键
                       
                        //退出休眠(开机或插上5V)前执行的初始化
                        SleepFlag = 0;
                        //你的代码
                 }




 楼主| LKC134 发表于 2018-9-10 14:46 | 显示全部楼层
谢谢楼上的热心解答,我先尝试下,有疑问再请教各位。
hxlawf 发表于 2018-9-15 16:53 | 显示全部楼层
用stm8做过这种功能,我实现的思路是按键检测放到while主循环里,开定时器计算按压时间,按下后(根据时长判断是否有效)挂起系统,再按下(根据时长判断是否有效)正常运行。
owencai 发表于 2018-9-21 11:27 | 显示全部楼层
路过学习
您需要登录后才可以回帖 登录 | 注册

本版积分规则

43

主题

348

帖子

6

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

43

主题

348

帖子

6

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