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

📄 main.lis

📁 cy8c24794单片机程序
💻 LIS
📖 第 1 页 / 共 4 页
字号:
 0539                   .dbline 170
 0539           L50:
 0539           L51:
 0539                   .dbline 172
 0539           ;     } 
 0539           ;   }
 0539           L48:
 0539                   .dbline 174
 0539           ;   
 0539           ;   PRT5DR = 0b11111011 ; 
 0539 6214FB            mov REG[0x14],-5
 053C                   .dbline 175
 053C           ;   temp = PRT5DR & 0xF0 ; 
 053C 5D14              mov A,REG[0x14]
 053E 21F0              and A,-16
 0540 62D000            mov REG[0xd0],>_temp
 0543 5300              mov [_temp],A
 0545                   .dbline 176
 0545           ;   if( temp != 0xF0 )
 0545 3C00F0            cmp [_temp],-16
 0548 A068              jz L60
 054A                   .dbline 177
 054A           ;   {
 054A                   .dbline 178
 054A           ;     switch(temp)
 054A 5100              mov A,[_temp]
 054C 5401              mov [X+1],A
 054E 560000            mov [X+0],0
 0551 5201              mov A,[X+1]
 0553 11B0              sub A,-80
 0555 62D000            mov REG[0xd0],>__r0
 0558 5300              mov [__rY],A
 055A 5200              mov A,[X+0]
 055C 3180              xor A,-128
 055E 1980              sbb A,(0 ^ 0x80)
 0560 2A00              or A,[__rY]
 0562 A040              jz L67
 0564 D00D              jnc L70
 0566           X30:
 0566           L69:
 0566 3D0000            cmp [X+0],0
 0569 B006              jnz X31
 056B 3D0170            cmp [X+1],112
 056E A03C              jz L68
 0570           X31:
 0570 8040              xjmp L62
 0572           L70:
 0572 5201              mov A,[X+1]
 0574 11D0              sub A,-48
 0576 62D000            mov REG[0xd0],>__r0
 0579 5300              mov [__rY],A
 057B 5200              mov A,[X+0]
 057D 3180              xor A,-128
 057F 1980              sbb A,(0 ^ 0x80)
 0581 C02F              jc L62
 0583 2A00              or A,[__rY]
 0585 A015              jz L66
 0587           X32:
 0587           L71:
 0587 3D0000            cmp [X+0],0
 058A B006              jnz X33
 058C 3D01E0            cmp [X+1],-32
 058F A003              jz L65
 0591           X33:
 0591 801F              xjmp L62
 0593           X20:
 0593                   .dbline 179
 0593           ;     {
 0593           L65:
 0593                   .dbline 181
 0593           ;      case 0b11100000 :
 0593           ;             key = 11 ; break ; 
 0593 62D000            mov REG[0xd0],>_key
 0596 55000B            mov [_key],11
 0599                   .dbline 181
 0599 8017              xjmp L63
 059B           L66:
 059B                   .dbline 183
 059B           ;      case 0b11010000 :
 059B           ;             key = 3 ; break ; 
 059B 62D000            mov REG[0xd0],>_key
 059E 550003            mov [_key],3
 05A1                   .dbline 183
 05A1 800F              xjmp L63
 05A3           L67:
 05A3                   .dbline 185
 05A3           ;      case 0b10110000 :
 05A3           ;             key = 6 ; break ; 
 05A3 62D000            mov REG[0xd0],>_key
 05A6 550006            mov [_key],6
 05A9                   .dbline 185
 05A9 8007              xjmp L63
 05AB           L68:
 05AB                   .dbline 187
 05AB           ;      case 0b01110000 :
 05AB           ;               key = 9 ; break ;  
 05AB 62D000            mov REG[0xd0],>_key
 05AE 550009            mov [_key],9
 05B1                   .dbline 187
 05B1           L62:
 05B1           L63:
 05B1                   .dbline 189
 05B1           ;     } 
 05B1           ;   }
 05B1           L60:
 05B1                   .dbline 191
 05B1           ;   
 05B1           ;   PRT5DR = 0xF0 ; 
 05B1 6214F0            mov REG[0x14],-16
 05B4                   .dbline 193
 05B4           ;   
 05B4           ;   if( key = 10 )
 05B4 62D000            mov REG[0xd0],>_key
 05B7 55000A            mov [_key],10
 05BA 62D000            mov REG[0xd0],>__r0
 05BD 55000A            mov [__r0],10
 05C0 3C0000            cmp [__r0],0
 05C3 A00B              jz L72
 05C5                   .dbline 194
 05C5           ;   {
 05C5                   .dbline 195
 05C5           ;       times ++ ; 
 05C5 62D000            mov REG[0xd0],>_times
 05C8 7600              inc [_times]
 05CA                   .dbline 196
 05CA           ;       Timer8_Stop() ; 
 05CA 10                push X
 05CB 7C0000            xcall _Timer8_Stop
 05CE 20                pop X
 05CF                   .dbline 197
 05CF           ;   }
 05CF           L72:
 05CF                   .dbline 199
 05CF           ;   
 05CF           ;   if( key = 11 )
 05CF 62D000            mov REG[0xd0],>_key
 05D2 55000B            mov [_key],11
 05D5 62D000            mov REG[0xd0],>__r0
 05D8 55000B            mov [__r0],11
 05DB 3C0000            cmp [__r0],0
 05DE A022              jz L74
 05E0                   .dbline 200
 05E0           ;   {
 05E0                   .dbline 201
 05E0           ;      time = ~time ; 
 05E0 62D000            mov REG[0xd0],>_time
 05E3 5100              mov A,[_time]
 05E5 73                cpl A
 05E6 5300              mov [_time],A
 05E8                   .dbline 202
 05E8           ;      if( time )
 05E8 3C0000            cmp [_time],0
 05EB A00E              jz L76
 05ED                   .dbline 203
 05ED           ;      {
 05ED                   .dbline 204
 05ED           ;         Timer8_Stop() ; 
 05ED 10                push X
 05EE 7C0000            xcall _Timer8_Stop
 05F1 20                pop X
 05F2 8003              xjmp L79
 05F4           L78:
 05F4                   .dbline 206
 05F4                   .dbline 207
 05F4 9A0A              xcall _Display
 05F6                   .dbline 208
 05F6           L79:
 05F6                   .dbline 205
 05F6           ;         while(1)
 05F6 8FFD              xjmp L78
 05F8           X21:
 05F8                   .dbline 209
 05F8           ;            {
 05F8           ;              Display(); 
 05F8           ;            }
 05F8           ;        }
 05F8 806F              xjmp L75
 05FA           L76:
 05FA                   .dbline 211
 05FA           ;      else 
 05FA           ;      Timer8_Start() ; 
 05FA 10                push X
 05FB 7C0000            xcall _Timer8_Start
 05FE 20                pop X
 05FF                   .dbline 212
 05FF           ;   }
 05FF 8068              xjmp L75
 0601           L74:
 0601                   .dbline 213
 0601           ;   else if( key > 0 && key < 10 ) 
 0601 62D000            mov REG[0xd0],>_key
 0604 5000              mov A,0
 0606 3A00              cmp A,[_key]
 0608 D05F              jnc L81
 060A           X34:
 060A 62D000            mov REG[0xd0],>_key
 060D 3C000A            cmp [_key],10
 0610 D057              jnc L81
 0612           X35:
 0612                   .dbline 214
 0612           ;       {
 0612                   .dbline 215
 0612           ;          times ++ ; 
 0612 62D000            mov REG[0xd0],>_times
 0615 7600              inc [_times]
 0617                   .dbline 216
 0617           ;          if( times == 2 )
 0617 3C0002            cmp [_times],2
 061A B00D              jnz L83
 061C                   .dbline 217
 061C           ;               key1 = key ; 
 061C 62D000            mov REG[0xd0],>_key
 061F 5100              mov A,[_key]
 0621 62D000            mov REG[0xd0],>_key1
 0624 5300              mov [_key1],A
 0626 8041              xjmp L84
 0628           L83:
 0628                   .dbline 218
 0628           ;                else if( times == 3 )
 0628 62D000            mov REG[0xd0],>_times
 062B 3C0003            cmp [_times],3
 062E B00D              jnz L85
 0630                   .dbline 219
 0630           ;               key2 = key ; 
 0630 62D000            mov REG[0xd0],>_key
 0633 5100              mov A,[_key]
 0635 62D000            mov REG[0xd0],>_key2
 0638 5300              mov [_key2],A
 063A 802D              xjmp L86
 063C           L85:
 063C                   .dbline 220
 063C           ;                else if( times == 4 )
 063C 62D000            mov REG[0xd0],>_times
 063F 3C0004            cmp [_times],4
 0642 B00D              jnz L87
 0644                   .dbline 221
 0644           ;               key3 = key ; 
 0644 62D000            mov REG[0xd0],>_key
 0647 5100              mov A,[_key]
 0649 62D000            mov REG[0xd0],>_key3
 064C 5300              mov [_key3],A
 064E 8019              xjmp L88
 0650           L87:
 0650                   .dbline 222
 0650           ;                else if( times == 5 )
 0650 62D000            mov REG[0xd0],>_times
 0653 3C0005            cmp [_times],5
 0656 B011              jnz L89
 0658                   .dbline 223
 0658           ;               {
 0658                   .dbline 224
 0658           ;                 key4 = key ;
 0658 62D000            mov REG[0xd0],>_key
 065B 5100              mov A,[_key]
 065D 62D000            mov REG[0xd0],>_key4
 0660 5300              mov [_key4],A
 0662                   .dbline 225
 0662           ;                 key =  0 ; 
 0662 62D000            mov REG[0xd0],>_key
 0665 550000            mov [_key],0
 0668                   .dbline 226
 0668           ;               } 
 0668           L89:
 0668           L88:
 0668           L86:
 0668           L84:
 0668                   .dbline 227
 0668           ;         }
 0668           L81:
 0668           L75:
 0668                   .dbline 228
 0668           ;   count = 0  ;
 0668 62D000            mov REG[0xd0],>_count
 066B 550100            mov [_count+1],0
 066E 550000            mov [_count],0
 0671                   .dbline 230
 0671           ;   
 0671           ;   Timer16_Start() ; 
 0671 10                push X
 0672 7C0000            xcall _Timer16_Start
 0675 20                pop X
 0676                   .dbline 231
 0676           ;   weishu = 1  ; 
 0676 62D000            mov REG[0xd0],>_weishu
 0679 550101            mov [_weishu+1],1
 067C 550000            mov [_weishu],0
 067F                   .dbline -2
 067F                   .dbline 232
 067F           ; }
 067F           L35:
 067F 38FE              add SP,-2
 0681 20                pop X
 0682 62D000            mov REG[0xD0],>__r0
 0685 18                pop A
 0686 5300              mov [__rZ],A
 0688 18                pop A
 0689 5300              mov [__rY],A
 068B 18                pop A
 068C 5300              mov [__rX],A
 068E 18                pop A
 068F 5300              mov [__r11],A
 0691 18                pop A
 0692 5300              mov [__r10],A
 0694 18                pop A
 0695 5300              mov [__r9],A
 0697 18                pop A
 0698 5300              mov [__r8],A
 069A 18                pop A
 069B 5300              mov [__r7],A
 069D 18                pop A
 069E 5300              mov [__r6],A
 06A0 18                pop A
 06A1 5300              mov [__r5],A
 06A3 18                pop A
 06A4 5300              mov [__r4],A
 06A6 18                pop A
 06A7 5300              mov [__r3],A
 06A9 18                pop A
 06AA 5300              mov [__r2],A
 06AC 18                pop A
 06AD 5300              mov [__r1],A
 06AF 18                pop A
 06B0 5300              mov [__r0],A
 06B2 18                pop A
 06B3 60D5              mov REG[213],A
 06B5 18                pop A
 06B6 60D4              mov REG[212],A
 06B8 18                pop A
 06B9 60D3              mov REG[211],A
 06BB 18                pop A
 06BC 60D0              mov REG[208],A
 06BE 18                pop A
 06BF                   .dbline 0 ; func end
 06BF 7E                reti
 06C0                   .dbend
 06C0                   .dbfunc e main _main fV
 06C0           _main::
 06C0                   .dbline -1
 06C0                   .dbline 235
 06C0           ; 
 06C0           ; void main()
 06C0           ; {
 06C0                   .dbline 237
 06C0           ;     // Insert your main routine code here.
 06C0           ;     M8C_EnableGInt ; 
 06C0 7101                      or  F, 01h
 06C2           
 06C2                   .dbline 238
 06C2           ;     Timer8_EnableInt() ; 
 06C2 10                push X
 06C3 7C0000            xcall _Timer8_EnableInt
 06C6                   .dbline 239
 06C6           ;     Timer16_EnableInt() ; 
 06C6 7C0000            xcall _Timer16_EnableInt
 06C9                   .dbline 240
 06C9           ;     Timer8_Start() ; 
 06C9 7C0000            xcall _Timer8_Start
 06CC 20                pop X
 06CD           L92:
 06CD                   .dbline 242
 06CD                   .dbline 243
 06CD           L93:
 06CD                   .dbline 241
 06CD 8FFF              xjmp L92
 06CF           X36:
 06CF                   .dbline -2
 06CF                   .dbline 244
 06CF           ;     while(1)
 06CF           ;     {
 06CF           ;     }
 06CF           ; }
 06CF           L91:
 06CF                   .dbline 0 ; func end
 06CF 8FFF              jmp .
 06D1                   .dbend

⌨️ 快捷键说明

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