📄 app.lis
字号:
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 + -