在有些应用场合下,CPU只需间断性工作或对外部事件作出处理,平时处于待机状态。PIC16C5X单片机有一种节能方式,睡眠(SLEEP)方式,在这种状态中,振荡驱动器停止工作, I/O口保持执行 SLEEP指令前的状态,从而大大降低系统功耗。由于PIC16C5X单片机无中断功能,要退出睡眠方式,只有两种方法:

(1)“看门狗”(WDT)溢出。


(2)在复位脚加低电平,而使芯片复位。本文采用第二种方法。 在图1给出的例子中,PIC16C5X平时处于睡眠态,当任意一键按下时,将它从睡眠状态中唤醒,进行键盘处理。为便于说明,在本例中,SW1按下时,点亮 ,如下图所示 

 

绿灯;当SW2按下时,红灯亮。读者可按实际需要编写处理程序,参见图2。 

 

在进入睡眠态前,将键扫描输出线SCAN1和SCAN2置为低电平。这样,当进入睡眠状后,无键按下时,电容C充电充分,使PIC16C5X单片机复位脚保持着高电平。一旦有键按下,C通过电阻R2或R3放电,使C上的电压快速下降(大约1ms),从而将复位脚拉为低电平,迫使PIC16C5X退出睡眠态而进入复位。复位时,SCAN1和SCAN2自动从输出态变为输入态(高阻态),C的放电回路被阻断,VCC经电阻R1对C充电至高电平。


需注意的是,RC值要选择恰当,使充放电周期小于PIC16C5X的复位时间(大约18ms)。更远远小于键按下的最小时间(大约50--100ms)。复位结束后,在程序中,每隔20ms将SCAN1和SCAN2置低电平一次以采样键值。为避免电容放电时间过长,将拉低,再次造成复位,每次扫描即SCAN1或SCAN2为低电平的时间大约为10us。当键处理程序完成后,程序对键盘循环扫描直至键释放。然后将SCAN1和SCAN2输出置成低电平,并重新进入睡眠状态。R4-R8主要用于防止C放电而可能对芯片造成的伤害。工作时序见图3所示。 

                          

关键字:PIC16C5X  单片机  睡眠状态  键唤醒 引用地址:PIC16C5X单片机睡眠状态的键唤醒方法

上一篇:PIC16系列单片机与PC机串行通信的软硬件实现
下一篇:PIC16F676单片机内部EEPROM的程序

推荐阅读

在系统开发的时候,出现了HardFault_Handler硬件异常,也就是死机,尤其是对于调用了os的一系统,程序量大,检测堆栈溢出,以及数组溢出等,找了半天发现什么都没有的情况下,估计想死的心都有了。如果有些程序开始的时候一切没有问题,但是运行几个小时候,会发现死机了,搞个几天下来估计蛋都碎了一地吧。。。一般来说运行操作系统 是以下几个问题1.开...
三星和台积电在制程上的“战火”烧到了汽车芯片上。 三星和台积电这两家硅芯片代工厂在很多需要处理芯片的领域中都在抢客户,现在他们的战场延伸到了汽车上。如果要说最近几年汽车行业的风口是什么,那么自动驾驶绝对是榜上能排到前三的。而针对自动驾驶的专用处理器需要比较先进的制程工艺,最好就是有特别的优化,三星和台积电就针对这个需求推出了特定...
昨天,苹果发布了iPhone 12家族新品,股价应声下跌2.65%。说实话,iPhone 12虽然总算是跟上了大部队的脚步,但总体来说没什么太让人兴奋的点。以前手机行业是人人都在学苹果,现在国产机随便挑一个高端型号出来,都能把iPhone 12按在地上摩擦。在iPhone 12发布之前和之后,我看到大家议论最多、争议也最多的就是iPhone 12不再随机赠送耳机和充电器了...
按往年惯例,三星应该在8/9月份推出新一代 Galaxy Note 系列旗舰,不过很可惜今年的 Note 系列已被官方取消。但从近期爆料来看,全新的三星 Galaxy S22 Ultra 将会在外观以及部分配置上继承 Galaxy Note 系列的特色。IT之家曾报道,三星 Galaxy S22系列已通过3C 认证,显示依然配备了25W 快充,充电器可自由选配。@WaqarKhanHD 现公布了一系列...

史海拾趣

问答坊 | AI 解惑

据传mega8L现在都10块了,还买不到!

本帖最后由 ddllxxrr 于 2016-1-7 17:18 编辑 是不是真的? 大家遇到这种情况了么? …

查看全部问答∨

USBXpress使用的相关问题?

小弟现在正在用C8051F340实现通过USB和PC机传送数据,对于USBXpress,很多人说有了它开发起来很方便,我安装了之后还是不太明白该怎么用,求高人指点一下,大概的学习过程,不胜感激。…

查看全部问答∨

秀一下我的ZIGBEE模块,CC2530不加PA,直视距离700米

这个模块的特点就是的链路预算作到了极致,在野外直视距离可以达到700米。同样的功耗,更远的通讯距离。技术交流QQ群51109148。…

查看全部问答∨

有用AQ430的吗?

完全版得近两千啊,如果我用试用版是不是用30天就的重下一次。 iar的workbench到是免费,但编译c语言有4k容量的限制吗?…

查看全部问答∨

有多少人用STM32.NET Micro framework?

RT.自己想接触嵌入式很长时间了.感觉uCOS很看不下去 .可能是身边没人带吧..不知道大家都用什么.以前可能自己知识储备也太匮乏.想开始学一个嵌入式系统了...想找些志同道合的朋友一起学.自己太势单力薄.没有环境了…

查看全部问答∨

STM32F103 UART4的问题

void USART4_Configuration(void){  USART_InitTypeDef USART_InitStructure; RCC_APB1PeriphClockCmd(RCC_APB1Periph_UART4, ENABLE  );               U ...…

查看全部问答∨

请教,检测多路三相交流电的有效方法

需要检测多路三相交流电,然后反馈信号到单片机 本来想用电流互感器,但是一路三个的,几路下来,成本比较高,不知哪位朋友有好的方法可以指点一下,谢谢!! …

查看全部问答∨

监控视频图像处理问题

我有一段监控视频,现在需要将视频中的车牌号确认出来能办到吗?怎么办到? BMP 352*288 上图是视频的截图 会PS的人能做到吗?这个技术叫什么?以现在的技术能实现我的要求吗? 谢谢…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved