⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 my_pt2314.lst

📁 用c51的遥控音前级
💻 LST
📖 第 1 页 / 共 5 页
字号:
                     494     
0313                 495     WR_2314_BALANCE:
0313 F53D            496     MOV PT2314_MSB,A
0315 1208C9          497     LCALL PT2314_WR
0318 22              498     RET
                     499     ;------------------------------
                     500     ;BCD2BIN:
                     501     ;MOV    A,BCD0
                     502     ;MOV    B,#10
                     503     ;MUL    AB
                     504     ;ADD    A,BCD1
                     505     ;MOV    BIN0,A
                     506     ;RET
                     507     ;------------------------------
0319                 508     BIN2BCD:
                     509     ;MOV    A,TMP
0319 75F00A          510     MOV     B,#10
031C 84              511     Div     AB
031D F532            512     MOV     DISP0,A
031F 85F033          513     MOV     DISP1,B
0322 22              514     RET
                     515     ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
0323                 516     TIME0: ;定时器0的中断处理程序
0323 C0E0            517     PUSH    ACC
0325 C0D0            518     PUSH    PSW ;将PSW和ACC推入堆栈保护
A51 MACRO ASSEMBLER  MY_PT2314                                                            03/02/2006 09:51:14 PAGE     9

0327 758D15          519     MOV     TH1,#15H
032A 758BA0          520     MOV     TL1,#0a0H
032D D2D4            521     SETB    rs1             ;选择寄存器组
032F D2D3            522     setb    rs0
0331 200208          523     jb      re_key,t_res1
0334 7800            524     mov     r0,#0
0336 7900            525     mov     r1,#0
0338 7A00            526     mov     r2,#0
033A 6158            527     AJMP    T_RE
033C                 528     t_res1: 
033C 08              529     INC     R0
033D B80A05          530     CJNE    R0,#10,T_RET 
0340 7800            531     MOV     R0,#0 
0342 B2A3            532     CPL     P2.3
0344 09              533     INC     R1
0345                 534     T_RET:  
0345 B93C10          535     CJNE    R1,#60,T_RE
0348 7900            536     MOV     R1,#0
034A 200208          537     jb      re_key,t_res
034D 7800            538     MOV     R0,#0
034F 7900            539     MOV     R1,#0
0351 7A00            540     MOV     R2,#0
0353 6158            541     AJMP    T_RE
0355                 542     t_res:  
0355 12015B          543     LCALL   DIS_VOL
0358                 544     T_RE:   
0358 758D15          545     MOV     TH1,#15H
035B 758BA0          546     MOV     TL1,#0a0H
035E D0D0            547     POP     PSW
0360 D0E0            548     POP     ACC
0362 32              549     RETI
                     550     ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
                     551     ;更换24C08时初始化24C08
0363                 552     W2408_STAR:
0363 1200CF          553     LCALL   DELAY10
0366 7401            554     MOV     A,#B_ADD
0368 75F007          555     MOV     B,#7
036B 120963          556     LCALL   WT24
036E 1200CF          557     LCALL   DELAY10
0371 7402            558     MOV     A,#T_ADD
0373 75F007          559     MOV     B,#7
0376 120963          560     LCALL   WT24
0379 1200CF          561     LCALL   DELAY10
037C 7404            562     MOV     A,#SP_L_ADD
037E 75F000          563     MOV     B,#0
0381 120963          564     LCALL   WT24
0384 1200CF          565     LCALL   DELAY10
0387 7405            566     MOV     A,#SP_R_ADD
0389 75F000          567     MOV     B,#0
038C 120963          568     LCALL   WT24
038F 1200CF          569     LCALL   DELAY10
0392 22              570     RET
                     571     ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
                     572     ;$include (KEY4X4.ASM)
                +1   573     ;************************************* 
                +1   574     ;*                                   * 
                +1   575     ;*          键工作子程序             * 
                +1   576     ;*                               * 
                +1   577     ;************************************* 
  003F          +1   578     KEYBUFF EQU 3FH
  00A0          +1   579     KEY_IO  EQU P2
                +1   580     
                +1   581     
                +1   582     ;矩阵键盘扫描,键盘接在P2口
0393            +1   583     KEY4X4: 
0393 75A0F0     +1   584     MOV     KEY_IO,#11110000B
A51 MACRO ASSEMBLER  MY_PT2314                                                            03/02/2006 09:51:14 PAGE    10

0396 E5A0       +1   585     MOV     A,KEY_IO
0398 B4F002     +1   586     CJNE    A,#11110000B,HAVE_KEY
039B 0167       +1   587     JMP     PT2314_START
                +1   588     
