⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.lis

📁 sunplus spca514 cdmp3 源码
💻 LIS
📖 第 1 页 / 共 5 页
字号:
                         .module main.c
                         .area data(ram, con, rel)
 0000                 _display_type::
 0000                   .blkb 1
                         .area idata
 0000 00                .byte 0
                         .area data(ram, con, rel)
 0001                   .dbfile D:\avrmcu\AT980\AT980\main.c
 0001                   .dbsym s display_type _display_type c
 0001                 _led_val::
 0001                   .blkb 1
                         .area idata
 0001 00                .byte 0
                         .area data(ram, con, rel)
 0002                   .dbfile D:\avrmcu\AT980\AT980\main.c
 0002                   .dbsym s led_val _led_val c
 0002                 _tick_flag::
 0002                   .blkb 1
                         .area idata
 0002 00                .byte 0
                         .area data(ram, con, rel)
 0003                   .dbfile D:\avrmcu\AT980\AT980\main.c
 0003                   .dbsym s tick_flag _tick_flag c
 0003                 _key_buff::
 0003                   .blkb 2
                         .area idata
 0003 FFFF              .word 65535
                         .area data(ram, con, rel)
 0005                   .dbfile D:\avrmcu\AT980\AT980\main.c
 0005                   .dbsym s key_buff _key_buff i
 0005                 _dvd_key::
 0005                   .blkb 2
                         .area idata
 0005 FFFF              .word 65535
                         .area data(ram, con, rel)
 0007                   .dbfile D:\avrmcu\AT980\AT980\main.c
 0007                   .dbsym s dvd_key _dvd_key i
 0007                 _g_ui_tmp_msg_cnt::
 0007                   .blkb 1
                         .area idata
 0007 00                .byte 0
                         .area data(ram, con, rel)
 0008                   .dbfile D:\avrmcu\AT980\AT980\main.c
 0008                   .dbsym s g_ui_tmp_msg_cnt _g_ui_tmp_msg_cnt c
 0008                 _work_mode::
 0008                   .blkb 1
                         .area idata
 0008 00                .byte 0
                         .area data(ram, con, rel)
 0009                   .dbfile D:\avrmcu\AT980\AT980\main.c
 0009                   .dbsym s work_mode _work_mode c
                         .area text(rom, con, rel)
 0000                   .dbfile D:\avrmcu\AT980\AT980\main.c
 0000                   .dbfunc s get_uicc_key _get_uicc_key fI
                       ;              j -> <dead>
                       ;              i -> R20
                       ;            key -> R16,R17
                         .even
 0000                 _get_uicc_key::
 0000 0E940000          xcall push_gset1
 0004                   .dbline -1
 0004                   .dbline 34
                       ; #include <macros.h>
                       ; #include <iom163.h>
                       ; #include <eeprom.h>
                       ; #include "..\bu2624\bu2624.h"
                       ; #include "..\main.h"
                       ; #include "..\key.h"
                       ; #include "..\uicc_def.h"
                       ; #include "..\io.h"
                       ; #include "..\key_lut.h"
                       ; #define SLEEP_TIME_TAG 30
                       ; #define SLEEP_MAX_CNT 4
                       ; extern  NV_SETTINGS gps;
                       ; extern unsigned int info;
                       ; extern unsigned char amfm_flag;
                       ; unsigned char display_type=0,g_avtv; 
                       ; extern unsigned char  radio_is_muted, rds_display_type; 
                       ; extern unsigned int g_ui_timing_cnt;
                       ; unsigned char led_val=0;
                       ; extern unsigned int g_vfd_grid_buffer[];
                       ; //unsigned char display_default_type = 0;
                       ; unsigned char tick_flag=0;
                       ; unsigned int key_buff=0xffff;
                       ; unsigned char uicc_code,last_key;
                       ; unsigned int dvd_key=0xffff;
                       ; unsigned char g_ui_tmp_msg_cnt=0;
                       ; extern unsigned char repeat,muted;
                       ; extern unsigned char Mchvol,Bassvol,Treblevol,Balanceval,Loudnessval;
                       ; extern unsigned char Cchvol,SWchvol,Schvol;
                       ; extern unsigned char is_autosearching;
                       ; unsigned char work_mode=0,work_mode1;
                       ; extern unsigned char *err_msg; 
                       ; extern const UI_KEY_MAP key_map[];
                       ; unsigned char get_uicc_key(unsigned int key)
                       ; {
 0004                   .dbline 36
                       ;  unsigned char i,j;
                       ;   for(i=0;i<MAX_KEY_CNT;i++)
 0004 4427              clr R20
 0006 18C0              xjmp L5
 0008                 L2:
 0008                   .dbline 37
                       ;    if(key_map[i].input_key == key)
 0008 83E0              ldi R24,3
 000A 849F              mul R24,R20
 000C F001              movw R30,R0
 000E 80E0              ldi R24,<_key_map
 0010 90E0              ldi R25,>_key_map
 0012 E80F              add R30,R24
 0014 F91F              adc R31,R25
 0016 0590              lpm R0,Z+
 0018 1490              lpm R1,Z
 001A F001              movw R30,R0
 001C E017              cp R30,R16
 001E F107              cpc R31,R17
 0020 51F4              brne L6
 0022                   .dbline 38
                       ;    {
 0022                   .dbline 39
                       ;      return key_map[i].uicc_key;
 0022 83E0              ldi R24,3
 0024 849F              mul R24,R20
 0026 F001              movw R30,R0
 0028 80E0              ldi R24,<_key_map+2
 002A 90E0              ldi R25,>_key_map+2
 002C E80F              add R30,R24
 002E F91F              adc R31,R25
 0030 0491              lpm R16,Z
 0032 1127              clr R17
 0034 05C0              xjmp L1
 0036                 L6:
 0036                 L3:
 0036                   .dbline 36
 0036 4395              inc R20
 0038                 L5:
 0038                   .dbline 36
 0038 4C32              cpi R20,44
 003A 30F3              brlo L2
 003C                   .dbline 41
                       ;    }
                       ;   return 0xff;
 003C 0FEF              ldi R16,255
 003E 10E0              ldi R17,0
 0040                   .dbline -2
 0040                 L1:
 0040 0E940000          xcall pop_gset1
 0044                   .dbline 0 ; func end
 0044 0895              ret
 0046                   .dbsym l j 1 c
 0046                   .dbsym r i 20 c
 0046                   .dbsym r key 16 i
 0046                   .dbfunc s DEC_power _DEC_power fI
                       ;            val -> R20
                         .even
 0046                 _DEC_power::
 0046 0E940000          xcall push_gset1
 004A 402F              mov R20,R16
 004C                   .dbline -1
 004C                   .dbline 44
                       ; }
                       ; void DEC_power(unsigned char val)
                       ; {
 004C                   .dbline 45
                       ;   if(val)
 004C 4423              tst R20
 004E 31F0              breq L10
 0050                   .dbline 46
                       ;      led_val |= 0x10;
 0050 80910100          lds R24,_led_val
 0054 8061              ori R24,16
 0056 80930100          sts _led_val,R24
 005A 05C0              xjmp L11
 005C                 L10:
 005C                   .dbline 48
                       ;   else
                       ;      led_val &= 0x0f;
 005C 80910100          lds R24,_led_val
 0060 8F70              andi R24,15
 0062 80930100          sts _led_val,R24
 0066                 L11:
 0066                   .dbline 49
                       ;   VFD_LL_RefreshLED(led_val);
 0066 00910100          lds R16,_led_val
 006A 1127              clr R17
 006C 0E940000          xcall _VFD_LL_RefreshLED
 0070                   .dbline -2
 0070                   .dbline 50
                       ; }
 0070                 L9:
 0070 0E940000          xcall pop_gset1
 0074                   .dbline 0 ; func end
 0074 0895              ret
 0076                   .dbsym r val 20 c
 0076                   .dbfunc s Set_AVTV _Set_AVTV fI
                         .even
 0076                 _Set_AVTV::
 0076                   .dbline -1
 0076                   .dbline 52
                       ; void Set_AVTV(void)
                       ; {
 0076                   .dbline 53
                       ;  if(g_avtv)
 0076 20900300          lds R2,_g_avtv
 007A 2220              tst R2
 007C 11F0              breq L13
 007E                   .dbline 54
                       ;    Set_TV();
 007E AA9A              SBI 0x15,2
 0080 01C0              xjmp L14
 0082                 L13:
 0082                   .dbline 56
 0082 AA98              CBI 0x15,2
 0084                 L14:
 0084                   .dbline -2
 0084                   .dbline 57
                       ;  else
                       ;   Set_AV();
                       ; }
 0084                 L12:
 0084                   .dbline 0 ; func end
 0084 0895              ret
 0086                   .dbfunc s ui_input_handler _ui_input_handler fI
                         .area func_lit(rom, con, rel)
 0000                 L52:
 0000 F000              .word `L31
 0002 0201              .word `L34
 0004 2601              .word `L40
 0006 1401              .word `L37
 0008 3801              .word `L43
 000A 4A01              .word `L46
 000C 5C01              .word `L49
                         .area text(rom, con, rel)
 0086                   .dbfile D:\avrmcu\AT980\AT980\main.c
                         .area func_lit(rom, con, rel)
 000E                 L78:
 000E 9C01              .word `L57
 0010 B001              .word `L60
 0012 D801              .word `L66
 0014 C401              .word `L63
 0016 EC01              .word `L69
 0018 0002              .word `L72
 001A 1402              .word `L75
                         .area text(rom, con, rel)
 0086                   .dbfile D:\avrmcu\AT980\AT980\main.c
                         .area func_lit(rom, con, rel)
 001C                 L92:
 001C 7502              .word `L88
 001E 8002              .word `L89
 0020 8B02              .word `L90
 0022 9602              .word `L91
                         .area text(rom, con, rel)
 0086                   .dbfile D:\avrmcu\AT980\AT980\main.c
                       ;            tmp -> R20,R21
                         .even
 0086                 _ui_input_handler::
 0086 0E940000          xcall push_gset2
 008A                   .dbline -1
 008A                   .dbline 59
                       ; void ui_input_handler(void)
                       ; {
 008A                   .dbline 61
                       ;  unsigned int tmp;
                       ;  if(work_mode == POWER_OFF_MODE)
 008A 80910800          lds R24,_work_mode
 008E 8530              cpi R24,5
 0090 A9F4              brne L16
 0092                   .dbline 62
                       ;  {
 0092                   .dbline 63
                       ;    if(uicc_code== UICC_POWER)
 0092 80910200          lds R24,_uicc_code
 0096 8A3A              cpi R24,170
 0098 09F0              breq X5
 009A 14C3              xjmp L17
 009C                 X5:
 009C                   .dbline 64
                       ;    {
 009C                   .dbline 65
                       ;        g_avtv = 0;
 009C 2224              clr R2
 009E 20920300          sts _g_avtv,R2
 00A2                   .dbline 66
                       ;        Set_AV();
 00A2 AA98              CBI 0x15,2
 00A4                   .dbline 67
                       ;        work_mode = work_mode1;
 00A4 20900000          lds R2,_work_mode1
 00A8 20920800          sts _work_mode,R2
 00AC                   .dbline 68
                       ;        work_mode_convert();
 00AC 0E940000          xcall _work_mode_convert
 00B0                   .dbline 69
                       ;        led_val &= 0x1e;
 00B0 80910100          lds R24,_led_val
 00B4 8E71              andi R24,30
 00B6 80930100          sts _led_val,R24
 00BA                   .dbline 74
                       ;        
                       ;       // delay_ms(100);
                       ;       // muted = 0;
                       ;        //MCU_mute();
                       ;     }
 00BA                   .dbline 76
                       ;     else
                       ;     {
 00BA                   .dbline 81
                       ;      #ifdef CLOCK_STANDBY
                       ;       clock_operator();
                       ;       #endif
                       ;     

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -