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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5215|回復: 7
收起左側

at89c52單片機用獨立按鍵控制數碼管加減

[復制鏈接]
ID:245302 發表于 2017-11-2 13:58 | 顯示全部樓層 |閱讀模式
用獨立按鍵控制數碼管加減,s2一直按著數碼管就一直加,怎么做?

回復

使用道具 舉報

ID:245339 發表于 2017-11-2 15:22 | 顯示全部樓層
單片機反應速度很快要想做到一直按著一直加,應該加上適當的延時。s2一按下觸發延時函數延時0.5秒就加一這樣就可以了
回復

使用道具 舉報

ID:245340 發表于 2017-11-2 15:26 | 顯示全部樓層
去掉松手檢測程序,加上延時程序,就可以實現一直加了
回復

使用道具 舉報

ID:245302 發表于 2017-11-2 17:07 來自觸屏版 | 顯示全部樓層
1377231861 發表于 2017-11-2 15:26
去掉松手檢測程序,加上延時程序,就可以實現一直加了

能發程序給我看一下嗎
回復

使用道具 舉報

ID:245302 發表于 2017-11-2 17:09 來自觸屏版 | 顯示全部樓層
1377231861 發表于 2017-11-2 15:26
去掉松手檢測程序,加上延時程序,就可以實現一直加了

有具體程序給我借鑒一下嗎
回復

使用道具 舉報

ID:213173 發表于 2017-11-2 17:53 | 顯示全部樓層
//短按+/-,長按連續+/-示例,按鍵和LED端口按你的實際電路定義。變量num按實際需要設限。宏定義延時計數按實際需要修改。
#include <REG51.H>
#define uint unsigned int                         //宏定義數據類型uint
#define uchar unsigned char                 //宏定義數據類型uchar
#define key_S 1000                                        //宏定義短按(約20ms)
#define key_L 30000                                        //宏定義長按(約2/3s)
#define key_M 20000                                        //宏定義長按(約1/3s)
sbit key1=P3^6;                                                //加鍵
sbit key2=P3^7;                                                //減鍵
uchar num=1;

void keyscan()                                                        //按鍵掃描
{
        static uint count1=0,count2=0;//計數變量
        if(!key1)   
        {  
                count1++;  
                if(count1>=key_L)                                //長按
                {
                        if(num<255)
                                num++;        
                        count1=key_M;
                }
        }  
        else                                                                        //按鍵抬起
        {  
                if(count1>key_S && count1<key_L)//短按
                {
                        if(num<255)
                                num++;
                }
                count1=0;                                                        //count清0
        }   
        if(!key2)   
        {  
                count2++;  
                if(count2>=key_L)                                //長按
                {
                        if(num>0)
                                num--;        
                        count2=key_M;
                }
        }  
        else                                                                        //按鍵抬起
        {  
                if(count2>key_S && count2<key_L)//短按
                {
                        if(num>0)
                                num--;
                }
                count2=0;                                                        //count清0
        }
}

void main()
{
        while(1)
        {
                keyscan();                                //按鍵掃描
                P1=~num;                                        //LED顯示低電平顯示
        }
}
回復

使用道具 舉報

ID:245403 發表于 2017-11-2 18:24 | 顯示全部樓層
可能程序錯了
回復

使用道具 舉報

ID:245473 發表于 2017-11-2 20:48 | 顯示全部樓層
去掉松手檢測程序,加上延時程序,就可以實現一直加了
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲一区久久 | 欧美一级www片免费观看 | 亚洲精品国产成人 | h网站在线观看 | 国产精品久久久久久久久免费樱桃 | 久久综合久| 国产aa| 欧美精品一区二区三区在线播放 | 最新中文字幕在线 | 欧美日韩国产精品激情在线播放 | 中文字幕三区 | 在线观看亚洲专区 | 亚洲国产欧美91 | 国产综合视频 | 亚洲精品字幕 | 国产精品视频999 | 欧美一区二区三区视频在线播放 | 日韩毛片视频 | 国产成人精品一区二区三区在线 | 中文字幕一区二区三区四区不卡 | 黄色免费在线观看网站 | 久久久久国产精品一区二区 | 中文字幕第一页在线 | 精品国产一区一区二区三亚瑟 | 成人av电影在线 | 久久综合成人精品亚洲另类欧美 | 日本激情视频在线播放 | 欧美一区二区免费视频 | 久婷婷| 日韩一区和二区 | 成人做爰999| 中国一级毛片免费 | 91视视频在线观看入口直接观看 | av网站免费 | 黑人性hd | 久草视频网站 | 亚洲欧美精品在线观看 | 亚洲国产成人精品女人 | 狠狠色香婷婷久久亚洲精品 | 国产成人免费视频网站视频社区 | 在线观看日本网站 |