找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3452|回復: 0
打印 上一主題 下一主題
收起左側(cè)

鍵盤掃描程序+電路圖

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:71259 發(fā)表于 2014-12-29 19:33 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
/*
程序效果:按下任意鍵,LED顯示P0讀回的數(shù)據(jù)
   其中4*4的矩陣鍵盤接P0口
*/
#include<reg52.h> //頭文件
unsigned char key=0xff;   //定義一個變量用于存放按鍵值
void readkey();   //讀按鍵子函數(shù),獲取鍵值
void main()    //主函數(shù)
{
   while(1)
   {   
      readkey(); //讀按鍵值
      if(key!=0xff) //判斷是否有按鍵按下
      P2=~key;//這里取反:是因為LED為共陰,顯示所按下的值   
   }
}
void readkey() //讀鍵盤子函數(shù)
{
  P0=0xfe; //將第一列拉低,掃描是否有按鍵按下,第一列鍵值為:0,4,8,C
  key=P0;  //讀取鍵盤值
  if(key!=0xfe) //若key!=0xfe,說明有按鍵按下,則返回
      return;    //否則繼續(xù)掃描下一列
  P0=0xfd;
  key=P0;
  if(key!=0xfd)
      return;
  P0=0xfb;
  key=P0;
  if(key!=0xfb)
      return;
  P0=0xf7;
  key=P0;
  if(key!=0xf7)
      return;
  key=0xff;
}


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

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表