039D            +1   589     STAR_KEY:            
039D            +1   590     HAVE_KEY:
039D 75A0FB     +1   591     MOV     KEY_IO,#11111011B
03A0 30A705     +1   592     JNB     KEY_IO.7,SVAE24         ;K0按下就转到数字设置
03A3 30A60B     +1   593     JNB     KEY_IO.6,REMOTE_SEL
03A6 01CB       +1   594     JMP     MAIN
                +1   595     
03A8            +1   596     SVAE24: 
03A8 91A0       +1   597     ACALL   KEYWAIT
03AA 120363     +1   598     LCALL   W2408_STAR
03AD 91A0       +1   599     ACALL   KEYWAIT;_SOTP
03AF 0167       +1   600     JMP     PT2314_START
                +1   601     ;RET
03B1            +1   602     REMOTE_SEL:
03B1 91A0       +1   603     ACALL   KEYWAIT
03B3 C203       +1   604     CLR     IR_SET_BIT
03B5 C202       +1   605     CLR     RE_KEY
03B7 120C77     +1   606     LCALL   DIS_IR_SET
03BA 91A5       +1   607     ACALL   KEYWAIT_SOTP
03BC 1203C1     +1   608     LCALL   KEY
03BF 01CB       +1   609     JMP     MAIN
                +1   610     ;-----------------------------------
                +1   611     ;以下为输入数字的键盘扫描
                +1   612     ;------------------------------------
03C1            +1   613     KEY:
03C1 00         +1   614     NOP
03C2            +1   615     LINE1:
03C2 75A0FE     +1   616     MOV     KEY_IO,#11111110B
03C5 30A738     +1   617     JNB     KEY_IO.7,K0
03C8 30A63C     +1   618     JNB     KEY_IO.6,K1
03CB 30A540     +1   619     JNB     KEY_IO.5,K2;K_ENTER
03CE 30A444     +1   620     JNB     KEY_IO.4,K3;K_ESC
                +1   621     ;--------------------------------
03D1            +1   622     LINE2:
03D1 75A0FD     +1   623     MOV     KEY_IO,#11111101B
03D4 30A745     +1   624     JNB     KEY_IO.7,K4
03D7 30A649     +1   625     JNB     KEY_IO.6,K5
03DA 30A54D     +1   626     JNB     KEY_IO.5,K6
03DD 30A451     +1   627     JNB     KEY_IO.4,K7
                +1   628     ;-------------------------------
03E0            +1   629     LINE3:
03E0 75A0FB     +1   630     MOV     KEY_IO,#11111011B
03E3 30A752     +1   631     JNB     KEY_IO.7,K8
03E6 30A656     +1   632     JNB     KEY_IO.6,K9
03E9 30A55A     +1   633     JNB     KEY_IO.5,K10
03EC 30A45E     +1   634     JNB     KEY_IO.4,K11
                +1   635     ;-------------------------------
03EF            +1   636     LINE4:
03EF 75A0F7     +1   637     MOV     KEY_IO,#11110111B
03F2 30A75F     +1   638     JNB     KEY_IO.7,K12
03F5 30A663     +1   639     JNB     KEY_IO.6,K13
03F8 30A567     +1   640     JNB     KEY_IO.5,K14;K_ENTER
03FB 30A46B     +1   641     JNB     KEY_IO.4,K15;K_ESC
                +1   642     ;--------------------------------
03FE 61C2       +1   643     AJMP    LINE1
                +1   644     ;-------------------------------
0400            +1   645     K0:
0400 753F00     +1   646     MOV     KEYBUFF,#0
0403 91A0       +1   647     ACALL   KEYWAIT
0405 8170       +1   648     AJMP    YIWEI
0407            +1   649     K1:
0407 753F01     +1   650     MOV     KEYBUFF,#1
A51 MACRO ASSEMBLER  MY_PT2314                                                            03/02/2006 09:51:14 PAGE    11

