📄 radio.lis
字号:
0416 .dbline 245
; else if(pty_search_type == PTY_OTHER_M)
0416 80910100 lds R24,_rds_dis_string+1
041A 8F30 cpi R24,15
041C 21F4 brne L94
041E .dbline 246
; pty_search_type = PTY_ALARM;
041E 8FE1 ldi R24,31
0420 80930100 sts _rds_dis_string+1,R24
0424 1CC3 xjmp L26
0426 L94:
0426 .dbline 248
; else
; pty_search_type++;
0426 80910100 lds R24,_rds_dis_string+1
042A 8F5F subi R24,255 ; addi 1
042C 80930100 sts _rds_dis_string+1,R24
0430 .dbline 249
; }
0430 .dbline 251
; #endif
; break;
0430 16C3 xjmp L26
0432 L99:
0432 .dbline 254
;
; case RD_DOWN:
; if(display_type == RADIO_STORE)
0432 80910000 lds R24,_display_type
0436 8E30 cpi R24,14
0438 21F5 brne L100
043A .dbline 255
; {
043A .dbline 256
; if(radio_count >0)
043A 30900100 lds R3,_radio_count+1
043E 20900000 lds R2,_radio_count
0442 2220 tst R2
0444 11F4 brne X9
0446 3320 tst R3
0448 39F0 breq L102
044A X9:
044A .dbline 257
; radio_count = radio_count-1;
044A C101 movw R24,R2
044C 0197 sbiw R24,1
044E 90930100 sts _radio_count+1,R25
0452 80930000 sts _radio_count,R24
0456 11C0 xjmp L103
0458 L102:
0458 .dbline 259
; else
; {
0458 .dbline 260
; if(amfm_flag)
0458 20900000 lds R2,_amfm_flag
045C 2220 tst R2
045E 39F0 breq L104
0460 .dbline 261
; radio_count = MAX_AM_STATION;
0460 84E1 ldi R24,20
0462 90E0 ldi R25,0
0464 90930100 sts _radio_count+1,R25
0468 80930000 sts _radio_count,R24
046C 06C0 xjmp L105
046E L104:
046E .dbline 263
; else
; radio_count = MAX_FM_STATION;
046E 8EE1 ldi R24,30
0470 90E0 ldi R25,0
0472 90930100 sts _radio_count+1,R25
0476 80930000 sts _radio_count,R24
047A L105:
047A .dbline 265
047A L103:
047A .dbline 265
;
; };
047A .dbline 266
; g_ui_tmp_msg_cnt = 30;
047A 8EE1 ldi R24,30
047C 80930000 sts _g_ui_tmp_msg_cnt,R24
0480 .dbline 267
; break;
0480 EEC2 xjmp L26
0482 L100:
0482 .dbline 270
; }
; #ifdef SGJM_RDS
; if(pty_is_searching == 1)
0482 80910000 lds R24,_pty_is_searching
0486 8130 cpi R24,1
0488 09F0 breq X10
048A E9C2 xjmp L26
048C X10:
048C .dbline 271
; {
048C .dbline 273
;
; if(pty_search_type == PTY_ALARM)
048C 80910100 lds R24,_rds_dis_string+1
0490 8F31 cpi R24,31
0492 21F4 brne L108
0494 .dbline 274
; pty_search_type = PTY_OTHER_M;
0494 8FE0 ldi R24,15
0496 80930100 sts _rds_dis_string+1,R24
049A E1C2 xjmp L26
049C L108:
049C .dbline 275
; else if(pty_search_type == PTY_NONE)
049C 20900100 lds R2,_rds_dis_string+1
04A0 2220 tst R2
04A2 21F4 brne L112
04A4 .dbline 276
; pty_search_type = PTY_ALARM;
04A4 8FE1 ldi R24,31
04A6 80930100 sts _rds_dis_string+1,R24
04AA D9C2 xjmp L26
04AC L112:
04AC .dbline 278
; else
; pty_search_type--;
04AC 80910100 lds R24,_rds_dis_string+1
04B0 8150 subi R24,1
04B2 80930100 sts _rds_dis_string+1,R24
04B6 .dbline 279
; }
04B6 .dbline 282
; #endif
;
; break;
04B6 D3C2 xjmp L26
04B8 L117:
04B8 .dbline 284
; case RD_STEP_B:
; search_dir = 0;
04B8 2224 clr R2
04BA 20920000 sts _search_dir,R2
04BE .dbline 285
; tuner_handsearch();
04BE 0E940000 xcall _tuner_handsearch
04C2 .dbline 286
; save_fre();
04C2 9EDD xcall _save_fre
04C4 .dbline 287
; break;
04C4 CCC2 xjmp L26
04C6 L118:
04C6 .dbline 290
; case RD_STEP_F:
; //is_autosearching = 0;
; search_dir = 1;
04C6 81E0 ldi R24,1
04C8 80930000 sts _search_dir,R24
04CC .dbline 291
; tuner_handsearch();
04CC 0E940000 xcall _tuner_handsearch
04D0 .dbline 292
; save_fre();
04D0 97DD xcall _save_fre
04D2 .dbline 293
; break;
04D2 C5C2 xjmp L26
04D4 L119:
04D4 .dbline 297
; case RD_STOP:
; if(
; #ifdef SGJM_RDS
; pty_is_searching
04D4 20900000 lds R2,_pty_is_searching
04D8 2220 tst R2
04DA 29F4 brne L122
04DC 20900000 lds R2,_is_autosearching
04E0 2220 tst R2
04E2 09F4 brne X11
04E4 BCC2 xjmp L26
04E6 X11:
04E6 L122:
04E6 .dbline 301
; ||
; #endif
; is_autosearching)
; {
04E6 .dbline 303
; #ifdef SGJM_RDS
; pty_is_searching = 0;
04E6 2224 clr R2
04E8 20920000 sts _pty_is_searching,R2
04EC .dbline 305
; #endif
; radio_is_muted = 1;
04EC 81E0 ldi R24,1
04EE 80930000 sts _radio_is_muted,R24
04F2 .dbline 306
; mute_radio();
04F2 0E940000 xcall _mute_radio
04F6 .dbline 307
; is_autosearching = 0;
04F6 2224 clr R2
04F8 20920000 sts _is_autosearching,R2
04FC .dbline 308
; switch_fmam();
04FC 0E940000 xcall _switch_fmam
0500 .dbline 309
; delay_ms(500);
0500 04EF ldi R16,500
0502 11E0 ldi R17,1
0504 0E940000 xcall _delay_ms
0508 .dbline 310
; radio_is_muted = 0;
0508 2224 clr R2
050A 20920000 sts _radio_is_muted,R2
050E .dbline 311
; mute_radio();
050E 0E940000 xcall _mute_radio
0512 .dbline 313
; //display_type = rds_display_type;
; g_ui_tmp_msg_cnt = 2;
0512 82E0 ldi R24,2
0514 80930000 sts _g_ui_tmp_msg_cnt,R24
0518 .dbline 314
; };
0518 .dbline 314
0518 .dbline 315
; break;
0518 A2C2 xjmp L26
051A L123:
051A .dbline 317
; case RD_AUDIO:
; if(!amfm_flag)
051A 20900000 lds R2,_amfm_flag
051E 2220 tst R2
0520 09F0 breq X12
0522 9DC2 xjmp L26
0524 X12:
0524 .dbline 318
; {
0524 .dbline 319
; if(is_stereo)
0524 20900000 lds R2,_is_stereo
0528 2220 tst R2
052A 21F0 breq L126
052C .dbline 320
; is_stereo = 0;
052C 2224 clr R2
052E 20920000 sts _is_stereo,R2
0532 03C0 xjmp L127
0534 L126:
0534 .dbline 322
; else
; is_stereo = 1;
0534 81E0 ldi R24,1
0536 80930000 sts _is_stereo,R24
053A L127:
053A .dbline 323
; switch_audio_channel();
053A 0E940000 xcall _switch_audio_channel
053E .dbline 324
; };
053E .dbline 324
053E .dbline 325
; break;
053E 8FC2 xjmp L26
0540 L128:
0540 .dbline 327
; case RD_SKIPB:
; is_autosearching = 0;
0540 2224 clr R2
0542 20920000 sts _is_autosearching,R2
0546 .dbline 328
; g_ui_tmp_msg_cnt = 10;
0546 8AE0 ldi R24,10
0548 80930000 sts _g_ui_tmp_msg_cnt,R24
054C .dbline 329
; if(amfm_flag)
054C 20900000 lds R2,_amfm_flag
0550 2220 tst R2
0552 29F1 breq L129
0554 .dbline 330
; {
0554 .dbline 331
; if( station_no == 0 )
0554 20900000 lds R2,_station_no
0558 2220 tst R2
055A 21F4 brne L131
055C .dbline 332
; station_no = MAX_AM_STATION-1;
055C 83E1 ldi R24,19
055E 80930000 sts _station_no,R24
0562 05C0 xjmp L132
0564 L131:
0564 .dbline 334
; else
; station_no--;
0564 80910000 lds R24,_station_no
0568 8150 subi R24,1
056A 80930000 sts _station_no,R24
056E L132:
056E .dbline 335
; EEPROMwrite((int)&(gps.ps_am_no),station_no);//ps_update_radio(PS_UPDATE_AM_NO);
056E 20910000 lds R18,_station_no
0572 00E0 ldi R16,<_gps+3
0574 10E0 ldi R17,>_gps+3
0576 0E940000 xcall _EEPROMwrite
057A .dbline 336
; EEPROM_READ((int)&gps.ps_am_station[station_no],freq);
057A 82E0 ldi R24,2
057C 90E0 ldi R25,0
057E 8883 std y+0,R24
0580 9983 std y+1,R25
0582 20E0 ldi R18,<_freq
0584 30E0 ldi R19,>_freq
0586 80E0 ldi R24,<_gps+68
0588 90E0 ldi R25,>_gps+68
058A 00910000 lds R16,_station_no
058E 1127 clr R17
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -