日本高清不卡中文字幕-一起草草视频在线观看-亚洲精品一区二区三区色-国产亚洲精品免费视频

你好!歡迎來到深圳市穎特新科技有限公司!
語言
當(dāng)前位置:首頁 >> 技術(shù)中心 >> 單片機(jī)入門 >> 單片機(jī)鍵盤程序設(shè)計小結(jié)

單片機(jī)鍵盤程序設(shè)計小結(jié)

關(guān)鍵字:鍵盤掃描 作者:admin 來源:不詳 發(fā)布時間:2018-05-08  瀏覽:6

在圖示電路中,用 P1 口接一個 4 X 4 鍵盤。設(shè): SO-S9 為數(shù)字鍵,鍵值為 0-9 ,用于向單片機(jī)系統(tǒng)輸入數(shù)據(jù); S10-S15 為命令鍵,鍵值為 A-F ,用于對計算機(jī)系統(tǒng)送操作命令;每鍵只 1 個功能;行線接 P1 口的高 4 位;列線接 P1 口的低 4 位。

1)鍵盤掃描子程序

KEY: MOV A, #0F 0H

  MOV P1,A
  XRL A,P1
  JZ KEYR ;無鍵按下返回
  ACALL DELAY ;延時去抖動
  MOV 30H,P1 ;讀閉合鍵行位置
  MOV P1,#0FH ;反轉(zhuǎn)
  MOV A,P1 ;讀閉合鍵列位置
  ORL 30H,A ;合成鍵盤位置碼
  LOOP: MOV A,P1 ;等待鍵釋放
  XRL A, #0FH
  JNZ LOOP
  ACALL DELAY ;延時去抖動
  KEYR : RET

2)鍵值轉(zhuǎn)換

鍵盤矩陣中各鍵的位置碼的特點是:對應(yīng)該鍵行、列的位為“ 0 ” ,其他各位均為“ 1 ” 。例如: S7 鍵的位置碼是: 11010111B = 0D7H ; S12 鍵的位置碼是: 01111110B = 7EH 。將各鍵的位置碼順序排列成鍵值表,用查表法進(jìn)行鍵值轉(zhuǎn)換。

鍵值轉(zhuǎn)換子程序

  TRAN: MOV DPTR,#KEYTAB ; DPTR 指向鍵值表
  MOV R2,#0 ;鍵值初值送 R2
  MOV R3,#10H ;循環(huán)次數(shù)送 R3
  LOOPT: MOV A,R2
  MOVC A, @A+DPTR ;讀鍵值表
  XRL A,30H ;與位置碼比較
  JZ KTR ;相等返回,鍵值在 R2 中
  INC R2 ;鍵值 +1
  DJNZ R3,LOOPT
  KTR: RET ;若返回時 R2=10H 為錯
  KEYTAB: DB 0EEH,0EDH,0EBH,0E7H ;鍵值表
  DB 0DEH,0DDH,0DBH,0D7H
  DB 0BEH,0BDH,0BBH,0B7H
  DB 7EH,7DH,7BH,77H

編輯:admin  最后修改時間:2019-08-09

聯(lián)系方式

0755-82591179

傳真:0755-82591176

郵箱:vicky@yingtexin.net

地址:深圳市龍華區(qū)民治街道民治大道973萬眾潤豐創(chuàng)業(yè)園A棟2樓A08

Copyright © 2014-2023 穎特新科技有限公司 All Rights Reserved.  粵ICP備14043402號-4

永州市| 财经| 镇安县| 独山县| 中超| 新沂市| 定远县| 嘉鱼县| 于都县| 襄垣县| 鹿邑县| 阳高县| 英德市| 东城区| 江安县| 读书| 福鼎市| 安远县| 永州市| 彰化县| 仪陇县| 贵定县| 娱乐| 保定市| 耒阳市| 防城港市| 茌平县| 江北区| 梅州市| 桃源县| 无为县| 惠安县| 平陆县| 嘉峪关市| 加查县| 林芝县| 庐江县| 时尚| 都江堰市| 孟津县| 女性|