📄 adc.lis
字号:
003E .dbline 133
003E ; Display_type = 0x0;
003E 2224 clr R2
0040 20920200 sts _Display_type,R2
0044 .dbline 135
0044 ;
0044 ; }break;
0044 .dbline 135
0044 L7:
0044 .dbline 138
0044 ; }
0044 ;
0044 ; if (Display_flag == 1)
0044 80910500 lds R24,_Display_flag
0048 8130 cpi R24,1
004A 41F4 brne L12
004C .dbline 139
004C ; {
004C .dbline 141
004C ; //DDRB |=0xF0;
004C ; LED_Display(Display_type,AD_sample_value); //数码管显示
004C 20910600 lds R18,_AD_sample_value
0050 30910700 lds R19,_AD_sample_value+1
0054 00910200 lds R16,_Display_type
0058 E0D0 xcall _LED_Display
005A .dbline 143
005A ; //DDRB |=0xF0;
005A ; }
005A 07C0 xjmp L13
005C L12:
005C .dbline 145
005C ; else
005C ; {
005C .dbline 147
005C ;
005C ; LED_Display(Display_type,AD_sample_value);
005C 20910600 lds R18,_AD_sample_value
0060 30910700 lds R19,_AD_sample_value+1
0064 00910200 lds R16,_Display_type
0068 D8D0 xcall _LED_Display
006A .dbline 150
006A ;
006A ;
006A ; }
006A L13:
006A .dbline 154
006A ;
006A ;
006A ;
006A ; if (channel_0_flag == 0)
006A 20900100 lds R2,_channel_0_flag
006E 2220 tst R2
0070 59F4 brne L14
0072 .dbline 155
0072 ; {
0072 .dbline 156
0072 ; PORTB = Red_LED_on;
0072 C098 cbi 0x18,0
0074 .dbline 158
0074 ;
0074 ; for (i=0;i<30 ;i++ )
0074 6627 clr R22
0076 02C0 xjmp L19
0078 L16:
0078 .dbline 159
0078 .dbline 160
0078 60D0 xcall _Delay
007A .dbline 161
007A L17:
007A .dbline 158
007A 6395 inc R22
007C L19:
007C .dbline 158
007C 6E31 cpi R22,30
007E E0F3 brlo L16
0080 .dbline 163
0080 ; {
0080 ; Delay();
0080 ; }
0080 ;
0080 ; channel_0_flag = 1;
0080 81E0 ldi R24,1
0082 80930100 sts _channel_0_flag,R24
0086 .dbline 164
0086 ; }
0086 01C0 xjmp L15
0088 L14:
0088 .dbline 166
0088 ; else
0088 ; {
0088 .dbline 167
0088 ; PORTB = Red_LED_off;
0088 C09A sbi 0x18,0
008A .dbline 168
008A ; }
008A L15:
008A .dbline 170
008A ;
008A ; if (channel_1_flag == 0)
008A 20900200 lds R2,_channel_1_flag
008E 2220 tst R2
0090 59F4 brne L20
0092 .dbline 171
0092 ; {
0092 .dbline 172
0092 ; PORTB = Green_LED_on;
0092 C198 cbi 0x18,1
0094 .dbline 174
0094 ;
0094 ; for (i=0;i<30 ;i++ )
0094 6627 clr R22
0096 02C0 xjmp L25
0098 L22:
0098 .dbline 175
0098 .dbline 176
0098 50D0 xcall _Delay
009A .dbline 177
009A L23:
009A .dbline 174
009A 6395 inc R22
009C L25:
009C .dbline 174
009C 6E31 cpi R22,30
009E E0F3 brlo L22
00A0 .dbline 179
00A0 ; {
00A0 ; Delay();
00A0 ; }
00A0 ;
00A0 ; channel_1_flag = 1;
00A0 81E0 ldi R24,1
00A2 80930200 sts _channel_1_flag,R24
00A6 .dbline 180
00A6 ; }
00A6 01C0 xjmp L21
00A8 L20:
00A8 .dbline 182
00A8 ; else
00A8 ; {
00A8 .dbline 183
00A8 ; PORTB = Green_LED_off;
00A8 C19A sbi 0x18,1
00AA .dbline 184
00AA ; }
00AA L21:
00AA .dbline 186
00AA ;
00AA ; if (channel_2_flag == 0)
00AA 20900300 lds R2,_channel_2_flag
00AE 2220 tst R2
00B0 59F4 brne L26
00B2 .dbline 187
00B2 ; {
00B2 .dbline 188
00B2 ; PORTB = Yellow_LED_on;
00B2 C298 cbi 0x18,2
00B4 .dbline 190
00B4 ;
00B4 ; for (i=0;i<30 ;i++ )
00B4 6627 clr R22
00B6 02C0 xjmp L31
00B8 L28:
00B8 .dbline 191
00B8 .dbline 192
00B8 40D0 xcall _Delay
00BA .dbline 193
00BA L29:
00BA .dbline 190
00BA 6395 inc R22
00BC L31:
00BC .dbline 190
00BC 6E31 cpi R22,30
00BE E0F3 brlo L28
00C0 .dbline 195
00C0 ; {
00C0 ; Delay();
00C0 ; }
00C0 ;
00C0 ; channel_2_flag = 1;
00C0 81E0 ldi R24,1
00C2 80930300 sts _channel_2_flag,R24
00C6 .dbline 196
00C6 ; }
00C6 01C0 xjmp L27
00C8 L26:
00C8 .dbline 198
00C8 ; else
00C8 ; {
00C8 .dbline 199
00C8 ; PORTB = Yellow_LED_off;
00C8 C29A sbi 0x18,2
00CA .dbline 200
00CA ; }
00CA L27:
00CA .dbline 202
00CA ;
00CA ; if (channel_3_flag == 0)
00CA 20900400 lds R2,_channel_3_flag
00CE 2220 tst R2
00D0 59F4 brne L32
00D2 .dbline 203
00D2 ; {
00D2 .dbline 204
00D2 ; PORTB = Blue_LED_on;
00D2 C398 cbi 0x18,3
00D4 .dbline 206
00D4 ;
00D4 ; for (i=0;i<30 ;i++ )
00D4 6627 clr R22
00D6 02C0 xjmp L37
00D8 L34:
00D8 .dbline 207
00D8 .dbline 208
00D8 30D0 xcall _Delay
00DA .dbline 209
00DA L35:
00DA .dbline 206
00DA 6395 inc R22
00DC L37:
00DC .dbline 206
00DC 6E31 cpi R22,30
00DE E0F3 brlo L34
00E0 .dbline 211
00E0 ; {
00E0 ; Delay();
00E0 ; }
00E0 ;
00E0 ; channel_3_flag = 1;
00E0 81E0 ldi R24,1
00E2 80930400 sts _channel_3_flag,R24
00E6 .dbline 212
00E6 ; }
00E6 8FCF xjmp L2
00E8 L32:
00E8 .dbline 214
00E8 .dbline 215
00E8 C39A sbi 0x18,3
00EA .dbline 216
00EA .dbline 217
00EA .dbline 98
00EA .dbline 98
00EA 8DCF xjmp L2
00EC X1:
00EC .dbline -2
00EC L1:
00EC .dbline 0 ; func end
00EC 0895 ret
00EE .dbsym r i 22 c
00EE .dbend
00EE .dbfunc e Port_initialize _Port_initialize fV
.even
00EE _Port_initialize::
00EE .dbline -1
00EE .dbline 221
00EE ; else
00EE ; {
00EE ; PORTB = Blue_LED_off;
00EE ; }
00EE ; }
00EE ; }
00EE ;
00EE ; void Port_initialize(void)
00EE ; {
00EE .dbline 222
00EE ; DDRA = 0xFF;
00EE 8FEF ldi R24,255
00F0 8ABB out 0x1a,R24
00F2 .dbline 223
00F2 ; DDRB |= 0x0F;
00F2 87B3 in R24,0x17
00F4 8F60 ori R24,15
00F6 87BB out 0x17,R24
00F8 .dbline 224
00F8 ; DDRD = 0x00;
00F8 2224 clr R2
00FA 21BA out 0x11,R2
00FC .dbline 225
00FC ; PORTB = 0xFF;
00FC 8FEF ldi R24,255
00FE 88BB out 0x18,R24
0100 .dbline -2
0100 .dbline 226
0100 ; }
0100 L38:
0100 .dbline 0 ; func end
0100 0895 ret
0102 .dbend
0102 .dbfunc e ADC_initialize _ADC_initialize fV
.even
0102 _ADC_initialize::
0102 .dbline -1
0102 .dbline 228
0102 ; void ADC_initialize(void)
0102 ; {
0102 .dbline 229
0102 ; ADMUX = 0x40; //Vref = AVCC,right,channel = 0
0102 80E4 ldi R24,64
0104 87B9 out 0x7,R24
0106 .dbline 230
0106 ; ADCSR = 0x89; //enable ADC,not start now,not continuous,F--,clock = f/2
0106 89E8 ldi R24,137
0108 86B9 out 0x6,R24
010A .dbline -2
010A .dbline 233
010A ;
010A ;
010A ; }
010A L39:
010A .dbline 0 ; func end
010A 0895 ret
010C .dbend
010C .dbfunc e INT_initialize _INT_initialize fV
.even
010C _INT_initialize::
010C .dbline -1
010C .dbline 235
010C ; void INT_initialize(void)
010C ; {
010C .dbline 236
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -