📄 sl3010_4.lis
字号:
015E .dbline -2
015E .dbline 229
015E ; rst_time=0;
015E ; break;
015E ; case 0x02: // < B >
015E L17:
015E .dbline 0 ; func end
015E 0895 ret
0160 .dbend
0160 .dbfunc e mic_startup _mic_startup fV
.even
0160 _mic_startup::
0160 .dbline -1
0160 .dbline 232
0160 ; rst_time=0;
0160 ; break;
0160 ; case 0x08: // < C >
0160 07C0 rjmp L42
0162 L41:
0162 .dbline 235
0162 ; rst_time++;
0162 ; break;
0162 ; case 0x01: // < D >
0162 .dbline 236
0162 ; rst_time=0;
0162 83B3 in R24,0x13
0164 8870 andi R24,8
0166 80931800 sts _mic_in,R24
016A .dbline 237
016A ; break;
016A 8823 tst R24
016C 09F4 brne L44
016E .dbline 237
016E .dbline 237
016E 01C0 rjmp L43
0170 L44:
0170 .dbline 238
0170 L42:
0170 .dbline 234
0170 F8CF rjmp L41
0172 L43:
0172 .dbline -2
0172 .dbline 239
0172 ; }
0172 ; if(rst_time > 400) // 400*25ms=10s,+1s 看门狗复位
0172 L40:
0172 .dbline 0 ; func end
0172 0895 ret
0174 .dbend
0174 .dbfunc e remote_auto_time _remote_auto_time fV
.even
0174 _remote_auto_time::
0174 .dbline -1
0174 .dbline 254
0174 ; {
0174 ; PORTA = 0xff;
0174 ; watchdog_init();
0174 ; while(1);
0174 ; }
0174 ; if(gzsl == 0x88)
0174 ; {
0174 ; if(t0_times == 10)
0174 ; {
0174 ; timers++;
0174 ; t0_times = 0;
0174 ; pa = led_data[timers];
0174 ; if(pa==0x0a){timers=0;}
0174 ; PORTA = pa;
0174 ; }
0174 .dbline 255
0174 ; }
0174 86B3 in R24,0x16
0176 8F70 andi R24,15
0178 80931900 sts _remote_in,R24
017C .dbline 256
017C ; if(gzsl == 0x33)
017C 082F mov R16,R24
017E 1127 clr R17
0180 0030 cpi R16,0
0182 0107 cpc R16,R17
0184 09F4 brne X4
0186 62C0 rjmp L48
0188 X4:
0188 X2:
0188 0130 cpi R16,1
018A E0E0 ldi R30,0
018C 1E07 cpc R17,R30
018E 09F4 brne X5
0190 4AC0 rjmp L59
0192 X5:
0192 0230 cpi R16,2
0194 E0E0 ldi R30,0
0196 1E07 cpc R17,R30
0198 F1F0 breq L53
019A 0430 cpi R16,4
019C E0E0 ldi R30,0
019E 1E07 cpc R17,R30
01A0 29F0 breq L50
01A2 0830 cpi R16,8
01A4 E0E0 ldi R30,0
01A6 1E07 cpc R17,R30
01A8 51F1 breq L56
01AA 50C0 rjmp L47
01AC X3:
01AC .dbline 257
01AC ; {
01AC L50:
01AC .dbline 259
01AC ; sw_touch();
01AC ; if(t0_times == 8) //8*25ms=200ms
01AC 80911400 lds R24,_delay_time2
01B0 90911500 lds R25,_delay_time2+1
01B4 C297 sbiw R24,50
01B6 90931500 sts _delay_time2+1,R25
01BA 80931400 sts _delay_time2,R24
01BE .dbline 260
01BE ; {
01BE 8233 cpi R24,50
01C0 E0E0 ldi R30,0
01C2 9E07 cpc R25,R30
01C4 09F0 breq X6
01C6 42C0 rjmp L48
01C8 X6:
01C8 .dbline 261
01C8 ; t0_times = 0;
01C8 .dbline 261
01C8 84E6 ldi R24,100
01CA 90E0 ldi R25,0
01CC 90931500 sts _delay_time2+1,R25
01D0 80931400 sts _delay_time2,R24
01D4 .dbline 261
01D4 .dbline 262
01D4 ; remote_in = PINB & 0x0F;
01D4 3BC0 rjmp L48
01D6 L53:
01D6 .dbline 264
01D6 ; sound_1 = remote_in;
01D6 ; if(sound_2 != sound_1)
01D6 80911600 lds R24,_delay_time1
01DA 90911700 lds R25,_delay_time1+1
01DE C296 adiw R24,50
01E0 90931700 sts _delay_time1+1,R25
01E4 80931600 sts _delay_time1,R24
01E8 .dbline 265
01E8 ; {sound_add=0;sound_2 = sound_1;}
01E8 8230 cpi R24,2
01EA E8E0 ldi R30,8
01EC 9E07 cpc R25,R30
01EE 71F5 brne L48
01F0 .dbline 266
01F0 ; switch (remote_in)
01F0 .dbline 266
01F0 80ED ldi R24,2000
01F2 97E0 ldi R25,7
01F4 90931700 sts _delay_time1+1,R25
01F8 80931600 sts _delay_time1,R24
01FC .dbline 266
01FC .dbline 267
01FC ; {//检测遥控器是否有键按下
01FC 27C0 rjmp L48
01FE L56:
01FE .dbline 269
01FE ; case 0x00:
01FE ; forward(); //前行
01FE 80911600 lds R24,_delay_time1
0202 90911700 lds R25,_delay_time1+1
0206 C297 sbiw R24,50
0208 90931700 sts _delay_time1+1,R25
020C 80931600 sts _delay_time1,R24
0210 .dbline 270
0210 ; sound_add=0x00;
0210 8233 cpi R24,50
0212 E0E0 ldi R30,0
0214 9E07 cpc R25,R30
0216 D1F4 brne L48
0218 .dbline 271
0218 ; temp1=0x00;
0218 .dbline 271
0218 84E6 ldi R24,100
021A 90E0 ldi R25,0
021C 90931700 sts _delay_time1+1,R25
0220 80931600 sts _delay_time1,R24
0224 .dbline 271
0224 .dbline 272
0224 ; break;
0224 13C0 rjmp L48
0226 L59:
0226 .dbline 274
0226 ; case 0x04: // < A >
0226 ; turn_right(); //右转
0226 80911400 lds R24,_delay_time2
022A 90911500 lds R25,_delay_time2+1
022E C296 adiw R24,50
0230 90931500 sts _delay_time2+1,R25
0234 80931400 sts _delay_time2,R24
0238 .dbline 275
0238 ; temp1=sound_right[sound_add];
0238 8230 cpi R24,2
023A E8E0 ldi R30,8
023C 9E07 cpc R25,R30
023E 31F4 brne L48
0240 .dbline 276
0240 ; break;
0240 .dbline 276
0240 80ED ldi R24,2000
0242 97E0 ldi R25,7
0244 90931500 sts _delay_time2+1,R25
0248 80931400 sts _delay_time2,R24
024C .dbline 276
024C .dbline 277
024C ; case 0x02: // < B >
024C .dbline 279
024C ; backward(); //后退
024C ; temp1=sound_back[sound_add];
024C L47:
024C L48:
024C .dbline -2
024C .dbline 281
024C ; break;
024C ; case 0x08: // < C >
024C L46:
024C .dbline 0 ; func end
024C 0895 ret
024E .dbend
.area eeprom(rom, con, rel)
0000 .dbfile E:/icc/include/sl3010.c
0000 _sound::
0000 201C .byte 32,28
0002 1D4C .byte 29,'L
0004 4C4C .byte 'L,'L
0006 4C20 .byte 'L,32
0008 2D19 .byte 45,25
000A 1A19 .byte 26,25
000C 1848 .byte 24,'H
000E 4848 .byte 'H,'H
0010 4847 .byte 'H,'G
0012 4746 .byte 'G,'F
0014 4645 .byte 'F,'E
0016 4545 .byte 'E,'E
0018 4545 .byte 'E,'E
001A 4545 .byte 'E,'E
001C 4545 .byte 'E,'E
001E 2324 .byte 35,36
0020 2544 .byte 37,'D
0022 4524 .byte 'E,36
0024 2322 .byte 35,34
0026 4240 .byte 'B,64
0028 4023 .byte 64,35
002A 2221 .byte 34,33
002C 4128 .byte 'A,40
002E 4823 .byte 'H,35
0030 2545 .byte 37,'E
0032 4040 .byte 64,64
0034 2121 .byte 33,33
0036 4221 .byte 'B,33
0038 2141 .byte 33,'A
003A 2028 .byte 32,40
003C 4726 .byte 'G,38
003E 1716 .byte 23,22
0040 1545 .byte 21,'E
0042 4031 .byte 64,49
0044 1121 .byte 17,33
0046 2121 .byte 33,33
0048 2242 .byte 34,'B
004A 4020 .byte 64,32
004C 2323 .byte 35,35
004E 2425 .byte 36,37
0050 2423 .byte 36,35
0052 2425 .byte 36,37
0054 2623 .byte 38,35
0056 2342 .byte 35,'B
0058 4240 .byte 'B,64
005A 2322 .byte 35,34
005C 2141 .byte 33,'A
005E 2828 .byte 40,40
0060 2823 .byte 40,35
0062 2545 .byte 37,'E
0064 4540 .byte 'E,64
0066 2025 .byte 32,37
0068 4628 .byte 'F,40
006A 2848 .byte 40,'H
006C 2029 .byte 32,41
006E 4726 .byte 'G,38
0070 1716 .byte 23,22
0072 1545 .byte 21,'E
0074 2525 .byte 37,37
0076 2628 .byte 38,40
0078 1816 .byte 24,22
007A 2628 .byte 38,40
007C 2628 .byte 38,40
007E 1919 .byte 25,25
0080 4949 .byte 'I,'I
0082 2025 .byte 32,37
0084 2A18 .byte 42,24
0086 1929 .byte 25,41
0088 2816 .byte 40,22
008A 1716 .byte 23,22
008C 1525 .byte 21,37
008E 2528 .byte 37,40
0090 292A .byte 41,42
0092 2948 .byte 41,'H
0094 2848 .byte 40,'H
0096 2C4C .byte 44,'L
0098 4C40 .byte 'L,64
009A 2A2C .byte 42,44
009C 1C1A .byte 28,26
009E 2A2A .byte 42,42
00A0 294A .byte 41,'J
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -