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

📄 t6620.lst

📁 基于NT69P20的遥控PS2键盘处理程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
0585  0156  9951            BC      DELAY_N_10mS_1;2      ITIME
0586  0157  7F22            LDI     CT1,0EH
0587  0158  FFFF            NOP
0588  0159  FFFF            NOP
0589  015A  FFFF            NOP
0590  015B  FFFF            NOP
0591  015C  FFFF            NOP
0592  015D  FFFF            NOP
0593  015E  FFFF            NOP
0594  015F  58A3            SBIM    CT2,01H
0595  0160  9951            BC      DELAY_N_10mS_1
0596  0161  E14B            JMP     DELAY_N_10mS
0597  0162          DELAY_N_10mS_E:
0598  0162  D400            RTNI    
0599                        
0600  0163          DELAY_N_10uS:
0601  0163  58A4            SBIM    PARM,01H ;judge parmater is >0
0602  0164  896C            BNC     DELAY_N_10uS_E
0603  0165  FFFF            NOP
0604  0166  FFFF            NOP
0605  0167  FFFF            NOP
0606  0168  FFFF            NOP             
0607  0169  FFFF            NOP
0608  016A  FFFF            NOP
0609  016B  E163            JMP     DELAY_N_10uS
0610  016C          DELAY_N_10uS_E:
0611  016C  D400            RTNI
0612                        
0613  016D          DELAY_N_100uS:
0614  016D  7D21            LDI     CT0,0AH
0615  016E  58A4            SBIM    PARM,01H ;judge parmater is >0
0616  016F  897B            BNC     DELAY_N_100uS_E
0617  0170          DELAY_N_100uS_1:
0618  0170  FFFF            NOP
0619  0171  FFFF            NOP
0620  0172  FFFF            NOP
0621  0173  FFFF            NOP             
0622  0174  FFFF            NOP
0623  0175  FFFF            NOP
0624  0176  FFFF            NOP
0625  0177  FFFF            NOP
0626  0178  58A1            SBIM    CT0,01H
0627  0179  9970            BC      DELAY_N_100uS_1
0628  017A  E16D            JMP     DELAY_N_100uS
0629  017B          DELAY_N_100uS_E:
0630  017B  D400            RTNI
0631                                
0632                ;
0633                ;*************************************************************************
0634                
0635                
0636  017C          YAOKONG:
0637  017C  7800            LDI     IE,0000B;关闭中断
0638  017D  7801            LDI     IRQ,0000B
0639  017E  7828            LDI     IRRES,00H
0640  017F  7F88            LDI     PORTA,0FH
0641  0180  78A4            LDI     PARM,1
0642  0181  C13E            CALL    DELAY_N_mS
0643  0182  3809            LDA     PORTB
0644  0183  A1CA            BA0     YK_EX_1
0645  0184  7BA5            LDI     IRCNTH,07H
0646  0185          YK_ST_1:                ;9ms起始码检测
0647  0185  FFFF            NOP
0648  0186  FFFF            NOP
0649  0187  3809            LDA     PORTB
0650  0188  FFFF            NOP
0651  0189  A18B            BA0     YK_REC_1;若接收端为高电平,同步起始码高电平部分
0652  018A  E185            JMP     YK_ST_1         ;若接收端为低电平,同步9ms起始码低电平部分
0653                ;       
0654                ;       YK_ST_2:        
0655                ;       NOP
0656                ;       NOP
0657                ;       LDA     PORTB
0658                ;       NOP
0659                ;       BA0     YK_ST_2         ;当接收端为高电平时,继续9ms起始码高电平同步
0660                ;                               ;当接收端为低电平时,退出9ms起始码高电平同步
0661                
0662  018B          YK_REC_1:
0663  018B  C1CC            CALL    YK4BIT
0664  018C  3827            LDA     IRTEMP
0665  018D  3C30            STA     IRC0
0666                        
0667  018E  C1CC            CALL    YK4BIT
0668  018F  3827            LDA     IRTEMP
0669  0190  3C31            STA     IRC1
0670                        
0671  0191  C1CC            CALL    YK4BIT
0672  0192  3827            LDA     IRTEMP
0673  0193  3C32            STA     IRC2
0674                        
0675  0194  C1CC            CALL    YK4BIT
0676  0195  3827            LDA     IRTEMP
0677  0196  3C33            STA     IRC3
0678                        
0679  0197  C1CC            CALL    YK4BIT
0680  0198  3827            LDA     IRTEMP
0681  0199  3C35            STA     IRD0L   
0682                        
0683  019A  C1CC            CALL    YK4BIT
0684  019B  3827            LDA     IRTEMP
0685  019C  3C34            STA     IRD0H   
0686                        
0687  019D  C1CC            CALL    YK4BIT
0688  019E  3827            LDA     IRTEMP
0689  019F  3C37            STA     IRD1L   
0690                        
0691  01A0  C1CC            CALL    YK4BIT
0692  01A1  3827            LDA     IRTEMP
0693  01A2  3C36            STA     IRD1H   
0694                
0695  01A3          YK_CHK_1:
0696  01A3  50B0            SBI     IRC0,01H
0697  01A4  99B6            BC      YK_CHK_2
0698  01A5  50B1            SBI     IRC1,01H
0699  01A6  99B6            BC      YK_CHK_2
0700  01A7  40B2            ADI     IRC2,01H
0701  01A8  89C8            BNC     YK_CHK_ERR
0702  01A9  40B3            ADI     IRC3,01H
0703  01AA  89C8            BNC     YK_CHK_ERR
0704                                
0705  01AB  78A0            LDI     ACCBUF,01H
0706  01AC  3834            LDA     IRD0H
0707  01AD  0836            ADD     IRD1H
0708  01AE  0820            ADD     ACCBUF
0709  01AF  89C8            BNC     YK_CHK_ERR
0710                        
0711  01B0  3835            LDA     IRD0L
0712  01B1  0837            ADD     IRD1L
0713  01B2  0820            ADD     ACCBUF
0714  01B3  89C8            BNC     YK_CHK_ERR
0715                        
0716  01B4  78A8            LDI     IRRES,01H
0717  01B5  E1CA            JMP     YK_EX_1
0718                
0719  01B6          YK_CHK_2:
0720  01B6  57B0            SBI     IRC0,0FH
0721  01B7  81C8            BNZ     YK_CHK_ERR
0722  01B8  57B1            SBI     IRC1,0FH
0723  01B9  81C8            BNZ     YK_CHK_ERR
0724  01BA  57B2            SBI     IRC2,0FH
0725  01BB  81C8            BNZ     YK_CHK_ERR
0726  01BC  57B3            SBI     IRC3,0FH
0727  01BD  81C8            BNZ     YK_CHK_ERR
0728  01BE  57B5            SBI     IRD0L,0FH
0729  01BF  81C8            BNZ     YK_CHK_ERR
0730  01C0  57B7            SBI     IRD1L,0FH
0731  01C1  81C8            BNZ     YK_CHK_ERR
0732  01C2  57B4            SBI     IRD0H,0FH
0733  01C3  81C8            BNZ     YK_CHK_ERR
0734  01C4  57B6            SBI     IRD1H,0FH
0735  01C5  81C8            BNZ     YK_CHK_ERR
0736                        
0737  01C6  7928            LDI     IRRES,02H
0738  01C7  E1CA            JMP     YK_EX_1
0739                
0740  01C8          YK_CHK_ERR:
0741  01C8  7828            LDI     IRRES,00H;校检错
0742  01C9  E1CA            JMP     YK_EX_1
0743                                
0744                                
0745  01CA          YK_EX_1:
0746  01CA  7880            LDI     IE,0001B
0747  01CB  D400            RTNI    
0748                        
0749  01CC          YK4BIT:
0750  01CC  7827            LDI     IRTEMP,00H
0751  01CD  79A6            LDI     IRCNTL,03H
0752  01CE          YK4BIT_1:
0753  01CE  7FA1            LDI     CT0,0FH         ;配置计数器低位CT0=16
0754  01CF  7FA2            LDI     CT1,0FH         ;配置计数器高位CT1=16
0755  01D0  7A23            LDI     CT2,04H
0756  01D1          YK4BIT_4:
0757  01D1  3809            LDA     PORTB
0758  01D2  FFFF            NOP
0759  01D3  A1D5            BA0     YK4BIT_5
0760  01D4  E1DB            JMP     YK4BIT_6
0761  01D5          YK4BIT_5:
0762  01D5  58A1            SBIM    CT0,01H
0763  01D6  99D1            BC      YK4BIT_4
0764  01D7  58A2            SBIM    CT1,01H
0765  01D8  99D1            BC      YK4BIT_4
0766  01D9  58A3            SBIM    CT2,01H         
0767  01DA  99D1            BC      YK4BIT_4
0768                
0769  01DB          YK4BIT_6:                ;等待低电平结束
0770  01DB  3809            LDA     PORTB
0771  01DC  FFFF            NOP
0772  01DD  A1DF            BA0     YK4BIT_2
0773  01DE  E1DB            JMP     YK4BIT_6
0774                        
0775  01DF          YK4BIT_2:
0776  01DF  7CA4            LDI     PARM,9
0777  01E0  C16D            CALL    DELAY_N_100uS
0778  01E1  3827            LDA     IRTEMP
0779  01E2  F000            SHR
0780  01E3  3C27            STA     IRTEMP          ;IRTEMP右移
0781                        
0782  01E4  7808            LDI     PORTA,00H
0783  01E5  3809            LDA     PORTB
0784  01E6  FFFF            NOP
0785  01E7  FFFF            NOP
0786  01E8  3809            LDA     PORTB
0787  01E9  A1EB            BA0     YK4BIT_3
0788  01EA  E1ED            JMP     YK4BIT_7
0789  01EB          YK4BIT_3:
0790  01EB  6C27            ORIM    IRTEMP,1000B
0791  01EC  7F88            LDI     PORTA,0FH
0792  01ED          YK4BIT_7:                
0793  01ED  58A6            SBIM    IRCNTL,01H 
0794  01EE  99CE            BC      YK4BIT_1
0795                        
0796  01EF  D400            RTNI    
0797                
0798                
0799  01F0          PS2OUTB:
0800  01F0  7800            LDI     IE,0000B
0801  01F1  6B17            ORIM    PBOUT,0110B
0802  01F2  FFFF            NOP
0803  01F3  FFFF            NOP
0804  01F4  7848            LDI     PS2TEMP,00H
0805  01F5  7A20            LDI     ACCBUF,0100B
0806  01F6  3009            AND     PORTB           ;检查CLK是否为高电平
0807  01F7  91F0            BAZ     PS2OUTB
0808  01F8  7AA4            LDI     PARM,5
0809  01F9  C163            CALL    DELAY_N_10uS;延时50微秒
0810  01FA  7A20            LDI     ACCBUF,0100B
0811  01FB  3009            AND     PORTB
0812  01FC  91F0            BAZ     PS2OUTB         ;再次检查CLK是否为高电平
0813                        
0814  01FD  FFFF            NOP
0815  01FE  7920            LDI     ACCBUF,0010B
0816  01FF  3009            AND     PORTB
0817  0200  FFFF            NOP
0818  0201  9264            BAZ     PS2OUTB_ERR;若数据线为低,放弃
0819                        
0820  0202  7B17            LDI     PBOUT,0110B
0821  0203  FFFF            NOP
0822  0204  FFFF            NOP
0823  0205  3817            LDA     PBOUT
0824  0206          PS2OUTB_2:                ;发送起始位
0825  0206  7689            ANDIM   PORTB,1101B;DATA->0
0826  0207  7AA4            LDI     PARM,5
0827  0208  C163            CALL    DELAY_N_10uS;延时100微秒
0828  0209  7589            ANDIM   PORTB,1011B;CLK->0
0829  020A  7D24            LDI     PARM,10
0830  020B  C163            CALL    DELAY_N_10uS;延时130微秒
0831  020C  6A09            ORIM    PORTB,0100B;CLK->1
0832  020D  7AA4            LDI     PARM,5
0833  020E  C163            CALL    DELAY_N_10uS;延时20微秒
0834                        
0835  020F  79C2            LDI     PS2CNTL,03H
0836  0210  3844            LDA     PS2SNDL
0837  0211  3C49            STA     PS2BUF
0838  0212          PS2OUTB_3:
0839  0212  3849            LDA     PS2BUF
0840  0213  F000            SHR     
0841  0214  3C49            STA     PS2BUF
0842  0215  9A20            BC      PS2OUTB_S0_1
0843                
0844  0216          PS2OUTB_S0_0:        
0845  0216  7689            ANDIM   PORTB,1101B;DATA->0
0846  0217  7AA4            LDI     PARM,5
0847  0218  C163            CALL    DELAY_N_10uS;延时100微秒
0848  0219  7589            ANDIM   PORTB,1011B;CLK->0
0849  021A  7D24            LDI     PARM,10
0850  021B  C163            CALL    DELAY_N_10uS;延时130微秒
0851  021C  6A09            ORIM    PORTB,0100B;CLK->1
0852  021D  7AA4            LDI     PARM,5
0853  021E  C163            CALL    DELAY_N_10uS;延时20微秒
0854  021F  E22A            JMP     PS2OUTB_S0_E
0855                                
0856  0220          PS2OUTB_S0_1:
0857  0220  6909            ORIM    PORTB,0010B;DATA->1
0858  0221  7AA4            LDI     PARM,5
0859  0222  C163            CALL    DELAY_N_10uS;延时100微秒
0860  0223  7589            ANDIM   PORTB,1011B;CLK->0
0861  0224  7D24            LDI     PARM,10
0862  0225  C163            CALL    DELAY_N_10uS;延时130微秒
0863  0226  6A09            ORIM    PORTB,0100B;CLK->1
0864  0227  7AA4            LDI     PARM,5
0865  0228  C163            CALL    DELAY_N_10uS;延时20微秒
0866  0229  48C8            ADIM    PS2TEMP,01H
0867                        
0868  022A          PS2OUTB_S0_E:
0869  022A  58C2            SBIM    PS2CNTL,01H
0870  022B  9A12            BC      PS2OUTB_3
0871                        
0872  022C  79C2            LDI     PS2CNTL,03H
0873  022D  3843            LDA     PS2SNDH
0874  022E  3C49            STA     PS2BUF
0875  022F          PS2OUTB_4:
0876  022F  3849            LDA     PS2BUF

⌨️ 快捷键说明

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