📄 bt.s
字号:
L132:
.dbline 0 ; func end
ret
.dbend
.dbfunc e write _write fV
.even
_write::
.dbline -1
.dbline 197
; }
;
; void write(void)
; {
.dbline 198
; EEPROMwrite(19,date[0]); WDR();
lds R18,_date
ldi R16,19
ldi R17,0
rcall _EEPROMwrite
.dbline 198
wdr
.dbline 199
; EEPROMwrite(21,date[1]); WDR();
lds R18,_date+1
ldi R16,21
ldi R17,0
rcall _EEPROMwrite
.dbline 199
wdr
.dbline 200
; EEPROMwrite(23,date[2]); WDR();
lds R18,_date+2
ldi R16,23
ldi R17,0
rcall _EEPROMwrite
.dbline 200
wdr
.dbline 201
; EEPROMwrite(25,date[3]); WDR();
lds R18,_date+3
ldi R16,25
ldi R17,0
rcall _EEPROMwrite
.dbline 201
wdr
.dbline 202
; EEPROMwrite(27,date[4]); WDR();
lds R18,_date+4
ldi R16,27
ldi R17,0
rcall _EEPROMwrite
.dbline 202
wdr
.dbline 203
; EEPROMwrite(29,date[5]); WDR();
lds R18,_date+5
ldi R16,29
ldi R17,0
rcall _EEPROMwrite
.dbline 203
wdr
.dbline 204
; EEPROMwrite(31,date[6]); WDR();
lds R18,_date+6
ldi R16,31
ldi R17,0
rcall _EEPROMwrite
.dbline 204
wdr
.dbline 205
; EEPROMwrite(33,date[7]); WDR();
lds R18,_date+7
ldi R16,33
ldi R17,0
rcall _EEPROMwrite
.dbline 205
wdr
.dbline -2
L140:
.dbline 0 ; func end
ret
.dbend
.dbfunc e main _main fV
; menu -> R20
.even
_main::
.dbline -1
.dbline 211
; }
;
;
;
; void main()
; {
.dbline 212
; uchar menu=0;
clr R20
.dbline 214
;
; OSCCAL=0x89;//EEPROMread(0x10);
ldi R24,137
out 0x31,R24
.dbline 215
; init_devices();
rcall _init_devices
.dbline 216
; delay(100);
ldi R16,100
ldi R17,0
rcall _delay
rjmp L150
L149:
.dbline 220
.dbline 221
cli
.dbline 222
ldi R16,4765
ldi R17,18
rcall _show4
.dbline 223
ldi R16,10000
ldi R17,39
rcall _delay
.dbline 224
L150:
.dbline 219
;
;
; while(1)
rjmp L149
X2:
.dbline 227
; {
; CLI();
; show4(4765);
; delay(10000);
; }
;
;
; read();
rcall _read
.dbline 228
; if(EEPROMread(33)==255)
ldi R16,33
ldi R17,0
rcall _EEPROMread
cpi R16,255
breq X8
rjmp L162
X8:
.dbline 229
; {
.dbline 230
; date[0]=1;
ldi R24,1
sts _date,R24
.dbline 231
; date[1]=21;
ldi R24,21
sts _date+1,R24
.dbline 232
; date[2]=3;
ldi R24,3
sts _date+2,R24
.dbline 233
; date[3]=1;
ldi R24,1
sts _date+3,R24
.dbline 234
; date[4]=0;
clr R2
sts _date+4,R2
.dbline 235
; date[5]=20;
ldi R24,20
sts _date+5,R24
.dbline 236
; date[6]=1;
ldi R24,1
sts _date+6,R24
.dbline 237
; date[7]=1;
sts _date+7,R24
.dbline 238
; write();
rcall _write
.dbline 239
; }
rjmp L162
L161:
.dbline 242
;
; while(1)
; {
.dbline 243
; if(1)
.dbline 244
; {
.dbline 245
; s1=0;
clr R2
sts _s1,R2
rjmp L167
L166:
.dbline 246
.dbline 246
rcall _a
.dbline 246
L167:
.dbline 246
; while(s1<5) {a();}
lds R24,_s1
cpi R24,5
brlo L166
.dbline 247
; }
L164:
.dbline 248
; WDR();
wdr
.dbline 250
;
; if(start)
lds R2,_start
tst R2
brne X9
rjmp L169
X9:
.dbline 251
; {
.dbline 252
; bee(300,400);
ldi R18,400
ldi R19,1
ldi R16,300
ldi R17,1
rcall _bee
.dbline 253
; s1=0;m1=0;out1;
clr R2
sts _s1,R2
.dbline 253
sts _m1,R2
.dbline 253
sbi 0x12,1
rjmp L172
L171:
.dbline 255
; while(start)
; {
.dbline 256
; a1();
rcall _a1
.dbline 257
; if(m1>=date[5]) {start=0;date[7]=0;out0;write();bee(1000,200);}
lds R2,_date+5
lds R3,_m1
cp R3,R2
brlo L174
.dbline 257
.dbline 257
clr R2
sts _start,R2
.dbline 257
sts _date+7,R2
.dbline 257
cbi 0x12,1
.dbline 257
rcall _write
.dbline 257
ldi R18,200
ldi R19,0
ldi R16,1000
ldi R17,3
rcall _bee
.dbline 257
L174:
.dbline 258
; if(cw(5)>600) {start=0;date[7]=1;out0;write();bee(500,400); delay(300); bee(300,400);}
ldi R16,5
rcall _cw
ldi R24,600
ldi R25,2
cp R24,R16
cpc R25,R17
brsh L178
.dbline 258
.dbline 258
clr R2
sts _start,R2
.dbline 258
ldi R24,1
sts _date+7,R24
.dbline 258
cbi 0x12,1
.dbline 258
rcall _write
.dbline 258
ldi R18,400
ldi R19,1
ldi R16,500
ldi R17,1
rcall _bee
.dbline 258
ldi R16,300
ldi R17,1
rcall _delay
.dbline 258
ldi R18,400
ldi R19,1
ldi R16,300
ldi R17,1
rcall _bee
.dbline 258
L178:
.dbline 259
in R2,0x10
clr R3
sbrc R2,1
rjmp L181
.dbline 259
.dbline 259
ldi R16,100
ldi R17,0
rcall _delay
.dbline 259
in R2,0x10
clr R3
sbrc R2,1
rjmp L183
.dbline 259
.dbline 259
clr R2
sts _start,R2
.dbline 259
sts _date+7,R2
.dbline 259
cbi 0x12,1
.dbline 259
ldi R16,200
ldi R17,0
rcall _delay
.dbline 259
ldi R18,400
ldi R19,1
ldi R16,1000
ldi R17,3
rcall _bee
.dbline 259
L183:
.dbline 259
; if(!Add) { delay(100); if(!Add) {start=0;date[7]=0;out0; delay(200); bee(1000,400);}}
L181:
.dbline 260
L172:
.dbline 254
lds R2,_start
tst R2
breq X10
rjmp L171
X10:
.dbline 261
; }
; }
L169:
.dbline 263
;
; if(!Add)
in R2,0x10
clr R3
sbrc R2,1
rjmp L186
.dbline 264
; {
.dbline 265
; delay(100);
ldi R16,100
ldi R17,0
rcall _delay
.dbline 266
; if(!Add)
in R2,0x10
clr R3
sbrc R2,1
rjmp L188
.dbline 267
; {
.dbline 268
; start=1;
ldi R24,1
sts _start,R24
.dbline 269
; bee(1000,600);
ldi R18,600
ldi R19,2
ldi R16,1000
ldi R17,3
rcall _bee
.dbline 270
; }
L188:
.dbline 271
; }
L186:
.dbline 273
;
; if(!Set)
in R2,0x10
clr R3
sbrc R2,2
rjmp L190
.dbline 274
; {
.dbline 275
; delay(100);
ldi R16,100
ldi R17,0
rcall _delay
.dbline 276
; if(!Set)
in R2,0x10
clr R3
sbrc R2,2
rjmp L192
.dbline 277
; {
.dbline 278
; read();
rcall _read
.dbline 279
; bee(300,400);
ldi R18,400
ldi R19,1
ldi R16,300
ldi R17,1
rcall _bee
rjmp L195
L194:
.dbline 281
; while(1)
; {
.dbline 282
; if(!Set)
in R2,0x10
clr R3
sbrc R2,2
rjmp L197
.dbline 283
; {
.dbline 284
; delay(100);
ldi R16,100
ldi R17,0
rcall _delay
.dbline 285
; if(!Set)
in R2,0x10
clr R3
sbrc R2,2
rjmp L199
.dbline 286
; {
.dbline 287
; menu++; if(menu==11) menu=10;
inc R20
.dbline 287
cpi R20,11
brne L201
.dbline 287
ldi R20,10
L201:
.dbline 288
; write();
rcall _write
.dbline 289
; bee(300,600); delay(200);
ldi R18,600
ldi R19,2
ldi R16,300
ldi R17,1
rcall _bee
.dbline 289
ldi R16,200
ldi R17,0
rcall _delay
.dbline 290
; }
L199:
.dbline 291
; }
L197:
.dbline 292
; if(!Add)
in R2,0x10
clr R3
sbrc R2,1
rjmp L203
.dbline 293
; {
.dbline 294
; delay(100);
ldi R16,100
ldi R17,0
rcall _delay
.dbline 295
; if(!Add)
in R2,0x10
clr R3
sbrc R2,1
rjmp L205
.dbline 296
; {date[menu]++;
.dbline 296
ldi R24,<_date
ldi R25,>_date
mov R2,R20
clr R3
add R2,R24
adc R3,R25
movw R30,R2
ldd R24,z+0
subi R24,255 ; addi 1
std z+0,R24
.dbline 297
; if(date[menu]>59) date[menu]=0;
ldi R24,<_date
ldi R25,>_date
mov R30,R20
clr R31
add R30,R24
adc R31,R25
ldd R2,z+0
ldi R24,59
cp R24,R2
brsh L207
.dbline 297
ldi R24,<_date
ldi R25,>_date
mov R30,R20
clr R31
add R30,R24
adc R31,R25
clr R2
std z+0,R2
L207:
.dbline 298
; if((menu==1||menu==3)&&date[menu]>23) date[menu]=0;
cpi R20,1
breq L211
cpi R20,3
brne L209
L211:
ldi R24,<_date
ldi R25,>_date
mov R30,R20
clr R31
add R30,R24
adc R31,R25
ldd R2,z+0
ldi R24,23
cp R24,R2
brsh L209
.dbline 298
ldi R24,<_date
ldi R25,>_date
mov R30,R20
clr R31
add R30,R24
adc R31,R25
clr R2
std z+0,R2
L209:
.dbline 299
; write(); bee(300,600);
rcall _write
.dbline 299
ldi R18,600
ldi R19,2
ldi R16,300
ldi R17,1
rcall _bee
.dbline 300
; }
L205:
.dbline 301
; }
L203:
.dbline 302
in R2,0x10
clr R3
sbrc R2,0
rjmp L212
.dbline 302
.dbline 302
ldi R16,100
ldi R17,0
rcall _delay
.dbline 302
in R2,0x10
clr R3
sbrc R2,0
rjmp L214
.dbline 302
.dbline 302
ldi R24,<_date
ldi R25,>_date
mov R2,R20
clr R3
add R2,R24
adc R3,R25
movw R30,R2
ldd R24,z+0
subi R24,1
std z+0,R24
.dbline 302
ldi R24,<_date
ldi R25,>_date
mov R30,R20
clr R31
add R30,R24
adc R31,R25
ldd R24,z+0
cpi R24,255
brne L216
.dbline 302
ldi R24,<_date
ldi R25,>_date
mov R30,R20
clr R31
add R30,R24
adc R31,R25
ldi R24,59
std z+0,R24
L216:
.dbline 302
rcall _write
.dbline 302
ldi R18,600
ldi R19,2
ldi R16,200
ldi R17,0
rcall _bee
.dbline 302
L214:
.dbline 302
; if(!Sub) { delay(100); if(!Sub) {date[menu]--; if(date[menu]==255) date[menu]=59; write(); bee(200,600); }}
L212:
.dbline 303
; if(!Store)
rjmp L226
X3:
.dbline 304
; { delay(100);
.dbline 304
ldi R16,100
ldi R17,0
rcall _delay
.dbline 305
; if(!Store)
rjmp L226
X4:
.dbline 306
; {
.dbline 307
; write();
rcall _write
.dbline 308
; bee(300,400);
ldi R18,400
ldi R19,1
ldi R16,300
ldi R17,1
rcall _bee
L222:
.dbline 309
L223:
.dbline 309
; while(1);
rjmp L222
X5:
.dbline 310
; }
.dbline 311
; }
L225:
.dbline 312
L226:
.dbline 312
cpi R20,7
breq L225
.dbline 313
ldi R24,<_date
ldi R25,>_date
mov R30,R20
clr R31
add R30,R24
adc R31,R25
ldd R18,z+0
clr R19
mov R16,R20
subi R16,255 ; addi 1
rcall _show
.dbline 314
ldi R16,20
ldi R17,0
rcall _delay
.dbline 315
L195:
.dbline 280
rjmp L194
X6:
.dbline 316
; while(menu==7) ;
; show(menu+1,date[menu]);
; delay(20);
; }
; }
L192:
.dbline 317
; }
L190:
.dbline 319
L162:
.dbline 241
rjmp L161
X7:
.dbline -2
L148:
.dbline 0 ; func end
ret
.dbsym r menu 20 c
.dbend
.area bss(ram, con, rel)
.dbfile D:\ele\AVR\ICC\cp\biaotao\bt.c
_adc_mux::
.blkb 1
.dbsym e adc_mux _adc_mux c
_adc_rel::
.blkb 32
.dbsym e adc_rel _adc_rel A[32:8]l
_start::
.blkb 1
.dbsym e start _start c
_ready::
.blkb 1
.dbsym e ready _ready c
_dp::
.blkb 1
.dbsym e dp _dp c
_lock::
.blkb 1
.dbsym e lock _lock c
_dat::
.blkb 2
.dbsym e dat _dat i
_s1::
.blkb 1
.dbsym e s1 _s1 c
_m1::
.blkb 1
.dbsym e m1 _m1 c
_s::
.blkb 1
.dbsym e s _s c
_m::
.blkb 1
.dbsym e m _m c
_i::
.blkb 1
.dbsym e i _i c
_t::
.blkb 1
.dbsym e t _t c
_j::
.blkb 1
.dbsym e j _j c
_ORDER::
.blkb 1
.dbsym e ORDER _ORDER c
_n::
.blkb 1
.dbsym e n _n c
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -