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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 2249|回復(fù): 5
收起左側(cè)

小白求救!為啥在proteus上無(wú)法仿真出單片機(jī)密碼鎖結(jié)果,謝謝!

[復(fù)制鏈接]
ID:668068 發(fā)表于 2019-12-23 00:12 | 顯示全部樓層 |閱讀模式
150黑幣
項(xiàng)目:電子密碼鎖
可以設(shè)置6位密碼,密碼通過(guò)鍵盤輸入,若密碼正確,則開(kāi)鎖。要求密碼可以由用戶自己設(shè)定,鎖打開(kāi)后可以修改密碼。修改之前必須再次輸入密碼,輸入新密碼的時(shí)候確認(rèn)兩次。如果密碼輸入錯(cuò)誤,報(bào)警。

我按照教材上做的proteus仿真如圖:(詳情見(jiàn)附件中的圖片)

但是仿真開(kāi)始后電子顯示屏并沒(méi)有顯示數(shù)字,按按鍵后也沒(méi)有反應(yīng),不知道是啥問(wèn)題。程序和仿真圖都是按照教材畫的,教材是《單片機(jī)實(shí)踐教程》(孫明)。謝謝!

程序和仿真也放在附件里了。比較著急,求解答,謝謝。
捕獲.JPG
單片機(jī)程序如下:(其實(shí)好多內(nèi)容都是重復(fù)的)
  1. ;八位數(shù)碼管的段碼
  2. LED_BIT_1 EQU 30H
  3. LED_BIT_2 EQU 31H
  4. LED_BIT_3 EQU 32H
  5. LED_BIT_4 EQU 33H
  6. LED_BIT_5 EQU 34H
  7. LED_BIT_6 EQU 35H
  8. LED_BIT_7 EQU 36H
  9. LED_BIT_8 EQU 37H

  10. ;初始的6位密碼
  11. WORD_1 EQU 38H
  12. WORD_2 EQU 39H
  13. WORD_3 EQU 3AH
  14. WORD_4 EQU 3BH
  15. WORD_5 EQU 3CH
  16. WORD_6 EQU 3DH

  17. ;輸入的6位密碼
  18. KEY_1 EQU 3EH
  19. KEY_2 EQU 3FH
  20. KEY_3 EQU 40H
  21. KEY_4 EQU 41H
  22. KEY_5 EQU 42H
  23. KEY_6 EQU 43H

  24. ;***************************************
  25. CNT_A EQU 44H
  26. CNT_B EQU 45H
  27. KEY_CNT EQU 46H
  28. LINE EQU 47H
  29. ROW EQU 48H
  30. VAL EQU 49H
  31. ;***************************************

  32. ;初始化程序,包括數(shù)據(jù)存儲(chǔ)空間初始化,設(shè)置初始密碼
  33.                 ORG 00H
  34.                 SJMP START
  35.                 ORG 0BH
  36.                 LJMP INT_T0
  37. START:        MOV CNT_A,#00H
  38.                 MOV CNT_B,#00H
  39.                 MOV KEY_CNT,#00H
  40.                 MOV LINE,#00H
  41.                 MOV ROW,#00H
  42.                 MOV VAL,#00H
  43.                 SETB P1.0
  44.                 MOV LED_BIT_1,#00H
  45.                 MOV LED_BIT_2,#00H
  46.                 MOV LED_BIT_3,#00H
  47.                 MOV LED_BIT_4,#00H
  48.                 MOV LED_BIT_5,#00H
  49.                 MOV LED_BIT_6,#00H
  50.                 MOV LED_BIT_7,#79H
  51.                 MOV LED_BIT_8,#73H

  52.                 MOV KEY_1,#00H
  53.                 MOV KEY_2,#00H
  54.                 MOV KEY_3,#00H
  55.                 MOV KEY_4,#00H
  56.                 MOV KEY_5,#00H
  57.                 MOV KEY_6,#00H

  58.                 MOV WORD_1,#6
  59.                 MOV WORD_2,#5
  60.                 MOV WORD_3,#4
  61.                 MOV WORD_4,#3
  62.                 MOV WORD_5,#2
  63.                 MOV WORD_6,#1

  64.                 MOV TMOD,#01H
  65.                 MOV TH0,#(65536-700)/256
  66.                 MOV TL0,#(65536-700) MOD 256
  67.                 MOV IE,#82H

  68. A0:                LCALL DISP

  69. ;****************************************
  70. LSCAN:        MOV P3,#0F0H
  71. L1:                JNB P3.0,L2
  72.                 LCALL DLY_S
  73.                 JNB P3.0,L2
  74.                 MOV LINE,#00H
  75.                 LJMP RSCAN
  76. L2:                JNB P3.1,L3
  77.                 LCALL DLY_S
  78.                 JNB P3.1,L3
  79.                 MOV LINE,#01H
  80.                 LJMP RSCAN
  81. L3:                JNB P3.2,L4
  82.                 LCALL DLY_S
  83.                 JNB P3.2,L4
  84.                 MOV LINE,#02H
  85.                 LJMP RSCAN
  86. L4:                JNB P3.3,A0
  87.                 LCALL DLY_S
  88.                 JNB P3.3,A0
  89.                 MOV LINE,#03H

  90. RSCAN:        MOV P3,#0FH
  91. C1:                JNB P3.4,C2
  92.                 MOV ROW,#00H
  93.                 LJMP CALCU
  94. C2:                JNB P3.5,C3
  95.                 MOV ROW,#01H
  96.                 LJMP CALCU
  97. C3:                JNB P3.6,C1
  98.                 MOV ROW,#02H

  99. CALCU:        MOV A,LINE
  100.                 MOV B,#03H
  101.                 MUL AB
  102.                 ADD A,ROW
  103.                 MOV VAL,A

  104. ;******************************************
  105. ;以下為按鍵處理程序,對(duì)不同的按鍵做出響應(yīng)
  106.                 CJNE A,#0AH,J1
  107.                 MOV R1,KEY_CNT
  108.                 CJNE R1,#00H,J2
  109.                 LCALL ALARM_1

  110.                 LJMP START
  111. J2:                LCALL SHIFTR
  112.                 DEC KEY_CNT

  113. W00:        LCALL DISP                        ;等待按鍵抬起
  114.                 MOV A,P3
  115.                 CJNE A,#0FH,W01
  116.                 LJMP A0
  117. W01:        MOV A,P3
  118.                 CJNE A,#0F0H,W02
  119.                 LJMP A0
  120. W02:        SJMP W00

  121. J1:                MOV A,VAL
  122.                 CJNE A,#0BH,J3                ;判斷是否為ENTER按鍵
  123.                 MOV R1,KEY_CNT
  124.                 CJNE R1,#06H,J4

  125.                 MOV A,WORD_1
  126.                 CJNE A,3EH,J5
  127.                 MOV A,WORD_2
  128.                 CJNE A,3FH,J5
  129.                 MOV A,WORD_3
  130.                 CJNE A,40H,J5
  131.                 MOV A,WORD_4
  132.                 CJNE A,41H,J5
  133.                 MOV A,WORD_5
  134.                 CJNE A,42H,J5
  135.                 MOV A,WORD_6
  136.                 CJNE A,43H,J5

  137.                 CLR P1.0
  138.                 LCALL DLY_L
  139.                 LJMP FINI

  140. J5:                LCALL ALARM_2
  141.                 LJMP START

  142. J4:                LCALL ALARM_1
  143.                 LJMP START

  144. J3:                INC KEY_CNT                        ;按下數(shù)字鍵
  145.                 MOV A,KEY_CNT
  146.                 CJNE A,#07H,K1
  147.                 LCALL ALARM_1

  148. W10:        LCALL DISP                        ;等待按鍵抬起
  149.                 MOV A,P3
  150.                 CJNE A,#0FH,W11
  151.                 LCALL START
  152. W11:        MOV A,P3
  153.                 CJNE A,#0F0H,W12
  154.                 LCALL START
  155. W12:        SJMP W10
  156.                 LJMP START

  157.                 LJMP START
  158. K1:                LCALL SHIFTL

  159. W20:        LCALL DISP
  160.                 MOV A,P3
  161.                 CJNE A,#0FH,W21
  162.                 LJMP A0
  163. W21:        MOV A,P3
  164.                 CJNE A,#0F0H,W22
  165.                 LJMP A0
  166. W22:        SJMP W20
  167.                 LJMP A0

  168. ALARM_1:SETB TR0
  169.                 JB TR0,$
  170.                 RET
  171. ALARM_2:SETB TR0
  172.                 JB TR0,$
  173.                 LCALL DLY_L
  174.                 RET

  175. ;*******************************************
  176. ;定時(shí)器中斷服務(wù)程序,用于聲音報(bào)警
  177. INT_T0:
  178.                 CPL P1.7
  179.                 MOV TH0,#(65536-700)/256
  180.                 MOV TL0,#(65536-700) MOD 256
  181.                 INC CNT_A
  182.                 MOV R1,CNT_A
  183.                 CJNE R1,#30,RETUNE
  184.                 MOV CNT_A,#00H
  185.                 INC CNT_B
  186.                 MOV R1,CNT_B
  187.                 CJNE R1,#20,RETUNE
  188.                 MOV CNT_A,#00H
  189.                 MOV CNT_B,#00H
  190.                 CLR TR0
  191. RETUNE: RETI

  192. ;*******************************************
  193. ;段碼,輸入密碼左移子程序
  194. SHIFTL:        MOV LED_BIT_6,LED_BIT_5
  195.                 MOV LED_BIT_5,LED_BIT_4
  196.                 MOV LED_BIT_4,LED_BIT_3
  197.                 MOV LED_BIT_3,LED_BIT_2
  198.                 MOV LED_BIT_2,LED_BIT_1
  199.                 MOV LED_BIT_1,#40H
  200.                 MOV KEY_6,KEY_5
  201.                 MOV KEY_5,KEY_4
  202.                 MOV KEY_4,KEY_3
  203.                 MOV KEY_3,KEY_2
  204.                 MOV KEY_2,KEY_1
  205.                 MOV KEY_1,VAL
  206.                 RET

  207. ;*******************************************
  208. ;段碼,輸入密碼右移子程序
  209. SHIFTR:        MOV LED_BIT_1,LED_BIT_2
  210.                 MOV LED_BIT_2,LED_BIT_3
  211.                 MOV LED_BIT_3,LED_BIT_4
  212.                 MOV LED_BIT_4,LED_BIT_5
  213.                 MOV LED_BIT_5,LED_BIT_6
  214.                 MOV LED_BIT_6,#00H
  215.                 MOV KEY_1,KEY_2
  216.                 MOV KEY_2,KEY_3
  217.                 MOV KEY_3,KEY_4
  218.                 MOV KEY_4,KEY_5
  219.                 MOV KEY_5,KEY_6
  220.                 MOV KEY_6,#00H
  221.                 RET

  222. ;*******************************************
  223. ;以下為數(shù)碼顯示子程序
  224. DISP:        CLR P2.7
  225.                 MOV P0,LED_BIT_8
  226.                 LCALL DLY_S
  227.                 SETB P2.7
  228.                
  229.                 CLR P2.6
  230.                 MOV P0,LED_BIT_7
  231.                 LCALL DLY_S
  232.                 SETB P2.6

  233.                 CLR P2.5
  234.                 MOV P0,LED_BIT_6
  235.                 LCALL DLY_S
  236.                 SETB P2.5

  237.                 CLR P2.4
  238.                 MOV P0,LED_BIT_5
  239.                 LCALL DLY_S
  240.                 SETB P2.4

  241.                 CLR P2.3
  242.                 MOV P0,LED_BIT_4
  243.                 LCALL DLY_S
  244.                 SETB P2.3

  245.                 CLR P2.2
  246.                 MOV P0,LED_BIT_3
  247.                 LCALL DLY_S
  248.                 SETB P2.2

  249.                 CLR P2.1
  250.                 MOV P0,LED_BIT_2
  251.                 LCALL DLY_S
  252.                 SETB P2.1

  253.                 CLR P2.0
  254.                 MOV P0,LED_BIT_1
  255.                 LCALL DLY_S
  256.                 SETB P2.0

  257.                 RET

  258. ;*******************************************
  259. DLY_S:        MOV R6,#10
  260. D1:                MOV R7,#250
  261.                 DJNZ R7,$
  262.                 DJNZ R6,D1
  263.                 RET

  264. DLY_L:        MOV R5,#100
  265. D2:                MOV R6,#100
  266. D3:                MOV R7,#248
  267.                 DJNZ R7,$
  268.                 DJNZ R6,D3
  269.                 DJNZ R5,D2
  270.                 RET
  271. FINI:        NOP
  272.                 END
復(fù)制代碼



程序.zip

56.19 KB, 下載次數(shù): 7

回復(fù)

使用道具 舉報(bào)

ID:584814 發(fā)表于 2019-12-23 15:50 | 顯示全部樓層
A、B口接反了罷
回復(fù)

使用道具 舉報(bào)

ID:584814 發(fā)表于 2019-12-23 16:04 | 顯示全部樓層
http://www.zg4o1577.cn/bbs/dpj-80590-1.html
單片機(jī)通過(guò)74LS245驅(qū)動(dòng)數(shù)碼管顯示 Proteus仿真原理圖和源代碼
這個(gè)是現(xiàn)成的,只要加個(gè)輸入和修改密碼就可以。話說(shuō)匯編太高大上看不懂
回復(fù)

使用道具 舉報(bào)

ID:584814 發(fā)表于 2019-12-24 12:21 | 顯示全部樓層
忍不住又看了一下,感覺(jué)AT89C51又不是STC的芯片,不畫晶振什么的可以正常工作么 ?
回復(fù)

使用道具 舉報(bào)

ID:149389 發(fā)表于 2019-12-24 14:38 | 顯示全部樓層
數(shù)碼管選用錯(cuò)誤!
數(shù)碼管位選,低電平有效,所有要使用共陰極數(shù)碼管7SEG-MPX8-CC-BLUE
CA 共陽(yáng)極 Common Anode
CC 共陰極 Common Cathode

