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

📄 bu2624.lis

📁 sunplus spca514 cdmp3 源码
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 00DE 11F0              breq L25
 00E0                   .dbline 144
                       ;         {
 00E0                   .dbline 145
                       ;             radio_din_hi();
 00E0 959A              SBI 0x12,5
 00E2                   .dbline 146
                       ;         }
 00E2 01C0              xjmp L26
 00E4                 L25:
 00E4                   .dbline 148
                       ;         else
                       ;         {
 00E4                   .dbline 149
                       ;             radio_din_lo();
 00E4 9598              CBI 0x12,5
 00E6                   .dbline 150
                       ;         }
 00E6                 L26:
 00E6                   .dbline 151
 00E6 8CDF              xcall _soft_delay
 00E8                   .dbline 152
 00E8 949A              SBI 0x12,4
 00EA                   .dbline 153
 00EA 7695              lsr R23
 00EC 6795              ror R22
 00EE                   .dbline 154
 00EE 88DF              xcall _soft_delay
 00F0                   .dbline 155
 00F0                 L22:
 00F0                   .dbline 140
 00F0 4395              inc R20
 00F2                 L24:
 00F2                   .dbline 140
 00F2 4031              cpi R20,16
 00F4 70F3              brlo L21
 00F6                   .dbline -2
 00F6                   .dbline 156
                       ;         soft_delay();
                       ;         radio_clk_hi();
                       ;         data1 >>= 1;
                       ;         soft_delay();
                       ;     }
                       ; }
 00F6                 L20:
 00F6 0E940000          xcall pop_gset2
 00FA                   .dbline 0 ; func end
 00FA 0895              ret
 00FC                   .dbsym r i 20 c
 00FC                   .dbsym r data1 22 i
 00FC                   .dbfunc s send_cmd_to_bu2624 _send_cmd_to_bu2624 fI
                         .even
 00FC                 _send_cmd_to_bu2624::
 00FC                   .dbline -1
 00FC                   .dbline 159
                       ; 
                       ; void  send_cmd_to_bu2624(void)
                       ; {
 00FC                   .dbline 161
                       ;    
                       ;      radio_clk_hi();
 00FC 949A              SBI 0x12,4
 00FE                   .dbline 162
                       ;      radio_stb_hi();
 00FE 909A              SBI 0x12,0
 0100                   .dbline 164
                       ;    
                       ;      soft_delay();
 0100 7FDF              xcall _soft_delay
 0102                   .dbline 165
                       ;      send_word_to_bu2624(In_Pdata);
 0102 10910E00          lds R17,_In_Pdata+1
 0106 00910D00          lds R16,_In_Pdata
 010A DEDF              xcall _send_word_to_bu2624
 010C                   .dbline 166
                       ;      send_word_to_bu2624(In_Cdata);
 010C 10910C00          lds R17,_In_Cdata+1
 0110 00910B00          lds R16,_In_Cdata
 0114 D9DF              xcall _send_word_to_bu2624
 0116                   .dbline 167
                       ;      radio_stb_lo();
 0116 9098              CBI 0x12,0
 0118                   .dbline -2
 0118                   .dbline 168
                       ; }
 0118                 L27:
 0118                   .dbline 0 ; func end
 0118 0895              ret
 011A                   .dbfunc s mute_radio _mute_radio fI
                         .even
 011A                 _mute_radio::
 011A                   .dbline -1
 011A                   .dbline 171
                       ; 
                       ; void mute_radio(void)
                       ; {
 011A                   .dbline 172
                       ;  if(radio_is_muted)
 011A 20900800          lds R2,_radio_is_muted
 011E 2220              tst R2
 0120 79F0              breq L29
 0122                   .dbline 173
                       ;  {
 0122                   .dbline 174
                       ;     Enable_IF_OUT();//In_Cdata = In_Cdata&(~P1_IF_NOOUT);
 0122 90910C00          lds R25,_In_Cdata+1
 0126 80910B00          lds R24,_In_Cdata
 012A 8D7F              andi R24,253
 012C 90930C00          sts _In_Cdata+1,R25
 0130 80930B00          sts _In_Cdata,R24
 0134                   .dbline 175
                       ;     muted = 1;
 0134 81E0              ldi R24,1
 0136 80930000          sts _muted,R24
 013A                   .dbline 176
                       ;     MCU_mute();
 013A 0E940000          xcall _MCU_mute
 013E                   .dbline 177
                       ;  }
 013E 14C0              xjmp L30
 0140                 L29:
 0140                   .dbline 179
                       ;  else
                       ;  {
 0140                   .dbline 180
                       ;     Disable_IF_OUT();//In_Cdata |= P1_IF_NOOUT;
 0140 90910C00          lds R25,_In_Cdata+1
 0144 80910B00          lds R24,_In_Cdata
 0148 8260              ori R24,2
 014A 90930C00          sts _In_Cdata+1,R25
 014E 80930B00          sts _In_Cdata,R24
 0152                   .dbline 181
                       ;     Enable_SD_OUT();//In_Cdata &=(~(COUNTER_START|IF_COUNTER_16MS));
 0152 8F77              andi R24,127
 0154 9F7B              andi R25,191
 0156 90930C00          sts _In_Cdata+1,R25
 015A 80930B00          sts _In_Cdata,R24
 015E                   .dbline 182
                       ;     muted = 0;  //
 015E 2224              clr R2
 0160 20920000          sts _muted,R2
 0164                   .dbline 183
                       ;     MCU_mute();
 0164 0E940000          xcall _MCU_mute
 0168                   .dbline 185
                       ;     
                       ;  }
 0168                 L30:
 0168                   .dbline 186
                       ;  send_cmd_to_bu2624();
 0168 C9DF              xcall _send_cmd_to_bu2624
 016A                   .dbline -2
 016A                   .dbline 187
                       ; }
 016A                 L28:
 016A                   .dbline 0 ; func end
 016A 0895              ret
 016C                   .dbfunc s read_data_from_bu2624 _read_data_from_bu2624 fI
                       ;         value1 -> R20
                       ;              i -> R22
                       ;          value -> R10,R11
                         .even
 016C                 _read_data_from_bu2624::
 016C 0E940000          xcall push_gset3
 0170                   .dbline -1
 0170                   .dbline 190
                       ; 
                       ; void  read_data_from_bu2624()
                       ; {
 0170                   .dbline 194
                       ;     register unsigned int value;
                       ;     register unsigned char i,value1;
                       ;     //set_dout_in();
                       ;     radio_stb_lo();
 0170 9098              CBI 0x12,0
 0172                   .dbline 195
                       ;     soft_delay();
 0172 46DF              xcall _soft_delay
 0174                   .dbline 196
                       ;     dataout0 = 0;
 0174 2224              clr R2
 0176 3324              clr R3
 0178 30921100          sts _dataout0+1,R3
 017C 20921000          sts _dataout0,R2
 0180                   .dbline 197
                       ;     dataout1 = 0;
 0180 20920F00          sts _dataout1,R2
 0184                   .dbline 200
                       ;     
                       ;  
                       ;     value = 0;
 0184 AA24              clr R10
 0186 BB24              clr R11
 0188                   .dbline 201
                       ;     for(i=0;i<16;i++)
 0188 6627              clr R22
 018A 0CC0              xjmp L35
 018C                 L32:
 018C                   .dbline 202
                       ;     {
 018C                   .dbline 203
                       ;         value >>=1;
 018C B694              lsr R11
 018E A794              ror R10
 0190                   .dbline 204
                       ;         radio_clk_lo();
 0190 9498              CBI 0x12,4
 0192                   .dbline 205
                       ;         soft_delay();
 0192 36DF              xcall _soft_delay
 0194                   .dbline 206
                       ;         if(radio_dout())  value |= 0x8000;
 0194 879B              sbis 0x10,7
 0196 03C0              rjmp L36
 0198                   .dbline 206
 0198 C501              movw R24,R10
 019A 9068              ori R25,128
 019C 5C01              movw R10,R24
 019E                 L36:
 019E                   .dbline 208
 019E 949A              SBI 0x12,4
 01A0                   .dbline 209
 01A0 2FDF              xcall _soft_delay
 01A2                   .dbline 210
 01A2                 L33:
 01A2                   .dbline 201
 01A2 6395              inc R22
 01A4                 L35:
 01A4                   .dbline 201
 01A4 6031              cpi R22,16
 01A6 90F3              brlo L32
 01A8                   .dbline 211
                       ; 
                       ;         radio_clk_hi();
                       ;         soft_delay();
                       ;     }
                       ;     dataout0 = value;
 01A8 B0921100          sts _dataout0+1,R11
 01AC A0921000          sts _dataout0,R10
 01B0                   .dbline 213
                       ;     
                       ;     value1 = 0;
 01B0 4427              clr R20
 01B2                   .dbline 214
                       ;     for(i=0;i<8;i++)
 01B2 6627              clr R22
 01B4 09C0              xjmp L41
 01B6                 L38:
 01B6                   .dbline 215
                       ;     {
 01B6                   .dbline 216
                       ;         value1 >>=1;
 01B6 4695              lsr R20
 01B8                   .dbline 217
                       ;         radio_clk_lo();
 01B8 9498              CBI 0x12,4
 01BA                   .dbline 218
                       ;         soft_delay();
 01BA 22DF              xcall _soft_delay
 01BC                   .dbline 220
                       ;         
                       ;         if(radio_dout())  value1 |= 0x80;
 01BC 879B              sbis 0x10,7
 01BE 01C0              rjmp L42
 01C0                   .dbline 220
 01C0 4068              ori R20,128
 01C2                 L42:
 01C2                   .dbline 222
 01C2 949A              SBI 0x12,4
 01C4                   .dbline 223
 01C4 1DDF              xcall _soft_delay
 01C6                   .dbline 224
 01C6                 L39:
 01C6                   .dbline 214
 01C6 6395              inc R22
 01C8                 L41:
 01C8                   .dbline 214
 01C8 6830              cpi R22,8
 01CA A8F3              brlo L38
 01CC                   .dbline 226
                       ; 
                       ;         radio_clk_hi();
                       ;         soft_delay();
                       ;     }
                       ;      
                       ;     dataout1 = value1;
 01CC 40930F00          sts _dataout1,R20
 01D0                   .dbline -2
 01D0                   .dbline 227
                       ; }
 01D0                 L31:
 01D0 0E940000          xcall pop_gset3
 01D4                   .dbline 0 ; func end
 01D4 0895              ret
 01D6                   .dbsym r value1 20 c
 01D6                   .dbsym r i 22 c
 01D6                   .dbsym r value 10 i
 01D6                   .dbfunc s switch_audio_channel _switch_audio_channel fI
                         .even
 01D6                 _switch_audio_channel::
 01D6                   .dbline -1
 01D6                   .dbline 231
                       ; 
                       ; 
                       ; void switch_audio_channel(void)
                       ; {
 01D6                   .dbline 232
                       ;     if(is_stereo)
 01D6 20900400          lds R2,_is_stereo
 01DA 2220              tst R2
 01DC 51F0              breq L45
 01DE                   .dbline 233
                       ;     {
 01DE                   .dbline 234
                       ;         Set_Stereo();//In_Cdata &= (~P4_MONO);

⌨️ 快捷键说明

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