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

📄 remote.lis

📁 硬盘MP3播放器-MEGA128-VS1001K-USB-遥控-LCD-ICCAVR代码-硬盘-支持FAT32-单面PCB 第二部分
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 00F2                   .dbline 115
 00F2           ;                                }
 00F2           L20:
 00F2                   .dbline 117
 00F2           ;                                
 00F2           ;                         if (Key == DOWN)
 00F2 80910200          lds R24,_Key
 00F6 8430              cpi R24,4
 00F8 11F4              brne L22
 00FA                   .dbline 118
 00FA           ;                                {
 00FA                   .dbline 119
 00FA           ;                                SendKey(0x01);
 00FA 01E0              ldi R16,1
 00FC 43D3              rcall _SendKey
 00FE                   .dbline 120
 00FE           ;                                }
 00FE           L22:
 00FE                   .dbline 122
 00FE           ;                                
 00FE           ;                         if (Key == SHIFT_DOWN)
 00FE 80910200          lds R24,_Key
 0102 8438              cpi R24,132
 0104 11F4              brne L24
 0106                   .dbline 123
 0106           ;                                {
 0106                   .dbline 124
 0106           ;                                SendKey(0x81);
 0106 01E8              ldi R16,129
 0108 3DD3              rcall _SendKey
 010A                   .dbline 125
 010A           ;                                }                       
 010A           L24:
 010A                   .dbline 127
 010A           ;                                
 010A           ;                         if (Key == UP)
 010A 80910200          lds R24,_Key
 010E 8032              cpi R24,32
 0110 11F4              brne L26
 0112                   .dbline 128
 0112           ;                                {
 0112                   .dbline 129
 0112           ;                                SendKey(0x02);
 0112 02E0              ldi R16,2
 0114 37D3              rcall _SendKey
 0116                   .dbline 130
 0116           ;                                }
 0116           L26:
 0116                   .dbline 132
 0116           ;                                
 0116           ;                         if (Key == SHIFT_UP)
 0116 80910200          lds R24,_Key
 011A 8039              cpi R24,144
 011C 11F4              brne L28
 011E                   .dbline 133
 011E           ;                                {
 011E                   .dbline 134
 011E           ;                                SendKey(0x82);
 011E 02E8              ldi R16,130
 0120 31D3              rcall _SendKey
 0122                   .dbline 135
 0122           ;                                }
 0122           L28:
 0122                   .dbline 137
 0122           ;                                
 0122           ;                         if (Key == LEFT)
 0122 80910200          lds R24,_Key
 0126 8230              cpi R24,2
 0128 11F4              brne L30
 012A                   .dbline 138
 012A           ;                                {
 012A                   .dbline 139
 012A           ;                                SendKey(0x04);
 012A 04E0              ldi R16,4
 012C 2BD3              rcall _SendKey
 012E                   .dbline 140
 012E           ;                                } 
 012E           L30:
 012E                   .dbline 142
 012E           ;                                
 012E           ;                         if (Key == RIGHT)
 012E 80910200          lds R24,_Key
 0132 8830              cpi R24,8
 0134 11F4              brne L32
 0136                   .dbline 143
 0136           ;                                {
 0136                   .dbline 144
 0136           ;                                SendKey(0x08);
 0136 08E0              ldi R16,8
 0138 25D3              rcall _SendKey
 013A                   .dbline 145
 013A           ;                                }      
 013A           L32:
 013A                   .dbline 147
 013A           ;                                
 013A           ;                         if (Key == SHIFT_RIGHT)
 013A 80910200          lds R24,_Key
 013E 8838              cpi R24,136
 0140 C9F4              brne L34
 0142                   .dbline 148
 0142           ;                                {
 0142                   .dbline 149
 0142           ;                                Cont++;
 0142 80910900          lds R24,_Cont
 0146 8F5F              subi R24,255    ; addi 1
 0148 80930900          sts _Cont,R24
 014C                   .dbline 150
 014C           ;                                if (Cont > 0x7f) Cont = 0;
 014C 8FE7              ldi R24,127
 014E 20900900          lds R2,_Cont
 0152 8215              cp R24,R2
 0154 18F4              brsh L36
 0156                   .dbline 150
 0156 2224              clr R2
 0158 20920900          sts _Cont,R2
 015C           L36:
 015C                   .dbline 151
 015C           ;                                LcdContrast(Cont);
 015C 00910900          lds R16,_Cont
 0160 00D0              rcall _LcdContrast
 0162                   .dbline 152
 0162           ;                                EEPROM_WRITE(0x10, Cont);      
 0162 81E0              ldi R24,1
 0164 90E0              ldi R25,0
 0166 9983              std y+1,R25
 0168 8883              std y+0,R24
 016A 20E0              ldi R18,<_Cont
 016C 30E0              ldi R19,>_Cont
 016E 00E1              ldi R16,16
 0170 10E0              ldi R17,0
 0172 00D0              rcall _EEPROMWriteBytes
 0174                   .dbline 153
 0174           ;                                }
 0174           L34:
 0174                   .dbline 155
 0174           ;                                
 0174           ;                         if (Key == SHIFT_LEFT)
 0174 80910200          lds R24,_Key
 0178 8238              cpi R24,130
 017A B1F4              brne L38
 017C                   .dbline 156
 017C           ;                                {
 017C                   .dbline 157
 017C           ;                                Cont--;
 017C 80910900          lds R24,_Cont
 0180 8150              subi R24,1
 0182 80930900          sts _Cont,R24
 0186                   .dbline 158
 0186           ;                                if (Cont == 0x00) Cont = 0x7f;
 0186 8823              tst R24
 0188 19F4              brne L40
 018A                   .dbline 158
 018A 8FE7              ldi R24,127
 018C 80930900          sts _Cont,R24
 0190           L40:
 0190                   .dbline 159
 0190           ;                                LcdContrast(Cont);
 0190 00910900          lds R16,_Cont
 0194 00D0              rcall _LcdContrast
 0196                   .dbline 160
 0196           ;                                EEPROM_WRITE(0x10, Cont);      
 0196 81E0              ldi R24,1
 0198 90E0              ldi R25,0
 019A 9983              std y+1,R25
 019C 8883              std y+0,R24
 019E 20E0              ldi R18,<_Cont
 01A0 30E0              ldi R19,>_Cont
 01A2 00E1              ldi R16,16
 01A4 10E0              ldi R17,0
 01A6 00D0              rcall _EEPROMWriteBytes
 01A8                   .dbline 161
 01A8           ;                                }                               
 01A8           L38:
 01A8                   .dbline 163
 01A8           ;                                
 01A8           ;                         Key = NONE;    
 01A8 2224              clr R2
 01AA 20920200          sts _Key,R2
 01AE                   .dbline 164
 01AE           ;                         }
 01AE                   .dbline 165
 01AE           ;                  }
 01AE 1DC0              rjmp L13
 01B0           L12:
 01B0                   .dbline 167
 01B0           ;               else
 01B0           ;                  {
 01B0                   .dbline 169
 01B0           ;                  // Go in DEEP SLEEP
 01B0           ;                  LcdClear();
 01B0 00D0              rcall _LcdClear
 01B2                   .dbline 170
 01B2           ;                  LcdPower(FALSE);
 01B2 0027              clr R16
 01B4 00D0              rcall _LcdPower
 01B6                   .dbline 171
 01B6           ;                  PORTD &= ~VRX;     // Disable Receiver
 01B6 9498              cbi 0x12,4
 01B8                   .dbline 174
 01B8           ;                  // Disable Timer0 overflow because the LCD must be init first 
 01B8           ;                  // after wake up
 01B8           ;                  TIMSK &= ~0x01;
 01B8 89B7              in R24,0x39
 01BA 8E7F              andi R24,254
 01BC 89BF              out 0x39,R24
 01BE                   .dbline 176
 01BE           ; 
 01BE           ;                  MCUCR = 0xa0;      // Power Down MCU and int0 low level
 01BE 80EA              ldi R24,160
 01C0 85BF              out 0x35,R24
 01C2                   .dbline 177
 01C2           ;                  SLEEP();
 01C2 8895              sleep
 01C4                   .dbline 179
 01C4           ; 
 01C4           ;                  TimeOut = 0;
 01C4 2224              clr R2
 01C6 3324              clr R3
 01C8 30920100          sts _TimeOut+1,R3
 01CC 20920000          sts _TimeOut,R2
 01D0                   .dbline 180
 01D0           ;                  LcdPower(TRUE);
 01D0 01E0              ldi R16,1
 01D2 00D0              rcall _LcdPower
 01D4                   .dbline 181
 01D4           ;                  LcdContrast(Cont);
 01D4 00910900          lds R16,_Cont
 01D8 00D0              rcall _LcdContrast
 01DA                   .dbline 182
 01DA           ;                  PORTD |= VRX;      // Enable Receiver
 01DA 949A              sbi 0x12,4
 01DC                   .dbline 183
 01DC           ;                  Presentation();
 01DC 18D0              rcall _Presentation
 01DE                   .dbline 184
 01DE           ;                  LineDisplay();
 01DE 4CD0              rcall _LineDisplay
 01E0                   .dbline 185
 01E0           ;                  TIMSK |= 0x01;         // Timer0 overflow interrupt enable
 01E0 89B7              in R24,0x39
 01E2 8160              ori R24,1
 01E4 89BF              out 0x39,R24
 01E6                   .dbline 186
 01E6           ;                  MCUCR = 0x02;          // int0 on falling eage level
 01E6 82E0              ldi R24,2
 01E8 85BF              out 0x35,R24
 01EA                   .dbline 187
 01EA           ;                  }
 01EA           L13:
 01EA                   .dbline 188
 01EA           L10:
 01EA                   .dbline 83
 01EA 45CF              rjmp L9
 01EC           X0:
 01EC                   .dbline -2
 01EC                   .dbline 189
 01EC           ;               }
 01EC           ; }
 01EC           L4:
 01EC 2296              adiw R28,2
 01EE                   .dbline 0 ; func end
 01EE 0895              ret
 01F0                   .dbend
 01F0                   .dbfunc e _StackOverflowed __StackOverflowed fV
 01F0           ;              c -> R20
                        .even
 01F0           __StackOverflowed::
 01F0 00D0              rcall push_gset1
 01F2 402F              mov R20,R16
 01F4                   .dbline -1
 01F4                   .dbline 195
 01F4           ; 
 01F4           ; //*************************************
 01F4           ; // void _StackOverflowed(char c)
 01F4           ; //*************************************
 01F4           ; void _StackOverflowed(char c)
 01F4           ;       {
 01F4                   .dbline 196
 01F4           ;       CLI();
 01F4 F894              cli
 01F6                   .dbline 197
 01F6           ;       LcdClear();
 01F6 00D0              rcall _LcdClear
 01F8                   .dbline 198
 01F8           ;       LcdGotoXY(1,3);
 01F8 23E0              ldi R18,3
 01FA 01E0              ldi R16,1
 01FC 00D0              rcall _LcdGotoXY
 01FE                   .dbline 199
 01FE           ;       LcdStrConst(1,"Stack Crash...\0");
 01FE 20E0              ldi R18,<L43
 0200 30E0              ldi R19,>L43
 0202 01E0              ldi R16,1
 0204 00D0              rcall _LcdStrConst
 0206                   .dbline 200
 0206           ;       LcdUpdate();
 0206 00D0              rcall _LcdUpdate
 0208           L44:
 0208                   .dbline 201
 0208           L45:
 0208                   .dbline 201
 0208 FFCF              rjmp L44
 020A           X3:
 020A                   .dbline -2
 020A                   .dbline 202
 020A           ;       while(1);
 020A           ;       }
 020A           L42:
 020A 00D0              rcall pop_gset1
 020C                   .dbline 0 ; func end
 020C 0895              ret
 020E                   .dbsym r c 20 c
 020E                   .dbend
 020E                   .dbfunc e Presentation _Presentation fV
 020E           ;              i -> R20
                        .even
 020E           _Presentation::
 020E 00D0              rcall push_gset1
 0210 2597              sbiw R28,5
 0212                   .dbline -1
 0212                   .dbline 208
 0212           ; 
 0212           ; //*************************************
 0212           ; // void Presentation(void)
 0212           ; //*************************************
 0212           ; void Presentation(void)
 0212           ; {
 0212                   .dbline 211
 0212           ; unsigned char i;
 0212           ; 
 0212           ; LcdClear();
 0212 00D0              rcall _LcdClear
 0214                   .dbline 212
 0214           ; LcdGotoXY(3,1);
 0214 21E0              ldi R18,1
 0216 03E0              ldi R16,3
 0218 00D0              rcall _LcdGotoXY
 021A                   .dbline 213

⌨️ 快捷键说明

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