芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

飞芯科技-芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

芯片复制STC51单片机八路抢答器制作

 芯片复制OK EQU 20H;抢答开始标志位
        RING EQU 22H;响铃标志位
        ORG 0000H
        AJMP MAIN
        ORG 0003H
        AJMP INT0SUB
        ORG 000BH
        AJMP T0INT
        ORG 0013H
        AJMP INT1SUB
        ORG 001BH
        AJMP T1INT
        ORG 0040H
芯片复制MAIN:   MOV R1,#30;初设抢答时间为30s
        MOV R2,#60;初设答题时间为60s
        MOV TMOD,#11H;设置未定时器/模式1
        MOV TH0,#0F0H
        MOV TL0,#0FFH;越高发声频率越高,越尖
        MOV TH1,#3CH
        MOV TL1,#0B0H;50ms为一次溢出中断
        SETB EA
        SETB ET0
        SETB ET1
SETB EX0
SETB EX1;允许四个中断,T0/T1/INT0/INT1
        CLR OK
CLR RING
         SETB TR1
         SETB TR0;一开始就运行定时器,以开始显示FFF.如果想重新计数,重置TH1/TL1就可以了
;=====查询程序=====
START:   MOV R5,#0BH
         MOV R4,#0BH
         MOV R3,#0BH
ACALL DISPLAY;未开始抢答时候显示FFF
         JB P3.0,NEXT;ddddddd
         ACALL DELAY
         JB P3.0,NEXT;去抖动,如果"开始键"按下就向下执行,否者跳到非法抢答查询
         ACALL BARK;按键发声
         MOV A,R1
  MOV R6,A;送R1->R6,因为R1中保存了抢答时间
     SETB OK;抢答标志位,用于COUNT只程序中判断是否查询抢答
     MOV R7,#01H  ;读抢答键数据信号标志,这里表示只读一次有用信号
     MOV R3,#0AH;抢答只显示计时,灭号数
        AJMP COUNT;进入倒计时程序,"查询有效抢答的程序"在COUNT里面
芯片复制NEXT:   JNB P1.0,FALSE1
    JNB P1.1,FALSE2
    JNB P1.2,FALSE3
    JNB P1.3,FALSE4
    JNB P1.4,FALSE5
    JNB P1.5,FALSE6
    JNB P1.6,FALSE7
    JNB P1.7,FALSE8
    AJMP START
;=====非法抢答处理程序=====
FALSE1: MOV R3,#01H
        AJMP ERROR
FALSE2: MOV R3,#02H
        AJMP ERROR
FALSE3: MOV R3,#03H
        AJMP ERROR
FALSE4: MOV R3,#04H
        AJMP ERROR
FALSE5: MOV R3,#05H
        AJMP ERROR
FALSE6: MOV R3,#06H
        AJMP ERROR
FALSE7: MOV R3,#07H
        AJMP ERROR
FALSE8: MOV R3,#08H
        AJMP ERROR
;=====INT0(抢答时间R1调整程序)=====
INT0SUB:MOV A,R1
        MOV B,#0AH
         DIV AB
         MOV R5,A
         MOV R4,B
         MOV R3,#0AH
         ACALL DISPLAY;先在两个时间LED上显示R1
         JNB P3.4,INC0;P3.4为+1s键,如按下跳到INCO
         JNB P3.5,DEC0;P3.5为-1s键,如按下跳到DECO
         JNB P3.1,BACK0;P3.1为确定键,如按下跳到BACKO
    AJMP INT0SUB
INC0:   MOV A,R1
CJNE A,#63H,ADD0;如果不是99,R2加1,如果加到99,R1就置0,重新加起。
        MOV R1,#00H
        ACALL DELAY1
AJMP INT0SUB
ADD0:   INC R1
        ACALL DELAY1
        AJMP INT0SUB
DEC0:   MOV A,R1
    JZ SETR1;如果R1为0, R1就置99,
    DEC R1
    ACALL DELAY1
    AJMP INT0SUB



联系方式

地址:石家庄市新华区民族路77号华强广场D座2009
电话:0311-88816616/87087811
手机:13315190088
传真:0311-67901001
联系人:张工
网址:www.feixindz.com
邮箱:feixindz@163.com
微信:xinpianjiemi
QQ:527263666/568069805

在线客服
热线电话

企业微信