三種方法讀取鍵值 使用者設計行列鍵盤介面,一般常採用三種方法讀取鍵值。 中斷式 在鍵盤按下時產生一個外部中斷通知CPU,並由中斷處理程式通過不同位址讀資料線上的狀態判斷哪個按鍵被按下。 本實驗採用中斷式實現使用者鍵盤介面。 掃描法 對鍵盤上的某一行送低電位,其他為高電位,然後讀取列值,若列值中有一位是低,表明該行與低電位對應列的鍵被按下。否則掃描下一行。 反轉法 先將所有行掃描線輸出低電位,讀列值,若列值有一位是低表明有鍵按下;接著所有列掃描線輸出低電位,再讀行值。 根據讀到的值組合就可以查表得到鍵碼。4x4鍵盤按4行4列組成如圖電路結構。按鍵按下將會使行列連成通路,這也是見的使用者鍵盤設計電路。 //-----------4X4鍵盤程序--------------// uchar keboard(void) { uchar xxa,yyb,i,key; if((PINC&0x0f)!=0x0f) //是否有按鍵按下 {delayms(1); //延時去抖動 if((PINC&0x0f)!=0x0f) //有按下則判斷 { xxa=~(PINC|0xf0); //0000xxxx DDRC=0x0f; PORTC=0xf0; delay_1ms(); yyb=~(PINC|0x0f); //xxxx0000 DDRC=0xf0; //復位 PORTC=0x0f; while((PINC&0x0f)!=0x0f) //按鍵是否放開 { display(data); } i=4; //計算返回碼 while(xxa!=0) { xxa=xxa>>1; i--; } if(yyb==0x80) key=i; else if(yyb==0x40) key=4+i; else if(yyb==0x20) key=8+i; else if(yyb==0x10) key=12+i; return key; //返回按下的鍵盤碼 } } else return 17; //沒有按鍵按下 }
標簽: 4x4 鍵盤
上傳時間: 2013-11-12
上傳用戶:a673761058
基于FPGA的循環冗余校驗算法實現
標簽: FPGA 循環冗余 校驗算法
上傳時間: 2013-10-09
上傳用戶:busterman
無線傳感器網絡的迭代算法
標簽: SL-n 無線傳感器網絡 迭代 算法
上傳時間: 2013-11-16
上傳用戶:標點符號
第三代移動通信(3G)發展和基礎介紹
標簽: WCDMA 3G 培訓教材 發展
上傳時間: 2013-10-30
上傳用戶:我干你啊
crc校驗原理
標簽: crc
上傳時間: 2013-10-22
上傳用戶:gyq
CRC校驗C語言實現
標簽: CRC C語言
上傳時間: 2013-10-12
上傳用戶:zhuce80001
為了在一定的溫度和壓力下有效改善傳感器的非線性及溫度變化引起的誤差輸出特性,提出了一種人工神經網絡算法對其實現軟件補償. 它包含4 個權值的調整,分別代表輸出信號的一次項,二次項以及溫度的一次項,二次項系數,經過迭代以后獲得一個最佳輸出公式. 該公式既能夠滿足樣本值,也能夠滿足非樣本值,并最終可校驗神經網絡迭代結果的正確性.
標簽: 人工神經網絡 壓力傳感器 溫度補償
上傳時間: 2013-11-05
上傳用戶:yuanwenjiao
高通驍龍各代處理器解析
標簽: 四核 高通驍龍 處理器
上傳用戶:zaizaibang
廣州國保科技有限公司第三代保密機簡介移動通信是由許多服務區組成的,而每個服務區又由若干個基站劃分成若干小區,位于服務區內任意位置的手機通過不斷接收來自基站的廣播信號,同時向基站發送應答信號來保持入網狀態.
標簽: 保密機
上傳時間: 2013-11-21
上傳用戶:水中浮云
帶CRC校驗的AVR mega64單片機串口接受跟發送函數,發送數據跟接受數據可以1602液晶屏顯示
標簽: CRC 串口 發送
上傳時間: 2013-10-10
上傳用戶:氣溫達上千萬的
蟲蟲下載站版權所有 京ICP備2021023401號-1