中文字幕无码不卡一区二区三区_少妇被又大又粗又爽毛片久久黑人_91精品国产在热久久无毒不卡_久久久久久亚洲综合网站

技術(shù)熱線: 4007-888-234
設(shè)計(jì)開發(fā)

專注差異化嵌入式產(chǎn)品解決方案 給智能產(chǎn)品定制注入靈魂給予生命

開發(fā)工具

提供開發(fā)工具、應(yīng)用測(cè)試 完善的開發(fā)代碼案例庫(kù)分享

技術(shù)支持

從全面的產(chǎn)品導(dǎo)入到強(qiáng)大技術(shù)支援服務(wù) 全程貼心伴隨服務(wù),創(chuàng)造無限潛能!

新品推廣

提供新的芯片及解決方案,提升客戶產(chǎn)品競(jìng)爭(zhēng)力

新聞中心

提供最新的單片機(jī)資訊,行業(yè)消息以及公司新聞動(dòng)態(tài)

探討按鍵處理的C程序

更新時(shí)間: 2019-03-23
閱讀量:1843

十年專注單片機(jī)方案開發(fā)的方案公司英銳恩,與您探討按鍵處理的C程序。英銳恩現(xiàn)提供服務(wù)產(chǎn)品涉及主控芯片:8位單片機(jī)、16位單片機(jī)、32位單片機(jī)及各類運(yùn)算放大器等。

//**********************************************
//**********   鍵程序   *************************
//**********************************************

//判斷鍵是否松開
void keyoff(void)
{
unsigned char temp;
while(1)
{
delayms(200); //延時(shí)200ms,以保證按確認(rèn)鍵,開停鍵松開后才進(jìn)入程序
  temp=PORTD;

//判斷健是否松開,如果松開,則退出循環(huán)
  if(temp==keytemp)
    { break;}
  }  
}

//******************************************
//判斷鍵是否連續(xù)按下
void keykey(unsigned char tmp)
{
unsigned char temp;
delayms(5);  //延時(shí)5ms
temp=PORTD;   //再讀鍵值  

//如果松開
if(temp!=tmp)
{keynum=0;}

//沒松開
else
{
  keynum++;
  if(keynum>=20)
    { keynum=20;}
    if(keynum<=5)
      {delayms(250);delayms(250);delayms(250);}
    else if(keynum<=10)
      {delayms(250);delayms(250);}
    else if(keynum<=15)
      {delayms(50);} 

 else
      {delayms(10);}
 
  }
}

//*********************************************
//鍵盤鍵值判斷
unsigned char keysub(void)
{   //傳回鍵值
unsigned char temp1,temp2;//存儲(chǔ)PORTD值
unsigned char key;         //設(shè)定鍵值 

temp1=PORTD;               //讀PORTD口
delayms(10);               //延時(shí)10ms,防抖動(dòng)
temp2=PORTD;
if((temp1==temp2)&&(temp2!=keytemp))
{//有鍵按下
  if((temp2&0X40)==0)  
   {
     key=1;      //確認(rèn)鍵---第6位
     keyoff(); /鍵松開
   }

  else if((temp2&0X20)==0)
   {
     key=2;      //增---第5位
     keykey(temp2); //連續(xù)增 

}

  else if((temp2&0X10)==0)
   {
     key=3;      //減---第4位
     keykey(temp2); //連續(xù)減
   }

  else if((temp2&0X80)==0)
   {
     key=4;     //開/停鍵---第7位
     keyoff();
   }
  }//有鍵按下

  else   

{ //無鍵按下
    key=9;    
    keynum=0;   //恢復(fù)keynum為0,取消連續(xù)鍵值 
  }

return(key);      //返回鍵值
}

//鍵程序結(jié)束

(文源網(wǎng)絡(luò),侵刪)

泸定县| 古浪县| 同仁县| 乌鲁木齐县| 含山县| 恩施市| 北碚区| 东乌珠穆沁旗| 甘肃省| 桓仁| 湘乡市| 泰州市| 海晏县| 绩溪县| 新龙县| 浏阳市| 滁州市| 胶南市| 甘肃省| 宁德市| 苏尼特右旗| 庄浪县| 乐亭县| 蒲江县| 自贡市| 三门峡市| 渭源县| 南华县| 海晏县| 霍山县| 靖州| 南陵县| 舒兰市| 民乐县| 青州市| 阿尔山市| 太仓市| 班玛县| 华阴市| 太仆寺旗| 梧州市|