標(biāo)題: 按鍵次數(shù)利用單片機(jī)C怎么寫(xiě) 求幫助 [打印本頁(yè)]

作者: 唐布局    時(shí)間: 2018-7-3 19:26
標(biāo)題: 按鍵次數(shù)利用單片機(jī)C怎么寫(xiě) 求幫助
按鍵次數(shù)利用單片機(jī)C怎么寫(xiě)

作者: woshige    時(shí)間: 2018-7-3 19:54
定義一個(gè)變量 每檢測(cè)到一次按鍵按下 變量加一不就好了
作者: no1xijin    時(shí)間: 2018-7-3 20:34
先定義一個(gè)變量并初始化為Count=0;再在每次按鍵按下時(shí)處理Count++;這是利用中斷方式檢測(cè)按鍵次數(shù)的例子:http://www.torrancerestoration.com/bbs/dpj-97675-1.html
作者: xuyaqi    時(shí)間: 2018-7-3 20:53
本帖最后由 xuyaqi 于 2018-7-3 21:14 編輯

while(key==0)
{
  if(key==1)
  {
    key_cs++;//按鍵次數(shù)    break;
  }
}

作者: tuyfdjytdbt    時(shí)間: 2018-7-3 22:20
按一次i++
作者: 1561677221    時(shí)間: 2018-7-3 22:42
我也糾結(jié)這個(gè)好久了,單片機(jī)小白
作者: Aurora33    時(shí)間: 2018-7-3 22:53
#include <reg51.h>  #define uchar unsigned char  #define uint unsigned int   sbit led1 = P2^0;//定義管腳;  sbit led2 = P2^1;  sbit led3 = P2^2;  sbit led4 = P2^3;  sbit led5 = P2^4;  sbit led6 = P2^5;  sbit key  = P1^0;   uchar tcount=0,count=0;//定義時(shí)間變量和按鍵計(jì)數(shù)變量;   void Delay(uchar i)//機(jī)械延時(shí);  {  while(--i);  }   void LedLight(void)//LED控制函數(shù);  {  switch(count)  {  case 3 : led1 = 0;break;//3下時(shí),LED1亮;  case 5 : led2 = 0;break;//5下時(shí),LED2亮;  case 7 : led3 = 0;break;//7下時(shí),LED3亮;  case 9 : led4 = 0;break;//9下時(shí),LED4亮;  case 11: led5 = 0;break;//11下時(shí),LED5亮;  case 13: led6 = 0;break;//13下時(shí),LED6亮;  default: P2   = 0xff;break;//其余的都不亮;  }  }   void InitTimer0(void)//定時(shí)器0初始化;  {  TMOD = 0x00;  TH0 = (65536-50000)/256;  TL0 = (65536-50000)%256;  TR0 = 1;  }   void main(void)//主函數(shù)  {  InitTimer0();  while(1)//無(wú)限循環(huán);  {  if(key==0)//檢查按鍵是否按下;  {  Delay(10);//機(jī)械延時(shí);  if(key==0){count++;}//按鍵計(jì)數(shù);  while(key==0);  }  if(TF0==1)//復(fù)位定時(shí)器0;  {  TF0=0;  TH0 = (65536-50000)/256;  TL0 = (65536-50000)%256;  tcount++;  if(tcount==20)//1秒的時(shí)間;  {  LedLight();  Delay(100);  count=0;//復(fù)位按鍵計(jì)數(shù)變量;  }  }  }  }
作者: Chen666666    時(shí)間: 2018-7-4 17:47
no1xijin 發(fā)表于 2018-7-3 20:34
先定義一個(gè)變量并初始化為Count=0;再在每次按鍵按下時(shí)處理Count++;這是利用中斷方式檢測(cè)按鍵次數(shù)的例子:h ...

沒(méi)有問(wèn)題
作者: diannaoza    時(shí)間: 2018-7-4 20:06

問(wèn)的問(wèn)題太大,定義一個(gè)變量 每檢測(cè)到一次按鍵按下 變量加一不就好了
作者: zyt123456    時(shí)間: 2018-7-4 20:46
先根據(jù)你要顯示數(shù)字的個(gè)數(shù)定義一個(gè)unsigned char型的字符數(shù)組,調(diào)用掃描鍵盤(pán)函數(shù),掃描到哪個(gè)鍵被按下的同時(shí)將鍵值存進(jìn)對(duì)應(yīng)的數(shù)組元素中,再調(diào)用液晶顯示程序顯示,液晶顯示程序中顯示的位數(shù)可變,可以
作者: 不再記起    時(shí)間: 2018-7-4 21:29
設(shè)個(gè)變量,寫(xiě)個(gè)檢測(cè)按鍵的掃描函數(shù) ,按鍵按下 變量加一下。
作者: 240148812    時(shí)間: 2018-7-4 22:13
采取標(biāo)志位 ,每進(jìn)入一次標(biāo)志位加1,進(jìn)行計(jì)數(shù)操作




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1