pic001.png
回復(fù)

使用道具 舉報(bào)

ID:627214 發(fā)表于 2019-12-28 09:49 | 顯示全部樓層
用匯編的都是大佬
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 成人在线精品视频 | 91色在线| av性色全交蜜桃成熟时 | 国产欧美一区二区三区日本久久久 | 五月天天丁香婷婷在线中 | 亚洲视频一区在线 | 久久久久成人精品亚洲国产 | 久久久久国产精品午夜一区 | 五月激情婷婷在线 | 91久久精品一区二区三区 | 天天草视频 | 亚洲精品视频久久 | 欧美亚洲在线视频 | 国产午夜在线观看 | 成人精品鲁一区一区二区 | 成人免费视频网 | 热久久久| 国产精品视频在线播放 | 成人欧美一区二区三区1314 | 日韩一区在线播放 | 真人毛片| 日日夜夜精品视频 | 在线观看av网站 | 精品在线一区二区三区 | 狠狠爱网址 | 国产日韩精品视频 | 午夜电影福利 | 久久精品国产精品青草 | 欧美 中文字幕 | 国产精品视频导航 | 日韩视频国产 | 国产精品网址 | 国产第一亚洲 | 日本人做爰大片免费观看一老师 | 成人午夜影院 | 中文字幕一区二区三区四区五区 | 久久精品国产v日韩v亚洲 | 午夜视频在线播放 | 欧美国产精品久久久 | 久久黄网 | 日日噜噜夜夜爽爽狠狠 |