您的位置 首页 IOT

怎么从PIC16C5X单片机睡觉状况退出

在有些应用场合下,CPU只需间断性工作或对外部事件作出处理,平时处于待机状态。PIC16C5X单片机有一种节能方式,睡眠(SLEEP)方式,在这种状态中,振荡驱动器停止工作, I/O口保持执行SLEE

在有些使用场合下,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值要挑选恰当,使充放电周期小于P%&&&&&%16C5X的复位时刻(大约18ms)。更远远小于键按下的最小时刻(大约50–100ms)。复位完毕后,在程序中,每隔20ms将SCAN1和SCAN2置低电平一次以采样键值。为避免%&&&&&%放电时刻过长,将拉低,再次形成复位,每次扫描即SCAN1或SCAN2为低电平的时刻大约为10us。当键处理程序完成后,程序对键盘循环扫描直至键开释。然后将SCAN1和SCAN2输出置成低电平,偏重新进入睡觉状况。R4-R8首要用于避免C放电而可能对芯片形成的损伤。作业时序见图3所示。

  

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/iot/326392.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部