久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4137|回復: 0
打印 上一主題 下一主題
收起左側

數碼管顯示4x4鍵盤的鍵號的單片機匯編程序與仿真

[復制鏈接]
跳轉到指定樓層
樓主
數碼管顯示4x4鍵盤的鍵號仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)

目錄..................................................................................................................................................1
數碼管顯示4x4矩陣鍵盤的鍵號    2
摘要    2
    關鍵詞    2
第一章 硬件    2
AT89C51    2
4*4鍵盤    6
第二章 軟件    9
    KEIL4    9
   匯編程序    10
   Proteus    15
   仿真電路圖    17
第三章 實物    17
   材料    17
   實物展示    18
第四章 課程設計心得    19
參考文獻    20


單片機源程序(匯編語言)如下:
  1. scan_code EQU 30H
  2.           ORG 0000H
  3.                   JMP start
  4.                   ORG 0030H
  5. start:   
  6.           MOV P0,#0FFH ;初始化p0口,使輸出無顯示
  7. loop:                                    ; 循環調用read—key獲取鍵盤信息,若鍵盤按下,
  8.          CALL read_key        ; 則用R7返回鍵值信息
  9.          CJNE R7,#0FFH,next         ; 若R7返回值不為0xff,則調用顯示函數
  10.                   JMP loop
  11. next:                                             ;顯示程序
  12.           MOV A,R7
  13.                   MOV DPTR,#disp_code
  14.                  MOVC A,@A+DPTR
  15.                   MOV P0,A
  16.                   JMP loop
  17. read_key:
  18.           MOV scan_code,#7FH
  19.                   MOV P1,#0FH
  20.                   MOV A,P1
  21.                   MOV R7,#0FFH
  22.                  CJNE A,#0FH,wait_key   ;鍵盤按下則p1的值會改變
  23.                   JMP end_key
  24. wait_key:
  25.          CALL delay_10ms        ;延時10ms,若p1口仍右鍵按下,則跳到scan—key
  26.                   MOV A,P1
  27.                   MOV R7,#0FFH
  28.                   MOV R6,#4
  29.                  CJNE A,#0FH,scan_key
  30.                   JMP end_key
  31. scan_key:
  32.           MOV P1,scan_code       ;將0x7f循環右移并賦給P1
  33.                   MOV A,P1
  34.                  CJNE A,scan_code,get_key;p1的值改變則確定出其行數
  35.                    RR A
  36.                   MOV scan_code,A
  37.                  DJNZ R6,scan_key
  38.                   JMP end_key
  39. get_key:
  40.    ;       MOV P1,#0FH
  41.         ;          MOV R1,P1
  42.         ;         CJNE R1,#0FH,$
  43.                   MOV R7,#4
  44. get_key0:
  45.           JNB ACC.0,add_r6;移位循環判斷最低位,為0則確定其列數
  46.                    RR A
  47.                  DJNZ R7,get_key0
  48.                   MOV R7,#0FFH
  49.                   JMP end_key
  50. add_r6:
  51.           DEC R6        ;從第0個鍵盤數起,數滿(R6-1)*4個鍵盤,再加上第R6行
  52.                   MOV A,R6      ;的列數R7-1,便得第幾個鍵盤按下
  53.                   MOV B,#4
  54.                   MUL AB
  55.                   DEC R7
  56.                   ADD A,R7
  57.                   MOV R7,A
  58. end_key:
  59.           RET
  60. delay_10ms:
  61.           MOV R7,#10
  62. delay0:
  63.           MOV R6,#0FAH
  64. delay1:
  65.           NOP                    ;   1us
  66.                   NOP                        ;  1us
  67. ……………………

  68. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼



所有資料51hei提供下載:
數碼管顯示4x4矩陣鍵盤的鍵號.zip (354.64 KB, 下載次數: 32)



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

使用道具 舉報

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

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美一区二区三区在线观看 | 亚洲欧美视频一区 | 男人天堂网址 | 国产福利91精品 | 国产精品欧美一区二区三区 | 亚洲精品国产精品国自产在线 | 天天干天天草 | 亚洲成人国产综合 | 久久久久亚洲精品 | 国产 日韩 欧美 在线 | 久久久.com | 91视频大全 | 99精品福利视频 | 国产精品一区二区av | 欧美一区二区三区免费在线观看 | 91精品国产一区二区三区动漫 | 欧洲妇女成人淫片aaa视频 | 亚洲欧洲成人av每日更新 | 亚洲精品一区二区三区蜜桃久 | 亚洲天堂精品久久 | 国产精品视频久久 | 日韩中文字幕在线视频 | 中文字幕国产高清 | 欧美日韩国产在线观看 | 久久九 | 黄色在线免费播放 | 91久久精品国产 | 伦理片97| 国产一区二区免费电影 | 日日噜噜夜夜爽爽狠狠 | 亚洲一区二区三区四区五区午夜 | 日本黄色激情视频 | 国产福利一区二区 | 精品免费国产视频 | 91精品国产乱码久久久久久久 | 欧美成人精品一区二区男人看 | 久久a久久 | 国产综合在线视频 | 日韩高清中文字幕 | 浮生影院免费观看中文版 | 在线午夜 |