040A 91A0       +1   651     ACALL   KEYWAIT
040C 8170       +1   652     AJMP    YIWEI
040E            +1   653     K2:
040E 753F02     +1   654     MOV     KEYBUFF,#2
0411 91A0       +1   655     ACALL   KEYWAIT
0413 8170       +1   656     AJMP    YIWEI
0415            +1   657     K3:
0415 753F03     +1   658     MOV     KEYBUFF,#3
0418 91A0       +1   659     ACALL   KEYWAIT
041A 8170       +1   660     AJMP    YIWEI
041C            +1   661     K4:
041C 753F04     +1   662     MOV     KEYBUFF,#4
041F 91A0       +1   663     ACALL   KEYWAIT
0421 8170       +1   664     AJMP    YIWEI
0423            +1   665     K5:
0423 753F05     +1   666     MOV     KEYBUFF,#5
0426 91A0       +1   667     ACALL   KEYWAIT
0428 8170       +1   668     AJMP    YIWEI
042A            +1   669     K6:
042A 753F06     +1   670     MOV     KEYBUFF,#6
042D 91A0       +1   671     ACALL   KEYWAIT
042F 8170       +1   672     AJMP    YIWEI
0431            +1   673     K7:
0431 753F07     +1   674     MOV     KEYBUFF,#7
0434 91A0       +1   675     ACALL   KEYWAIT
0436 8170       +1   676     AJMP    YIWEI
0438            +1   677     K8:
0438 753F08     +1   678     MOV     KEYBUFF,#8
043B 91A5       +1   679     ACALL   KEYWAIT_SOTP
043D 8170       +1   680     AJMP    YIWEI
043F            +1   681     K9:
043F 753F09     +1   682     MOV     KEYBUFF,#9
0442 91A5       +1   683     ACALL   KEYWAIT_SOTP
0444 8170       +1   684     AJMP    YIWEI
0446            +1   685     K10:
0446 753F0A     +1   686     MOV     KEYBUFF,#10
0449 91A5       +1   687     ACALL   KEYWAIT_SOTP
044B 8170       +1   688     AJMP    YIWEI
044D            +1   689     K11:
044D 753F0B     +1   690     MOV     KEYBUFF,#11
0450 91A5       +1   691     ACALL   KEYWAIT_SOTP
0452 8170       +1   692     AJMP    YIWEI
0454            +1   693     K12:
0454 753F0C     +1   694     MOV     KEYBUFF,#12
0457 91A5       +1   695     ACALL   KEYWAIT_SOTP
0459 8170       +1   696     AJMP    YIWEI
045B            +1   697     K13:
045B 753F0D     +1   698     MOV     KEYBUFF,#13
045E 91A5       +1   699     ACALL   KEYWAIT_SOTP
0460 8170       +1   700     AJMP    YIWEI
0462            +1   701     K14:
0462 753F0E     +1   702     MOV     KEYBUFF,#14
0465 91A5       +1   703     ACALL   KEYWAIT_SOTP
0467 8170       +1   704     AJMP    YIWEI
0469            +1   705     K15:
0469 753F0F     +1   706     MOV     KEYBUFF,#15
046C 91A5       +1   707     ACALL   KEYWAIT_SOTP
046E 8170       +1   708     AJMP    YIWEI
                +1   709     ;---------------------------------------
                +1   710     ;K_ENTER:
                +1   711     ;LCALL  KEYWAIT
                +1   712     
                +1   713     ;RET
                +1   714     ;K_ESC:
                +1   715     ;LCALL  KEYWAIT
                +1   716     ;LCALL  DATA_ESC
A51 MACRO ASSEMBLER  MY_PT2314                                                            03/02/2006 09:51:14 PAGE    12

                +1   717     ;RET
                +1   718     ;----------------------------------------
0470            +1   719     YIWEI:
0470 20030B     +1   720     JB      IR_SET_BIT,KEY_WORK
0473 C202       +1   721     CLR     RE_KEY
                +1   722     ;ACALL  KEYWAIT_SOTP
0475 1205F5     +1   723     LCALL   IR_SEL
0478 91A5       +1   724     ACALL   KEYWAIT_SOTP
047A C203       +1   725     CLR     IR_SET_BIT
047C 61C2       +1   726     AJMP    LINE1
                +1   727     
047E            +1   728     KEY_WORK:
047E C202       +1   729     CLR     RE_KEY
0480 E53F       +1   730     MOV     A,KEYBUFF
0482 B40002     +1   731     CJNE    A,#0,VOL1
0485 818F       +1   732     AJMP VOL_CON
0487            +1   733     VOL1:
0487 B40102     +1   734     CJNE    A,#1,VOL2
048A 818F       +1   735     AJMP VOL_CON
048C            +1   736     VOL2:
048C B40C05     +1   737     CJNE    A,#12,MUTE_EXT
048F            +1   738     VOL_CON:
048F 1200D8     +1   739     LCALL   OPREAT
0492 61C2       +1   740     AJMP    LINE1
0494            +1   741     MUTE_EXT:
0494 300102     +1   742     JNB     MUTE_BIT,MUTE_D
0497 61C2       +1   743     AJMP    LINE1
0499            +1   744     MUTE_D:

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -