找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

单片机密码锁proteus仿真和汇编语言源代码 数码管显示

查看数: 4308 | 评论数: 4 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2017-5-6 16:01

正文摘要:

最近用51单片机做了一个汇编语言的密码锁仿真,是用8位数码管显示的,希望可以帮到大家 密码锁的51单片机proteus仿真原理图:

回复

ID:1004296 发表于 2022-2-8 00:10
请问这是几位密码呢?
ID:102963 发表于 2020-12-25 12:53
落叶dwed 发表于 2017-5-6 16:02
以下8个字节存放8位数码管的段码 1.        LED_BIT_1 EQU 30H 2.        LED_BIT_2 EQU 31H 3.        LED_BIT_3 EQU 32H 4.        LED ...

这个也太乱了,乱到没法看!
ID:106195 发表于 2017-9-1 18:39
感谢分享,支持一下。
ID:197359 发表于 2017-5-6 16:02
以下8个字节存放8位数码管的段码 1.        LED_BIT_1 EQU 30H 2.        LED_BIT_2 EQU 31H 3.        LED_BIT_3 EQU 32H 4.        LED_BIT_4 EQU 33H 5.        LED_BIT_5 EQU 34H 6.        LED_BIT_6 EQU 35H 7.        LED_BIT_7 EQU 36H 8.        LED_BIT_8 EQU 37H 存放初始密码 9.        WORD_1 EQU 38H 10.        WORD_2 EQU 39H 11.        WORD_3 EQU 3AH 12.        WORD_4 EQU 3BH 13.        WORD_5 EQU 3CH 14.        WORD_6 EQU 3DH 存放用户输入的6位密码 15.        KEY_1 EQU 3EH 16.        KEY_2 EQU 3FH 17.        KEY_3 EQU 40H 18.        KEY_4 EQU 41H 19.        KEY_5 EQU 42H 20.        KEY_6 EQU 43H ***** 21.        CNT_A EQU 44H 22.        CNT_B EQU 45H 23.        KEY_CNT EQU 46H  已输出的密码位数 24.        LINE EQU 47H      按键行号 25.        ROW EQU 48H      按键列号 26.        VAL EQU 49H       键值 ***** 27.        ORG 00H 28.        SJMP START 29.        ORG 0BH 30.        LJMP INT_T0 31.        START: MOV CNT_A,#00H 32.               MOV CNT_B,#00H 33.               MOV KEY_CNT,#00H 34.               MOV LINE,#00H 35.               MOV ROW,#00H 36.                    MOV VAL,#00H 37.                    SETB P1.0 38.                    MOV LED_BIT_1,#00H 39.                    MOV LED_BIT_2,#00H 40.                    MOV LED_BIT_3,#00H 41.                    MOV LED_BIT_4,#00H 42.                    MOV LED_BIT_5,#00H 43.                    MOV LED_BIT_6,#00H 44.                    MOV LED_BIT_7,#79H 45.                    MOV LED_BIT_8,#73H 46.                    MOV KEY_1,#00H 47.                    MOV KEY_2,#00H 48.                    MOV KEY_3,#00H 49.                    MOV KEY_4,#00H 50.                    MOV KEY_5,#00H 51.                    MOV KEY_6,#00H 52.                    MOV WORD_1,#6 53.                    MOV WORD_2,#5 54.                    MOV WORD_3,#4 55.                    MOV WORD_4,#3 56.                    MOV WORD_5,#2 57.                    MOV WORD_6,#1 58.                    MOV TMOD,#01H 59.                    MOV TH0,#(65536-700)/256 60.                    MOV TL0,#(65536-700)/256 61.                    MOV IE,#82H 62.        A0:       LCALL DISP 63.        LSCAN: MOV P3,#0F0H 64.        L1:        JNB P3.0,L2 65.                     LCALL DLY_S 66.                     JNB P3.0,L2 67.                     MOV LINE,#00H 68.                     LJMP RSCAN 69.        L2:        JNB P3.1,L3 70.                     LCALL DLY_S 71.                     JNB P3.1,L3 72.                     MOV LINE,#01H 73.                     LJMP RSCAN 74.        L3:        JNB P3.2,L4 75.                     LCALL DLY_S 76.                     JNB P3.2,L4 77.                     MOV LINE,#02H 78.                     LJMP RSCAN 79.        L4:        JNB P3.3,A0 80.                     LCALL DLY_S 81.                     JNB P3.3,A0 82.                     MOV LINE,#03H 83.        RSCAN: MOV P3,#0FH 84.        C1:        JNB P3.4,C2 85.                     MOV ROW,#00H 86.                     LJMP CALCU 87.        C2:        JNB P3.5,C3 88.                     MOV ROW,#01H 89.                     LJMP CALCU 90.        C3:        JNB P3.6,C1 91.                     MOV ROW,#02H 92.        CALCU: MOV A,LINE 93.                     MOV B,#03H 94.                     MUL AB 95.                     ADD A,ROW 96.                     MOV VAL,A 97.        CJNE A,#0AH,J1 98.        MOV R1,KEY_CNT 99.        CJNE R1,#00H,J2 100.        LCALL ALARM_1 101.        LJMP START 102.        J2: LCALL SHIFTL 103.             DEC KEY_CNT 104.        W00: LCALL DISP 105.                   MOV A,P3 106.                   CJNE A,#0FH,W01 107.                   LJMP A0 108.        W01:   MOV A,P3 109.                   CJNE A,#0F0H,W02 110.                   LJMP A0 111.        W02:   SJMP W00 112.        J1:       MOV A,VAL 113.                   CJNE A,#0BH,J3  判断是否为ENTER键 114.                   MOV R1,KEY_CNT 115.                   CJNE R1,#06H,J4 116.                   MOV A,WORD_1  比较密码 117.                   CJNE A,3EH,J5 118.                   MOV A,WORD_2 119.                   CJNE A,3FH,J5 120.                   MOV A,WORD_3 121.                   CJNE A,40H,J5 122.                   MOV A,WORD_4 123.                   CJNE A,41H,J5 124.                   MOV A,WORD_5 125.                   CJNE A,42H,J5 126.                   MOV A,WORD_6 127.                   CJNE A,43H,J5 128.                   CLR P1.0 129.                   LCALL DLY_L 130.                   LJMP FINI 131.        J5:       LCALL ALARM_2 132.                   LJMP START 133.        J4:       LCALL ALARM_1 134.                   LJMP START 135.        J3:       INC KEY_CNT 136.                   MOV A,KEY_CNT 137.                   CJNE A,#07H,K1 138.                   LCALL ALARM_1 139.        W10:   LCALL DISP 140.                   MOV A,P3 141.                   CJNE A,#0FH,W11 142.                   LJMP START 143.        W11:   MOV A,P3 144.                   CJNE A,#0F0H,W12 145.                   LJMP START 146.        W12:   SJMP W10 147.                   LJMP START 148.                   LJMP START 149.        K1:      LCALL SHIFTL 150.        W20:   LCALL DISP 151.                   MOV A,P3 152.                   CJNE A,#0FH,W21 153.                   LJMP A0 154.        W21:   MOV A,P3 155.                   CJNE A,#0F0H,W22 156.                   LJMP A0 157.        W22:   SJMP W20 158.                   LJMP A0 159.        ALARM_1; SETB TR0 160.                         JB TR0,$ 161.                         LCALL DLY_L 162.                         RET 163.        INT_T0:CPL P1.7 164.        MOV TH0,#100 165.        MOV TL0,#253 166.        INC CNT_A 167.        MOV R1,CNT_A 168.        CJNE R1,#30,RETUNE 169.        MOV CNT_A,#00H 170.        INC CNT_B 171.        MOV R1,CNT_B 172.        CJNE R1,#20,RETUNE 173.        MOV CNT_A,#00H 174.        MOV CNT_B,#00H 175.        CLR TR0 176.        RETUNE:RETI 177.        SHIFTL: MOV LED_BIT_6,LED_BIT_5 178.                MOV LED_BIT_5,LED_BIT_4 179.                MOV LED_BIT_4,LED_BIT_3 180.                MOV LED_BIT_2,LED_BIT_1 181.                MOV LED_BIT_1,#40H 182.                MOV KEY_6,KEY_5 183.                MOV KEY_5,KEY_4 184.                MOV KEY_4,KEY_3 185.                MOV KEY_3,KEY_2 186.                MOV KEY_2,KEY_1 187.                MOV KEY_1,VAL 188.        RET 189.        SHIFTL: MOV LED_BIT_1,LED_BIT_2 190.                MOV LED_BIT_2,LED_BIT_3 191.                MOV LED_BIT_3,LED_BIT_4 192.                MOV LED_BIT_4,LED_BIT_5 193.                MOV LED_BIT_5,LED_BIT_6 194.                MOV LED_BIT_6,#00H 195.                MOV KEY_1,KEY_2 196.                MOV KEY_2,KEY_3 197.                MOV KEY_3,KEY_4 198.                MOV KEY_4,KEY_5 199.                MOV KEY_5,KEY_6 200.                MOV KEY_6,#00H 201.        RET 202.        DISP:CLR P2.7 203.             MOV P0,LED_BIT_8 204.             LCALL DLY_S 205.             SETB P2.7 206.             CLR P2.6 207.             MOV P0,LED_BIT_7 208.             LCALL DLY_S 209.             SETB P2.6 210.             CLR P2.5 211.             MOV P0,LED_BIT_6 212.             LCALL DLY_S 213.             SETB P2.5 214.             CLR P2.4 215.             MOV P0,LED_BIT_5 216.             LCALL DLY_S 217.             SETB P2.4 218.             CLR P2.3 219.             MOV P0,LED_BIT_4 220.             LCALL DLY_S 221.             SETB P2.3 222.             CLR P2.2 223.             MOV P0,LED_BIT_3 224.             LCALL DLY_S 225.             SETB P2.2 226.             CLR P2.1 227.             MOV P0,LED_BIT_2 228.             LCALL DLY_S 229.             SETB P2.1 230.             CLR P2.0 231.             MOV P0,LED_BIT_1 232.             LCALL DLY_S 233.             SETB P2.0 234.             RET 235.        DLY_S:MOV R6,#10 236.        D1:MOV R7,#250 237.        DJNZ R7,$ 238.        DJNZ R6,D1 239.        RET 240.        DLY_L:MOV R5,#100 241.        D2:MOV R6,#100 242.        D3:MOV R7,#248 243.        DJNE R7,$ 244.        DJNE R6,D3 245.        DJNE R5,D2 246.        RET 247.        FINI:NOP 248.        END

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表