久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

狀態機方式按鍵掃描單片機程序

作者:佚名   來源:本站原創   點擊數:  更新時間:2013年06月23日   【字體:

這是從http://m.zg4o1577.cn/bbs/dpj-19294-1.html 這個單片機做的收音機里面截取出來的一個子程序,完整的代碼和原理圖可從原帖下載.

                 /*-----------狀態機方式按鍵掃描-----------*/
                 /*------------外部晶振為  12MHz-----------*/          
     /*--------最后修改2011.02.26--------------*/
#include "STC12C5620AD.H"
#include "Key_Scan.H"
#define Key_Mask 0x0f        //屏蔽不用的按鍵,不用的按鍵用0屏蔽

/********************** 聲明外部變量**************************/
extern uchar Work_Mode;      //From Main.c
/********************** 按鍵掃描讀取**************************/
uchar Key_Scan(void)
{
 static uchar Key_State=0;     //定義按鍵狀態
 uchar Key_Press;
 uchar Key_Return=0x00;      //定義按鍵返回的鍵值
 Key_Press=Key_Input&Key_Mask;   //讀按鍵I/O電平
 switch(Key_State)
  {
   case 0:        // 按鍵初始態
    if (Key_Press!=Key_Mask)
      Key_State=1;     // 鍵被按下,狀態轉換到鍵確認態
    break;
   case 1:        // 按鍵確認態
    if (Key_Press==Key_Input&Key_Mask)
     {
      Key_Return=Key_Press;    // 按鍵仍按下且鍵值鍵值,按鍵確認輸出
      BEEP_DRV=1;      // 驅動蜂鳴器
      Key_State=2;     // 狀態轉換到鍵釋放態
     }
    else
     Key_State=0;   // 按鍵已抬起或改變,并轉換到按鍵初始態
    break;
   case 2:
    if (Key_Press==Key_Mask)
     {
      Key_State=0;   // 按鍵已釋放,轉換到按鍵初始態
      BEEP_DRV=0;    // 關閉蜂鳴器
     }
    else
     if(Work_Mode==1)           
      {
       Key_Return=Key_Press|0x09;          // 只有調臺模式并且只有>>| 和 |<< 才能連按
       BEEP_DRV=0;    // 關閉蜂鳴器
      }
     else
      BEEP_DRV=0;    // 關閉蜂鳴器 
    break;
  } 
    return Key_Return;
}

關閉窗口

相關文章

主站蜘蛛池模板: 婷婷久久久 | 99精品视频在线观看 | 久久亚洲免费视频 | 色在线播放 | 91狠狠操 | 日本欧美久久久久免费播放网 | 一级黄色片在线观看 | 国产欧美一区二区精品性色超碰 | 日韩成人影院 | 天天干天天曰 | 欧美精品亚洲 | 蜜臀99久久精品久久久久小说 | 久久日本 | 久草视频网站 | 综合色婷婷一区二区亚洲欧美国产 | 中文字幕一区二区三区在线观看 | 国产天堂av | 在线免费观看黄色片 | 天天看片天天爽 | 在线视频亚洲 | 欧美成人精品激情在线观看 | 激情综合五月天 | 欧美一级视频 | 国产永久视频 | 国产精品福利在线观看 | 四虎影视在线播放 | 亚洲激情视频在线观看 | 美日韩一区二区三区 | 国产91热爆ts人妖系列 | 国产美女自拍 | 亚洲精品www久久久久久广东 | 欧美激情精品 | 成人福利| 欧美一级做性受免费大片免费 | 中文字幕有码在线 | 久久久成人免费视频 | 日本香蕉视频 | 男女无遮挡xx00动态图120秒 | 亚洲第一天堂网 | 久久福利视频导航 | 亚洲精品色 |