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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1620|回復: 1
打印 上一主題 下一主題
收起左側

分享一個按鍵掃描程序,支持延時連發

[復制鏈接]
跳轉到指定樓層
樓主
ID:335637 發表于 2018-5-22 17:15 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#include <GetKeyValue.h>
#include "STC15W408AS.h"

sbit key_power=P1^5;

unsigned char key_delay_put=0;
unsigned char key_delay_counter=0;

//°′¼üé¨Ãèoˉêy
unsigned char key_board_scan(void)
{
        unsigned int        ii,zz=0;
       
        P14 = 0;
        ii = P3;                //¶áè¡¶Ë¿ú×′ì¬

        switch(ii)
        {
                case 0xfe: zz=1; break;                //¡°K1¡±±»°′ÏÂ
                case 0xfd: zz=2; break;                //¡°K2¡±±»°′ÏÂ
                case 0xfb: zz=3; break;                //"K3"±»°′ÏÂ
                case 0xf7: zz=5; break;                //¡±K4¡°±»°′ÏÂ
                case 0xef: zz=7; break;                //¡°K1¡±±»°′ÏÂ
                case 0xdf: zz=4; break;                //¡°K2¡±±»°′ÏÂ
                case 0xbf: zz=6; break;                //"K3"±»°′ÏÂ
                case 0x7f: zz=8; break;                //¡±K4¡°±»°′ÏÂ
                default:break;
        }

        if(zz==0)
        {
                if(key_power==0)  zz=9;                        
        }

        P14 = 1;

        return zz;
}

//¸ù¾Y¼üÖμé¨ÃèoˉêyμĽá1û½øDDÏû¶¶μè×ÛoÏ′|àíμÄoˉêy
unsigned char ReadKeyboard(void)
{        
//        static unsigned char         key_state =0,key_value1,key_value2,key_value3,key_value4;
        static unsigned char         key_state =0,key_value1,key_value2,key_value3;
        static unsigned char         key_time =0;        //Ô-Ï趨òåμÄêÇuintDí£¬êμ¼êéÏ2»DèòaÕaÃ′3¤μÄêy¾YààDí£¡
        unsigned char                         key_return =0,key_return1 =0;

       
        switch(key_state)
    {
                case 0:                // ÅD¶ÏêÇ·ñóD¼ü°′ÏÂ
                        if(key_board_scan() != 0) { key_state = 1; }        // óD°′¼ü£¬×aÏû¶¶è·èÏ×′ì¬
                        key_delay_put=0;
                break;
               
                case 1:                // Ïû¶¶′|àí
                if(++key_time >= 1)                        // ¸Ä±äÅD¶Ïìõ¼t¿é¸Ä±ä¼üÅìáéÃô¶è
                {           
                        key_value1 = key_board_scan();
                        if(key_value1 != 0) { key_state = 2; }
                        else { key_state = 0; key_time =0; }
                        key_delay_put=0;
                }
                break;
               
                case 2:                // è·èϰ′¼ü,í¬×′ì¬1±è½Ï
                key_value2 = key_board_scan();
                key_delay_put=0;
                if(key_value2 == key_value1)        // Ôù′Îé¨Ãè
                {        
                        key_return1 = key_value2;
                        key_state =3;                                // ×aèëμè′y°′¼üêí·Å×′ì¬
                        key_time =0;                                // Çå0°′¼üê±¼ä¼ÆêyÆ÷
                }               
                else { key_state = 0; key_time =0;}        // á½′ÎáDμçÆ½2»í¬·μ»Ø×′ì¬0£¨Ïû¶¶′|àí£©
                break;

                case 3:                // ¼Æêy1,(°′1.28S,ᬷ¢ÅD¶Ï)                  
                key_value3 = key_board_scan();               
                if(key_value3 == 0) { key_state = 0; key_delay_put=0;}        // °′¼üòÑêí·Å£¬×a»»μ½°′¼ü3õê¼ì¬
//                else if((key_value3 == S2)||(key_value3 == S3))        // ¸Ä±ä′ËÅD¶Ïìõ¼t,¿éòÔè·¶¨
                else
                {                                                                                                                                        // ÄÄD©¼ü¾ß±¸¼óËù1|Äü,3#,4#óD¼óËù1|Äü
                        if(key_value3 == KEY_TONGSUO)        key_delay_counter=20;
                        else if((key_value3 == KEY_GONGLV)||(key_value3 == KEY_SHEZHI)||(key_value3 == KEY_SHUIMIAN)||(key_value3 == KEY_DINGSHIKAI)||(key_value3 == KEY_DINGSHIGUAN))        key_delay_counter=130;

                        else        key_delay_counter=30;               
                        if(++key_time >= key_delay_counter)                        // 3#¡¢4#°′¼üò»Ö±°′×ÅûËé¿a£¬Ôò×î3¤30*15=0.45Soó£¬Ö±½ó·μ»Ø¸Ã¼üÖμ£¡
                                                                                        // Ôú1.28SÄú2»»áóDèÎoμüÖμ·μ»Ø£¨ËüμļüÖμÔú×′ì¬2½áêøêÇòѾ-·μ»Ø1yáË£©
                        {                                                                // Çò¿éòÔ½øèë×′ì¬4£¬Æô¶ˉᬷ¢1|Äü£¡
//                                key_state = 4;                                // èô°′ÏÂμÄêÇ4#¼ü£¬ÔòÔúμèμ½ËüËé¿aǰ£¬2»»áÔù·μ»ØèÎoμüÖμ(ËüμļüÖμÔú×′ì¬2ê±òѾ-·μ»Øò»′ÎáË)£¡
                                key_delay_put=1;
                                key_time = 0;                                // Çå°′¼ü¼ÆêyÆ÷
                                key_return1 = key_value3;
                        }
                }
                break;

                case 4:                                                                        // ¼Æêy2,ᬷ¢1|Äü           
                        key_value4 =key_board_scan();  
                               
                                             
                        if(key_value4 == 0) { key_state=0;}        // °′¼üòÑêí·Å£¬×a»»μ½°′¼ü3õê¼ì¬
                        else if(++key_time >= 5)                                // 1.5Soó£¬Ã¿1y5*15mS=0.075S·μ»Øò»′μüÖ죬¼′ᬷ¢1|Äü£¡
                        {                                                                                // £¡£¡£¡£¡£¡£¡»1¿éòÔ½øò»2½×aμ½±èèç×′ì¬5¡¢6μ裬½øò»2½¼ó¿ìᬷ¢μÄËù¶è£¡£¡£¡£¡£¡£¡
                                key_time = 0;                                                // Çå°′¼ü¼ÆêyÆ÷
                                key_return1 = key_value4;                        // êä3ö¡°á¬·¢¡±
                        }
                break;
        }

        return key_return1;

}

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:337808 發表于 2018-5-29 00:38 | 只看該作者
注釋漢字我是一個也沒看到呀,讀了半天,不知道放在哪里進行驅動。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久草青青 | 特级做a爱片免费69 精品国产鲁一鲁一区二区张丽 | 日本亚洲欧美 | 国产精品久久久久久影视 | 日韩在线不卡视频 | 精品欧美一区二区三区精品久久 | 精品不卡 | 成人综合一区二区 | 久久亚| 国产线视频精品免费观看视频 | 操久久| 97免费在线视频 | 91一区| 成人美女免费网站视频 | 手机在线观看av | 亚洲精品一区二区久 | 日韩精品中文字幕在线 | 狠狠干天天干 | 国产十日韩十欧美 | 国产91丝袜在线18 | 国产精品福利视频 | 伊人春色在线观看 | 欧美精品片 | 99久久国产综合精品麻豆 | 国产免费xxx | 精品国产精品三级精品av网址 | 羞羞视频网站免费观看 | 拍真实国产伦偷精品 | 精品真实国产乱文在线 | 国产精品国产三级国产aⅴ中文 | 国产ts人妖系列高潮 | 精品亚洲国产成av人片传媒 | 久久99精品久久久久久 | 午夜在线 | 韩日精品一区 | 欧美精品1区2区 | 精品一二区| 亚洲精品国产精品国自产在线 | 欧美日韩精品专区 | 91视频一区二区 | 欧洲一区在线观看 |