📄 dtm8-td.lis
字号:
01B8 L42:
01B8 .dbline 152
01B8 ; return(bc-50);
01B8 8A01 movw R16,R20
01BA 0253 subi R16,50
01BC 1040 sbci R17,0
01BE .dbline -2
01BE L30:
01BE 00D0 rcall pop_gset1
01C0 .dbline 0 ; func end
01C0 0895 ret
01C2 .dbsym r bc 20 I
01C2 .dbsym r bb 16 I
01C2 .dbend
01C2 .dbfunc e cy _cy fV
.even
01C2 _cy::
01C2 .dbline -1
01C2 .dbline 156
01C2 ; }
01C2 ;
01C2 ; void cy(void)
01C2 ; {
01C2 .dbline 157
01C2 ; if(!(PINC&0x04))
01C2 9A99 sbic 0x13,2
01C4 12C0 rjmp L45
01C6 .dbline 158
01C6 ; {
01C6 .dbline 159
01C6 ; TCNT1=0;
01C6 2224 clr R2
01C8 3324 clr R3
01CA 3DBC out 0x2d,R3
01CC 2CBC out 0x2c,R2
01CE 01C0 rjmp L48
01D0 L47:
01D0 .dbline 160
01D0 A895 wdr
01D2 L48:
01D2 .dbline 160
01D2 9A9B sbis 0x13,2
01D4 FDCF rjmp L47
01D6 .dbline 161
01D6 2CB4 in R2,0x2c
01D8 3DB4 in R3,0x2d
01DA 30920900 sts _aa+1,R3
01DE 20920800 sts _aa,R2
01E2 .dbline 162
01E2 8101 movw R16,R2
01E4 94DF rcall _fenc
01E6 00930200 sts _zb,R16
01EA .dbline 163
01EA L45:
01EA .dbline -2
01EA L44:
01EA .dbline 0 ; func end
01EA 0895 ret
01EC .dbend
01EC .dbfunc e main _main fV
.even
01EC _main::
01EC 2297 sbiw R28,2
01EE .dbline -1
01EE .dbline 167
01EE ; while(!(PINC&0x04)) WDR();
01EE ; aa=TCNT1;
01EE ; zb=fenc(aa);
01EE ; }
01EE ; }
01EE ;
01EE ; void main()
01EE ; {
01EE .dbline 168
01EE ; EEPROM_READ(0x10,ai);//校正振荡频率
01EE 82E0 ldi R24,2
01F0 90E0 ldi R25,0
01F2 9983 std y+1,R25
01F4 8883 std y+0,R24
01F6 20E0 ldi R18,<_ai
01F8 30E0 ldi R19,>_ai
01FA 00E1 ldi R16,16
01FC 10E0 ldi R17,0
01FE 00D0 rcall _EEPROMReadBytes
0200 .dbline 169
0200 ; OSCCAL=ai;
0200 20900A00 lds R2,_ai
0204 30900B00 lds R3,_ai+1
0208 21BE out 0x31,R2
020A .dbline 170
020A ; init_devices();
020A 21DF rcall _init_devices
020C .dbline 172
020C ;
020C ; EEPROM_READ(0x112,ai);
020C 82E0 ldi R24,2
020E 90E0 ldi R25,0
0210 9983 std y+1,R25
0212 8883 std y+0,R24
0214 20E0 ldi R18,<_ai
0216 30E0 ldi R19,>_ai
0218 02E1 ldi R16,274
021A 11E0 ldi R17,1
021C 00D0 rcall _EEPROMReadBytes
021E .dbline 175
021E ;
021E ;
021E ; if(ai==0xFFFF)
021E 80910A00 lds R24,_ai
0222 90910B00 lds R25,_ai+1
0226 8F3F cpi R24,255
0228 EFEF ldi R30,255
022A 9E07 cpc R25,R30
022C F1F4 brne L51
022E .dbline 176
022E ; {
022E .dbline 177
022E ; mark=1500; //0xD805
022E 8CED ldi R24,1500
0230 95E0 ldi R25,5
0232 90930100 sts _mark+1,R25
0236 80930000 sts _mark,R24
023A .dbline 178
023A ; EEPROM_WRITE(0x110,mark);
023A 82E0 ldi R24,2
023C 90E0 ldi R25,0
023E 9983 std y+1,R25
0240 8883 std y+0,R24
0242 20E0 ldi R18,<_mark
0244 30E0 ldi R19,>_mark
0246 00E1 ldi R16,272
0248 11E0 ldi R17,1
024A 00D0 rcall _EEPROMWriteBytes
024C .dbline 179
024C ; aa=0;
024C 2224 clr R2
024E 3324 clr R3
0250 30920900 sts _aa+1,R3
0254 20920800 sts _aa,R2
0258 .dbline 180
0258 ; EEPROM_WRITE(0x112,aa);
0258 82E0 ldi R24,2
025A 90E0 ldi R25,0
025C 9983 std y+1,R25
025E 8883 std y+0,R24
0260 20E0 ldi R18,<_aa
0262 30E0 ldi R19,>_aa
0264 02E1 ldi R16,274
0266 11E0 ldi R17,1
0268 00D0 rcall _EEPROMWriteBytes
026A .dbline 181
026A ; }
026A L51:
026A .dbline 182
026A ; EEPROM_READ(0x110,mark);
026A 82E0 ldi R24,2
026C 90E0 ldi R25,0
026E 9983 std y+1,R25
0270 8883 std y+0,R24
0272 20E0 ldi R18,<_mark
0274 30E0 ldi R19,>_mark
0276 00E1 ldi R16,272
0278 11E0 ldi R17,1
027A 00D0 rcall _EEPROMReadBytes
027C 25C0 rjmp L54
027E L53:
027E .dbline 186
027E ;
027E ;
027E ; while(1)
027E ; {
027E .dbline 188
027E ;
027E ; cy();
027E A1DF rcall _cy
0280 .dbline 189
0280 ; WDR();
0280 A895 wdr
0282 .dbline 192
0282 ;
0282 ;
0282 ; if(!(PINB&0x20))
0282 B599 sbic 0x16,5
0284 21C0 rjmp L56
0286 .dbline 193
0286 ; {
0286 .dbline 194
0286 ; delay(10);
0286 0AE0 ldi R16,10
0288 10E0 ldi R17,0
028A FFDE rcall _delay
028C .dbline 195
028C ; if(!(PINB&0x20))
028C B599 sbic 0x16,5
028E 1CC0 rjmp L58
0290 .dbline 196
0290 ; {
0290 .dbline 197
0290 ; cy();
0290 98DF rcall _cy
0292 .dbline 198
0292 ; WDR();
0292 A895 wdr
0294 .dbline 199
0294 ; LED1;
0294 C39A sbi 0x18,3
0296 .dbline 199
0296 .dbline 200
0296 ; delay(10);
0296 0AE0 ldi R16,10
0298 10E0 ldi R17,0
029A F7DE rcall _delay
029C .dbline 201
029C ; mark=aa; EEPROM_WRITE(0x110,mark);
029C 20900800 lds R2,_aa
02A0 30900900 lds R3,_aa+1
02A4 30920100 sts _mark+1,R3
02A8 20920000 sts _mark,R2
02AC .dbline 201
02AC 82E0 ldi R24,2
02AE 90E0 ldi R25,0
02B0 9983 std y+1,R25
02B2 8883 std y+0,R24
02B4 20E0 ldi R18,<_mark
02B6 30E0 ldi R19,>_mark
02B8 00E1 ldi R16,272
02BA 11E0 ldi R17,1
02BC 00D0 rcall _EEPROMWriteBytes
02BE .dbline 202
02BE ; CLI();
02BE F894 cli
02C0 .dbline 203
02C0 ; delay(500);
02C0 04EF ldi R16,500
02C2 11E0 ldi R17,1
02C4 E2DE rcall _delay
02C6 .dbline 204
02C6 ; SEI();
02C6 7894 sei
02C8 .dbline 205
02C8 ; }
02C8 L58:
02C8 .dbline 206
02C8 ; }
02C8 L56:
02C8 .dbline 208
02C8 L54:
02C8 .dbline 185
02C8 DACF rjmp L53
02CA X0:
02CA .dbline -2
02CA L50:
02CA 2296 adiw R28,2
02CC .dbline 0 ; func end
02CC 0895 ret
02CE .dbend
.area bss(ram, con, rel)
0000 .dbfile D:\ele\AVR\ICC\diantiao\dtm8-td\dtm8-td.C
0000 _pwm::
0000 .blkb 1
0001 .dbsym e pwm _pwm c
0001 _mid::
0001 .blkb 1
0002 .dbsym e mid _mid c
0002 _zb::
0002 .blkb 1
0003 .dbsym e zb _zb c
0003 _flagh::
0003 .blkb 1
0004 .dbsym e flagh _flagh c
0004 _flag::
0004 .blkb 1
0005 .dbsym e flag _flag c
0005 _az::
0005 .blkb 1
0006 .dbsym e az _az c
0006 _j::
0006 .blkb 1
0007 .dbsym e j _j c
0007 _i::
0007 .blkb 1
0008 .dbsym e i _i c
0008 _aa::
0008 .blkb 2
000A .dbsym e aa _aa i
000A _ai::
000A .blkb 2
000C .dbsym e ai _ai i
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -