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

📄 main.lis

📁 ISD1700语音芯片放音的ISP实现
💻 LIS
📖 第 1 页 / 共 3 页
字号:
 00DA           ;     SPDR = 0x10+0x45;
 00DA 85E5              ldi R24,85
 00DC 8FB9              out 0xf,R24
 00DE           L31:
 00DE                   .dbline 93
 00DE           ;     while (!(SPSR &(1 << SPIF)))
 00DE           ;         ;
 00DE           L32:
 00DE                   .dbline 92
 00DE 779B              sbis 0xe,7
 00E0 FECF              rjmp L31
 00E2           X7:
 00E2                   .dbline 94
 00E2           ;       SPDR = 0x40;
 00E2 80E4              ldi R24,64
 00E4 8FB9              out 0xf,R24
 00E6           L34:
 00E6                   .dbline 96
 00E6           ;     while (!(SPSR &(1 << SPIF)))
 00E6           ;         ;
 00E6           L35:
 00E6                   .dbline 95
 00E6 779B              sbis 0xe,7
 00E8 FECF              rjmp L34
 00EA           X8:
 00EA                   .dbline 97
 00EA           ;     SPDR = 0x0c;
 00EA 8CE0              ldi R24,12
 00EC 8FB9              out 0xf,R24
 00EE           L37:
 00EE                   .dbline 99
 00EE           ;     while (!(SPSR &(1 << SPIF)))
 00EE           ;         ;
 00EE           L38:
 00EE                   .dbline 98
 00EE 779B              sbis 0xe,7
 00F0 FECF              rjmp L37
 00F2           X9:
 00F2                   .dbline 100
 00F2           ;       PORTB |= (1<<PB0);      //SS=1
 00F2 C09A              sbi 0x18,0
 00F4                   .dbline 101
 00F4           ;     for(i=0;i<=100;i++);
 00F4 0027              clr R16
 00F6 1127              clr R17
 00F8           L40:
 00F8                   .dbline 101
 00F8           L41:
 00F8                   .dbline 101
 00F8 0F5F              subi R16,255  ; offset = 1
 00FA 1F4F              sbci R17,255
 00FC                   .dbline 101
 00FC 84E6              ldi R24,100
 00FE 90E0              ldi R25,0
 0100 8017              cp R24,R16
 0102 9107              cpc R25,R17
 0104 CCF7              brge L40
 0106           X10:
 0106                   .dbline -2
 0106           L4:
 0106                   .dbline 0 ; func end
 0106 0895              ret
 0108                   .dbsym r i 16 I
 0108                   .dbend
 0108                   .dbfunc e Read_APC _Read_APC fV
 0108           ;              i -> R16,R17
                        .even
 0108           _Read_APC::
 0108                   .dbline -1
 0108                   .dbline 105
 0108           ; }
 0108           ; 
 0108           ; void Read_APC(void)
 0108           ; {
 0108                   .dbline 107
 0108           ;       int i;
 0108           ;     PORTB &= ~(1<<PB0);       //SS=0
 0108 C098              cbi 0x18,0
 010A                   .dbline 108
 010A           ;     for(i=0;i<100;i++)
 010A 0027              clr R16
 010C 1127              clr R17
 010E           L45:
 010E                   .dbline 109
 010E           ;       ;
 010E           L46:
 010E                   .dbline 108
 010E 0F5F              subi R16,255  ; offset = 1
 0110 1F4F              sbci R17,255
 0112                   .dbline 108
 0112 0436              cpi R16,100
 0114 E0E0              ldi R30,0
 0116 1E07              cpc R17,R30
 0118 D4F3              brlt L45
 011A           X11:
 011A                   .dbline 110
 011A           ;     SPDR = 0x10+0x44;
 011A 84E5              ldi R24,84
 011C 8FB9              out 0xf,R24
 011E           L49:
 011E                   .dbline 112
 011E           ;     while (!(SPSR &(1 << SPIF)))
 011E           ;         ;
 011E           L50:
 011E                   .dbline 111
 011E 779B              sbis 0xe,7
 0120 FECF              rjmp L49
 0122           X12:
 0122                   .dbline 113
 0122           ;       data1=SPDR;
 0122 2FB0              in R2,0xf
 0124 20920300          sts _data1,R2
 0128                   .dbline 114
 0128           ;     SPDR = 0x00;
 0128 2224              clr R2
 012A 2FB8              out 0xf,R2
 012C           L52:
 012C                   .dbline 116
 012C           ;     while (!(SPSR &(1 << SPIF)))
 012C           ;         ;
 012C           L53:
 012C                   .dbline 115
 012C 779B              sbis 0xe,7
 012E FECF              rjmp L52
 0130           X13:
 0130                   .dbline 117
 0130           ;       data2=SPDR;
 0130 2FB0              in R2,0xf
 0132 20920200          sts _data2,R2
 0136                   .dbline 118
 0136           ;       SPDR = 0x00;
 0136 2224              clr R2
 0138 2FB8              out 0xf,R2
 013A           L55:
 013A                   .dbline 120
 013A           ;     while (!(SPSR &(1 << SPIF)))
 013A           ;         ;
 013A           L56:
 013A                   .dbline 119
 013A 779B              sbis 0xe,7
 013C FECF              rjmp L55
 013E           X14:
 013E                   .dbline 121
 013E           ;       data3=SPDR;
 013E 2FB0              in R2,0xf
 0140 20920100          sts _data3,R2
 0144                   .dbline 122
 0144           ;       SPDR = 0x00;
 0144 2224              clr R2
 0146 2FB8              out 0xf,R2
 0148           L58:
 0148                   .dbline 124
 0148           ;     while (!(SPSR &(1 << SPIF)))
 0148           ;         ;
 0148           L59:
 0148                   .dbline 123
 0148 779B              sbis 0xe,7
 014A FECF              rjmp L58
 014C           X15:
 014C                   .dbline 125
 014C           ;       data4=SPDR;
 014C 2FB0              in R2,0xf
 014E 20920000          sts _data4,R2
 0152                   .dbline 127
 0152           ;       
 0152           ;       if(data4==0x0c)
 0152 822D              mov R24,R2
 0154 8C30              cpi R24,12
 0156 09F4              brne L61
 0158           X16:
 0158                   .dbline 128
 0158           ;               RUN2_ON();
 0158 C69A              sbi 0x18,6
 015A           L61:
 015A                   .dbline 130
 015A           ;         
 015A           ;       for(i=0;i<100;i++)
 015A 0027              clr R16
 015C 1127              clr R17
 015E           L63:
 015E                   .dbline 131
 015E           ;       ;
 015E           L64:
 015E                   .dbline 130
 015E 0F5F              subi R16,255  ; offset = 1
 0160 1F4F              sbci R17,255
 0162                   .dbline 130
 0162 0436              cpi R16,100
 0164 E0E0              ldi R30,0
 0166 1E07              cpc R17,R30
 0168 D4F3              brlt L63
 016A           X17:
 016A                   .dbline 132
 016A           ;     PORTB |= (1<<PB0);        //SS=1
 016A C09A              sbi 0x18,0
 016C                   .dbline -2
 016C           L44:
 016C                   .dbline 0 ; func end
 016C 0895              ret
 016E                   .dbsym r i 16 I
 016E                   .dbend
 016E                   .dbfunc e Sound_Flay _Sound_Flay fV
 016E           ;              i -> R16,R17
                        .even
 016E           _Sound_Flay::
 016E                   .dbline -1
 016E                   .dbline 136
 016E           ; }
 016E           ; 
 016E           ; void Sound_Flay(void)
 016E           ; {
 016E                   .dbline 138
 016E           ;     int i;
 016E           ;     PORTB &= ~(1<<PB0);       //SS=0
 016E C098              cbi 0x18,0
 0170                   .dbline 139
 0170           ;     for(i=0;i<100;i++)
 0170 0027              clr R16
 0172 1127              clr R17
 0174           L68:
 0174                   .dbline 140
 0174           ;       ;
 0174           L69:
 0174                   .dbline 139
 0174 0F5F              subi R16,255  ; offset = 1
 0176 1F4F              sbci R17,255
 0178                   .dbline 139
 0178 0436              cpi R16,100
 017A E0E0              ldi R30,0
 017C 1E07              cpc R17,R30
 017E D4F3              brlt L68
 0180           X18:
 0180                   .dbline 141
 0180           ;     SPDR = 0x10+0x40;
 0180 80E5              ldi R24,80
 0182 8FB9              out 0xf,R24
 0184           L72:
 0184                   .dbline 143
 0184           ;     while (!(SPSR &(1 << SPIF)))
 0184           ;         ;
 0184           L73:
 0184                   .dbline 142
 0184 779B              sbis 0xe,7
 0186 FECF              rjmp L72
 0188           X19:
 0188                   .dbline 144
 0188           ;       data1=SPDR;
 0188 2FB0              in R2,0xf
 018A 20920300          sts _data1,R2
 018E                   .dbline 145
 018E           ;     SPDR = 0x00;
 018E 2224              clr R2
 0190 2FB8              out 0xf,R2
 0192           L75:
 0192                   .dbline 147
 0192           ;     while (!(SPSR &(1 << SPIF)))
 0192           ;         ;
 0192           L76:
 0192                   .dbline 146
 0192 779B              sbis 0xe,7
 0194 FECF              rjmp L75
 0196           X20:
 0196                   .dbline 148
 0196           ;       data2=SPDR;
 0196 2FB0              in R2,0xf
 0198 20920200          sts _data2,R2
 019C                   .dbline 150
 019C           ;         
 019C           ;       for(i=0;i<100;i++)
 019C 0027              clr R16
 019E 1127              clr R17
 01A0           L78:
 01A0                   .dbline 151
 01A0           ;       ;
 01A0           L79:
 01A0                   .dbline 150
 01A0 0F5F              subi R16,255  ; offset = 1
 01A2 1F4F              sbci R17,255
 01A4                   .dbline 150
 01A4 0436              cpi R16,100
 01A6 E0E0              ldi R30,0
 01A8 1E07              cpc R17,R30
 01AA D4F3              brlt L78
 01AC           X21:
 01AC                   .dbline 152
 01AC           ;     PORTB |= (1<<PB0);        //SS=1
 01AC C09A              sbi 0x18,0
 01AE                   .dbline -2
 01AE           L67:
 01AE                   .dbline 0 ; func end
 01AE 0895              ret
 01B0                   .dbsym r i 16 I
 01B0                   .dbend
 01B0                   .dbfunc e Sound_SetFlay _Sound_SetFlay fV
 01B0           ;              i -> R20,R21
 01B0           ;       startAdd -> R16,R17
                        .even
 01B0           _Sound_SetFlay::
 01B0 4A93              st -y,R20
 01B2 5A93              st -y,R21
 01B4                   .dbline -1
 01B4                   .dbline 156
 01B4           ; }
 01B4           ; 
 01B4           ; void Sound_SetFlay(unsigned int startAdd)
 01B4           ; {
 01B4                   .dbline 158
 01B4           ;     int i;
 01B4           ;     PORTB &= ~(1<<PB0);       //SS=0
 01B4 C098              cbi 0x18,0
 01B6                   .dbline 159
 01B6           ;     for(i=0;i<100;i++)
 01B6 4427              clr R20
 01B8 5527              clr R21
 01BA           L83:
 01BA                   .dbline 160
 01BA           ;       ;
 01BA           L84:
 01BA                   .dbline 159
 01BA 4F5F              subi R20,255  ; offset = 1
 01BC 5F4F              sbci R21,255
 01BE                   .dbline 159
 01BE 4436              cpi R20,100
 01C0 E0E0              ldi R30,0
 01C2 5E07              cpc R21,R30
 01C4 D4F3              brlt L83

⌨️ 快捷键说明

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