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

📄 app.lis

📁 用于单白色144颗LED8段追光
💻 LIS
📖 第 1 页 / 共 3 页
字号:
 0146                   .dbend
 0146                   .dbfunc e delay _delay fV
 0146           ;            dd1 -> R20
 0146           ;            dd2 -> R22
 0146           ;            dd3 -> R10
 0146           ;          count -> R16
                        .even
 0146           _delay::
 0146 00D0              rcall push_gset3
 0148                   .dbline -1
 0148                   .dbline 173
 0148           ; /*******************************
 0148           ; **delay
 0148           ; ********************************/
 0148           ; void delay(uchar count )
 0148           ; {
 0148                   .dbline 175
 0148           ; uchar dd1,dd2,dd3;
 0148           ; for(dd1=0;dd1<count;dd1++)
 0148 4427              clr R20
 014A 0DC0              rjmp L34
 014C           L31:
 014C                   .dbline 176
 014C           ;    for(dd2=0;dd2<30;dd2++)
 014C 6627              clr R22
 014E 08C0              rjmp L38
 0150           L35:
 0150                   .dbline 177
 0150           ;       for(dd3=0;dd3<250;dd3++)
 0150 AA24              clr R10
 0152 02C0              rjmp L42
 0154           L39:
 0154                   .dbline 178
 0154 A895              wdr
 0156           L40:
 0156                   .dbline 177
 0156 A394              inc R10
 0158           L42:
 0158                   .dbline 177
 0158 8A2D              mov R24,R10
 015A 8A3F              cpi R24,250
 015C D8F3              brlo L39
 015E           L36:
 015E                   .dbline 176
 015E 6395              inc R22
 0160           L38:
 0160                   .dbline 176
 0160 6E31              cpi R22,30
 0162 B0F3              brlo L35
 0164           L32:
 0164                   .dbline 175
 0164 4395              inc R20
 0166           L34:
 0166                   .dbline 175
 0166 4017              cp R20,R16
 0168 88F3              brlo L31
 016A                   .dbline -2
 016A                   .dbline 179
 016A           ;         WDR();
 016A           ; }
 016A           L30:
 016A 00D0              rcall pop_gset3
 016C                   .dbline 0 ; func end
 016C 0895              ret
 016E                   .dbsym r dd1 20 c
 016E                   .dbsym r dd2 22 c
 016E                   .dbsym r dd3 10 c
 016E                   .dbsym r count 16 c
 016E                   .dbend
 016E                   .dbfunc e send _send fV
 016E           ;              i -> R16
                        .even
 016E           _send::
 016E                   .dbline -1
 016E                   .dbline 184
 016E           ; /*******************************
 016E           ; **发送数据
 016E           ; ********************************/
 016E           ; void send(void)
 016E           ; {
 016E                   .dbline 187
 016E           ;  signed char i;
 016E           ;  
 016E           ;  PORTD&=~BIT(RCK);
 016E 9598              cbi 0x12,5
 0170                   .dbline 188
 0170           ;  PORTD&=~BIT(CLK);
 0170 9398              cbi 0x12,3
 0172                   .dbline 190
 0172           ;  
 0172           ;  for(i=48;i>=0;i--)
 0172 00E3              ldi R16,48
 0174 67C0              rjmp L47
 0176           L44:
 0176                   .dbline 191
 0176           ;  {
 0176                   .dbline 193
 0176           ;  //****************
 0176           ;  if(redata[i]&0x40)//
 0176 80E0              ldi R24,<_redata
 0178 90E0              ldi R25,>_redata
 017A E02F              mov R30,R16
 017C FF27              clr R31
 017E E7FD              sbrc R30,7
 0180 F095              com R31
 0182 E80F              add R30,R24
 0184 F91F              adc R31,R25
 0186 2080              ldd R2,z+0
 0188 26FE              sbrs R2,6
 018A 02C0              rjmp L48
 018C                   .dbline 194
 018C           ;     PORTD|=BIT(DA);
 018C 949A              sbi 0x12,4
 018E 01C0              rjmp L49
 0190           L48:
 0190                   .dbline 196
 0190           ;  else
 0190           ;     PORTD&=~BIT(DA);  
 0190 9498              cbi 0x12,4
 0192           L49:
 0192                   .dbline 197
 0192           ;  PORTD|=BIT(CLK);
 0192 939A              sbi 0x12,3
 0194                   .dbline 198
 0194           ;                NOP();
 0194 0000              nop
 0196                   .dbline 199
 0196           ;  PORTD&=~BIT(CLK);
 0196 9398              cbi 0x12,3
 0198                   .dbline 201
 0198           ;  //==============
 0198           ;  if(redata[i]&0x20)//
 0198 80E0              ldi R24,<_redata
 019A 90E0              ldi R25,>_redata
 019C E02F              mov R30,R16
 019E FF27              clr R31
 01A0 E7FD              sbrc R30,7
 01A2 F095              com R31
 01A4 E80F              add R30,R24
 01A6 F91F              adc R31,R25
 01A8 2080              ldd R2,z+0
 01AA 25FE              sbrs R2,5
 01AC 02C0              rjmp L50
 01AE                   .dbline 202
 01AE           ;     PORTD|=BIT(DA);
 01AE 949A              sbi 0x12,4
 01B0 01C0              rjmp L51
 01B2           L50:
 01B2                   .dbline 204
 01B2           ;  else
 01B2           ;     PORTD&=~BIT(DA);
 01B2 9498              cbi 0x12,4
 01B4           L51:
 01B4                   .dbline 205
 01B4           ;  PORTD|=BIT(CLK);             
 01B4 939A              sbi 0x12,3
 01B6                   .dbline 206
 01B6           ;                NOP();
 01B6 0000              nop
 01B8                   .dbline 207
 01B8           ;  PORTD&=~BIT(CLK);
 01B8 9398              cbi 0x12,3
 01BA                   .dbline 209
 01BA           ;  //===============
 01BA           ;  if(redata[i]&0x10)//
 01BA 80E0              ldi R24,<_redata
 01BC 90E0              ldi R25,>_redata
 01BE E02F              mov R30,R16
 01C0 FF27              clr R31
 01C2 E7FD              sbrc R30,7
 01C4 F095              com R31
 01C6 E80F              add R30,R24
 01C8 F91F              adc R31,R25
 01CA 2080              ldd R2,z+0
 01CC 24FE              sbrs R2,4
 01CE 02C0              rjmp L52
 01D0                   .dbline 210
 01D0           ;     PORTD|=BIT(DA);
 01D0 949A              sbi 0x12,4
 01D2 01C0              rjmp L53
 01D4           L52:
 01D4                   .dbline 212
 01D4           ;  else
 01D4           ;     PORTD&=~BIT(DA);
 01D4 9498              cbi 0x12,4
 01D6           L53:
 01D6                   .dbline 213
 01D6           ;  PORTD|=BIT(CLK);             
 01D6 939A              sbi 0x12,3
 01D8                   .dbline 214
 01D8           ;                NOP();
 01D8 0000              nop
 01DA                   .dbline 215
 01DA           ;  PORTD&=~BIT(CLK);
 01DA 9398              cbi 0x12,3
 01DC                   .dbline 217
 01DC           ;  //===============
 01DC           ;  if(redata[i]&0x04)//
 01DC 80E0              ldi R24,<_redata
 01DE 90E0              ldi R25,>_redata
 01E0 E02F              mov R30,R16
 01E2 FF27              clr R31
 01E4 E7FD              sbrc R30,7
 01E6 F095              com R31
 01E8 E80F              add R30,R24
 01EA F91F              adc R31,R25
 01EC 2080              ldd R2,z+0
 01EE 22FE              sbrs R2,2
 01F0 02C0              rjmp L54
 01F2                   .dbline 218
 01F2           ;     PORTD|=BIT(DA);
 01F2 949A              sbi 0x12,4
 01F4 01C0              rjmp L55
 01F6           L54:
 01F6                   .dbline 220
 01F6           ;  else
 01F6           ;     PORTD&=~BIT(DA);
 01F6 9498              cbi 0x12,4
 01F8           L55:
 01F8                   .dbline 221
 01F8           ;  PORTD|=BIT(CLK);             
 01F8 939A              sbi 0x12,3
 01FA                   .dbline 222
 01FA           ;                NOP();
 01FA 0000              nop
 01FC                   .dbline 223
 01FC           ;  PORTD&=~BIT(CLK);
 01FC 9398              cbi 0x12,3
 01FE                   .dbline 225
 01FE           ;  //===============
 01FE           ;  if(redata[i]&0x02)//
 01FE 80E0              ldi R24,<_redata
 0200 90E0              ldi R25,>_redata
 0202 E02F              mov R30,R16
 0204 FF27              clr R31
 0206 E7FD              sbrc R30,7
 0208 F095              com R31
 020A E80F              add R30,R24
 020C F91F              adc R31,R25
 020E 2080              ldd R2,z+0
 0210 21FE              sbrs R2,1
 0212 02C0              rjmp L56
 0214                   .dbline 226
 0214           ;     PORTD|=BIT(DA);
 0214 949A              sbi 0x12,4
 0216 01C0              rjmp L57
 0218           L56:
 0218                   .dbline 228
 0218           ;  else
 0218           ;     PORTD&=~BIT(DA);
 0218 9498              cbi 0x12,4
 021A           L57:
 021A                   .dbline 229
 021A           ;  PORTD|=BIT(CLK);             
 021A 939A              sbi 0x12,3
 021C                   .dbline 230
 021C           ;                NOP();
 021C 0000              nop
 021E                   .dbline 231
 021E           ;  PORTD&=~BIT(CLK);
 021E 9398              cbi 0x12,3
 0220                   .dbline 233
 0220           ;  //===============
 0220           ;  if(redata[i]&0x01)//
 0220 80E0              ldi R24,<_redata
 0222 90E0              ldi R25,>_redata
 0224 E02F              mov R30,R16
 0226 FF27              clr R31
 0228 E7FD              sbrc R30,7
 022A F095              com R31
 022C E80F              add R30,R24
 022E F91F              adc R31,R25
 0230 2080              ldd R2,z+0
 0232 20FE              sbrs R2,0
 0234 02C0              rjmp L58
 0236                   .dbline 234
 0236           ;     PORTD|=BIT(DA);
 0236 949A              sbi 0x12,4
 0238 01C0              rjmp L59
 023A           L58:
 023A                   .dbline 236
 023A           ;  else
 023A           ;     PORTD&=~BIT(DA);
 023A 9498              cbi 0x12,4
 023C           L59:
 023C                   .dbline 237
 023C 939A              sbi 0x12,3
 023E                   .dbline 238
 023E 0000              nop
 0240                   .dbline 239
 0240 9398              cbi 0x12,3
 0242                   .dbline 241
 0242           L45:
 0242                   .dbline 190
 0242 0A95              dec R16
 0244           L47:
 0244                   .dbline 190
 0244 0030              cpi R16,0
 0246 0CF0              brlt X3
 0248 96CF              rjmp L44
 024A           X3:
 024A                   .dbline 242
 024A           ;  PORTD|=BIT(CLK);             
 024A           ;                NOP();
 024A           ;  PORTD&=~BIT(CLK);
 024A           ;  //===============
 024A           ;  }
 024A           ; PORTD|=BIT(EN);//OFF DISPLAY
 024A 969A              sbi 0x12,6
 024C                   .dbline 243
 024C           ; NOP();
 024C 0000              nop
 024E                   .dbline 244
 024E           ; PORTD|=BIT(RCK);
 024E 959A              sbi 0x12,5
 0250                   .dbline 245
 0250           ; NOP();
 0250 0000              nop
 0252                   .dbline 246
 0252           ; PORTD&=~BIT(RCK);//LATCH DATA
 0252 9598              cbi 0x12,5
 0254                   .dbline 247
 0254           ; NOP();
 0254 0000              nop
 0256                   .dbline 248
 0256           ; PORTD&=~BIT(EN);//ON DISPLAY
 0256 9698              cbi 0x12,6
 0258                   .dbline -2
 0258                   .dbline 250
 0258           ; 
 0258           ; }
 0258           L43:
 0258                   .dbline 0 ; func end
 0258 0895              ret
 025A                   .dbsym r i 16 C
 025A                   .dbend
                        .area bss(ram, con, rel)
 0000                   .dbfile D:\单片机程序\AVR\LSAVR~1\LBT-FC8B暴光管TEST\APP.c
 0000           _fg_rin:
 0000                   .blkb 1
 0001                   .dbsym s fg_rin _fg_rin c

⌨️ 快捷键说明

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