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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3357|回復(fù): 6
打印 上一主題 下一主題
收起左側(cè)

利用按鍵控制PWM調(diào)節(jié)LED亮度,持續(xù)按按鍵能夠連續(xù)變化 求幫助

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:495949 發(fā)表于 2019-9-9 18:12 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
我已經(jīng)做到了單獨(dú)按遙控或者是按按鍵的時(shí)候可以調(diào)節(jié)亮度,但是持續(xù)按遙控或者是按鍵的話我實(shí)現(xiàn)不了,希望大佬們幫幫忙,給我一點(diǎn)點(diǎn)思路。
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:235200 發(fā)表于 2019-9-9 22:44 | 只看該作者
單獨(dú)按能實(shí)現(xiàn),持續(xù)按不能實(shí)現(xiàn),這就要看你的電路和程序了,按鍵是否中斷實(shí)現(xiàn)?若是中斷的話是邊沿觸發(fā)還是電平觸發(fā)?判斷按鍵是否要彈起才有效?這些問題不清楚不好回答你的問題。一般若要連續(xù)按實(shí)現(xiàn)調(diào)節(jié)的話,用一個(gè)計(jì)數(shù)器計(jì)數(shù),計(jì)數(shù)至最大值對應(yīng)最大亮度,最小值對應(yīng)最小亮度,只要保證按鍵能對計(jì)數(shù)值增減就可實(shí)現(xiàn)了
回復(fù)

使用道具 舉報(bào)

板凳
ID:332444 發(fā)表于 2019-9-9 23:02 | 只看該作者
循環(huán)延時(shí)你的按鈕變量自增
回復(fù)

使用道具 舉報(bào)

地板
ID:213173 發(fā)表于 2019-9-10 07:49 | 只看該作者
短按+-,長按連+-,給你一個(gè)示例程序參考。
  1. #include <REG51.H>
  2. #define uint unsigned int        
  3. #define uchar unsigned char
  4. #define key_S 1000                                        //宏定義短按(約20ms)
  5. #define key_L 30000                                        //宏定義長按(約2/3s)
  6. #define key_M 20000                                        //宏定義長按(約1/3s)
  7. sbit key1=P3^6;                                                //加鍵
  8. sbit key2=P3^7;                                                //減鍵
  9. uchar num=1;

  10. void keyscan()                                                        //按鍵掃描
  11. {
  12.         static uint count1=0,count2=0;//計(jì)數(shù)變量
  13.         if(!key1)   
  14.         {  
  15.                 count1++;  
  16.                 if(count1>=key_L)                                //長按
  17.                 {
  18.                         if(num<255)
  19.                                 num++;        
  20.                         count1=key_M;
  21.                 }
  22.         }  
  23.         else                                                                        //按鍵抬起
  24.         {  
  25.                 if(count1>key_S && count1<key_L)//短按
  26.                 {
  27.                         if(num<255)
  28.                                 num++;
  29.                 }
  30.                 count1=0;                                                        //count清0
  31.         }   
  32.         if(!key2)   
  33.         {  
  34.                 count2++;  
  35.                 if(count2>=key_L)                                //長按
  36.                 {
  37.                         if(num>0)
  38.                                 num--;        
  39.                         count2=key_M;
  40.                 }
  41.         }  
  42.         else                                                                        //按鍵抬起
  43.         {  
  44.                 if(count2>key_S && count2<key_L)//短按
  45.                 {
  46.                         if(num>0)
  47.                                 num--;
  48.                 }
  49.                 count2=0;                                                        //count清0
  50.         }
  51. }

  52. void main()
  53. {
  54.         while(1)
  55.         {
  56.                 keyscan();                                //按鍵掃描
  57.                 P1=~num;                                        //LED低電平顯示
  58.         }
  59. }
復(fù)制代碼
回復(fù)

使用道具 舉報(bào)

5#
ID:495949 發(fā)表于 2019-9-10 08:49 | 只看該作者
csmyldl 發(fā)表于 2019-9-9 22:44
單獨(dú)按能實(shí)現(xiàn),持續(xù)按不能實(shí)現(xiàn),這就要看你的電路和程序了,按鍵是否中斷實(shí)現(xiàn)?若是中斷的話是邊沿觸發(fā)還是 ...

謝謝 我再試試
回復(fù)

使用道具 舉報(bào)

6#
ID:609970 發(fā)表于 2019-9-10 15:08 | 只看該作者
本帖最后由 bsbshi 于 2019-9-10 16:07 編輯

按鍵不用中斷,在計(jì)時(shí)器里循環(huán)查詢按鍵接口電平,加個(gè)延遲計(jì)數(shù)器,if判斷,在延遲時(shí)間內(nèi)高電平回零,為單次按按鍵,+1;超過延遲還是高電平則為持續(xù)按壓,++,直到按鍵變低電平
回復(fù)

使用道具 舉報(bào)

7#
ID:230975 發(fā)表于 2019-11-22 15:34 | 只看該作者
能看看你的按鍵檢測代碼嗎。有沒有加松手檢測。
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚洲精品久久久久久一区二区 | 亚洲天堂中文字幕 | 久久国产精品视频观看 | 久草在线 | 久久伊人久久 | 久久久国产一区 | 国产精品久久久久久久岛一牛影视 | 国产欧美一区二区三区久久 | 欧美日韩中文国产一区发布 | 亚洲第一女人av | 亚洲视频在线一区 | 秋霞av国产精品一区 | 欧美精品一区二区三区蜜桃视频 | 一区二区三区中文字幕 | 免费视频一区二区 | 91小视频| 国产精品日韩 | 天天av网| 国产精品久久久久无码av | 亚洲高清视频在线观看 | 美日韩一区二区 | 天天色综 | 久久99精品视频 | 国产日韩欧美中文字幕 | 久久精品一区二区三区四区 | 日韩av美女电影 | 免费一二区 | 91高清视频在线观看 | 亚洲黄色视屏 | 91精品国产91久久久久游泳池 | 久久精品亚洲精品 | a在线免费观看 | www.日韩av.com| 日韩精品一区二区三区在线播放 | aaa天堂| 国产一区二区视频在线 | 中文字幕 国产 | 欧美中文字幕一区二区三区亚洲 | 超碰在线人人干 | 成年人网站国产 | 人人干人人干人人 |