1 | __asm__ volatile (
|
2 | 000008F9 LDI R25,0x0B Load immediate
|
3 | 000008FA LDI R18,0xA0 Load immediate
|
4 | 000008FB LDI R19,0x0B Load immediate
|
5 | 000008FC MOVW R30,R18 Copy register pair
|
6 | 000008FD LDD R18,Z+3 Load indirect with displacement
|
7 | 000008FE ORI R18,0x30 Logical OR with immediate
|
8 | 000008FF MOVW R30,R24 Copy register pair
|
9 | 00000900 STD Z+3,R18 Store indirect with displacement
|
10 | 00000901 LDI R24,0xA0 Load immediate
|
11 | --- X:\/src/main.c -------------------
|
12 | while(status == FALSE) { // toggle LED D301, if the channel configuration is not correct
|
13 | 00000902 LDI R25,0x0B Load immediate
|
14 | 00000903 LDI R18,0xA0 Load immediate
|
15 | 00000904 LDI R19,0x0B Load immediate
|
16 | 00000905 MOVW R30,R18 Copy register pair
|
17 | ENABLE_GLOBAL_INT();
|
18 | 00000906 LDD R18,Z+4 Load indirect with displacement
|
19 | ENABLE_USARTF0_RX_INT();
|
20 | 00000907 ORI R18,0x18 Logical OR with immediate
|
21 | 00000908 MOVW R30,R24 Copy register pair
|
22 | 00000909 STD Z+4,R18 Store indirect with displacement
|
23 | 0000090A LDI R24,0xA0 Load immediate
|
24 | 0000090B LDI R25,0x00 Load immediate
|
25 | 0000090C LDI R18,0xA0 Load immediate
|
26 | 0000090D LDI R19,0x00 Load immediate
|
27 | 0000090E MOVW R30,R18 Copy register pair
|
28 | 0000090F LDD R18,Z+2 Load indirect with displacement
|
29 | ENABLE_USARTF0();
|
30 | 00000910 ORI R18,0x04 Logical OR with immediate
|
31 | 00000911 MOVW R30,R24 Copy register pair
|
32 | 00000912 STD Z+2,R18 Store indirect with displacement
|
33 | 00000913 LDI R24,0x00 Load immediate
|
34 | 00000914 LDI R25,0x0A Load immediate
|
35 | 00000915 LDI R18,0x03 Load immediate
|
36 | 00000916 MOVW R30,R24 Copy register pair
|
37 | 00000917 STD Z+7,R18 Store indirect with displacement
|
38 | 00000918 LDI R24,0x25 Load immediate
|
39 | ENABLE_GLOBAL_HIGH_LEVEL_INT();
|
40 | 00000919 LDI R25,0x07 Load immediate
|
41 | 0000091A LDI R18,0x02 Load immediate
|
42 | 0000091B MOVW R30,R24 Copy register pair
|
43 | 0000091C STD Z+0,R18 Store indirect with displacement
|
44 | 0000091D LDI R24,0x26 Load immediate
|
45 | 0000091E LDI R25,0x07 Load immediate
|
46 | 0000091F LDI R18,0x01 Load immediate
|
47 | 00000920 MOVW R30,R24 Copy register pair
|
48 | 00000921 STD Z+0,R18 Store indirect with displacement
|
49 | ENABLE_TIMER_TCE0_COMP_A_HIGH_LEVEL_INT();
|
50 | 00000922 RJMP PC+0x0002 Relative jump
|
51 | 00000923 NOP No operation
|
52 | 00000924 LDS R24,0x200C Load direct from data space
|
53 | 00000926 TST R24 Test for Zero or Minus
|
54 | PK0_LED_GREEN_ON();
|
55 | 00000927 BRNE PC+0x02 Branch if not equal
|
56 | 00000928 RJMP PC+0x02AC Relative jump
|
57 | 00000929 LDS R24,0x2008 Load direct from data space
|
58 | 0000092B TST R24 Test for Zero or Minus
|
59 | 0000092C BRLT PC+0x02 Branch if less than, signed
|
60 | 0000092D RJMP PC+0x004D Relative jump
|
61 | 0000092E LDI R24,0x00 Load immediate
|
62 | 0000092F LDI R25,0x02 Load immediate
|
63 | 00000930 LDI R18,0x00 Load immediate
|
64 | 00000931 LDI R19,0x02 Load immediate
|
65 | } // end while(TRUE)
|
66 | 00000932 MOVW R30,R18 Copy register pair
|
67 | if(ReadADCContinuously){
|
68 | 00000933 LDD R18,Z+33 Load indirect with displacement
|
69 | 00000934 ANDI R18,0x03 Logical AND with immediate
|
70 | 00000935 MOVW R30,R24 Copy register pair
|
71 | 00000936 STD Z+33,R18 Store indirect with displacement
|
72 | 00000937 LDI R24,0x00 Load immediate
|
73 | if ((Analog_In_Configuration_Mask & 0x80) == 0x80)
|
74 | 00000938 LDI R25,0x02 Load immediate
|
75 | 00000939 LDI R18,0x00 Load immediate
|
76 | 0000093A LDI R19,0x02 Load immediate
|
77 | 0000093B MOVW R30,R18 Copy register pair
|
78 | 0000093C LDD R18,Z+32 Load indirect with displacement
|
79 | ADCA_CH0_SET_INPUT_PINA0();
|
80 | 0000093D ORI R18,0x80 Logical OR with immediate
|
81 | 0000093E MOVW R30,R24 Copy register pair
|
82 | 0000093F STD Z+32,R18 Store indirect with displacement
|
83 | 00000940 NOP No operation
|
84 | --- X:\/src/main.c -------------------
|
85 | 00000941 LDI R24,0x00 Load immediate
|
86 | 00000942 LDI R25,0x02 Load immediate
|
87 | 00000943 MOVW R30,R24 Copy register pair
|
88 | 00000944 LDD R24,Z+35 Load indirect with displacement
|
89 | 00000945 MOV R24,R24 Copy register
|
90 | START_ADCA_CH0_SINGLE_MEASUREMENT();
|
91 | 00000946 LDI R25,0x00 Load immediate
|
92 | 00000947 ANDI R24,0x01 Logical AND with immediate
|
93 | 00000948 ANDI R25,0x00 Logical AND with immediate
|
94 | 00000949 SBIW R24,0x00 Subtract immediate from word
|
95 | 0000094A BREQ PC-0x09 Branch if equal
|
96 | 0000094B LDI R24,0x00 Load immediate
|
97 | 0000094C LDI R25,0x02 Load immediate
|
98 | 0000094D LDI R18,0x01 Load immediate
|
99 | 0000094E MOVW R30,R24 Copy register pair
|
100 | while(!(ADCA.CH0.INTFLAGS & 0x01));
|
101 | 0000094F STD Z+35,R18 Store indirect with displacement
|
102 | --- No source file -------------------------------------------------------------
|
103 | 00000950 MOVW R24,R28 Copy register pair
|
104 | 00000951 SUBI R24,0xC0 Subtract immediate
|
105 | 00000952 SBCI R25,0xFF Subtract immediate with carry
|
106 | 00000953 MOVW R30,R24 Copy register pair
|
107 | 00000954 LDD R24,Z+0 Load indirect with displacement
|
108 | 00000955 MOV R24,R24 Copy register
|
109 | 00000956 LDI R25,0x00 Load immediate
|
110 | 00000957 LDI R18,0x00 Load immediate
|
111 | 00000958 LDI R19,0x02 Load immediate
|
112 | 00000959 MOVW R30,R18 Copy register pair
|
113 | 0000095A LDD R20,Z+36 Load indirect with displacement
|
114 | 0000095B MOVW R18,R28 Copy register pair
|
115 | 0000095C SUBI R18,0xD0 Subtract immediate
|
116 | 0000095D SBCI R19,0xFF Subtract immediate with carry
|
117 | 0000095E ADD R24,R18 Add without carry
|
118 | --- X:\/src/main.c -------------------
|
119 | ADC_PINA0_RingBuffer.pBuffer[ADC_PINA0_RingBuffer.inPos] = ADCA.CH0.RESL;
|
120 | 0000095F ADC R25,R19 Add with carry
|
121 | 00000960 MOVW R30,R24 Copy register pair
|
122 | 00000961 STD Z+0,R20 Store indirect with displacement
|
123 | 00000962 MOVW R24,R28 Copy register pair
|
124 | 00000963 SUBI R24,0xC0 Subtract immediate
|
125 | 00000964 SBCI R25,0xFF Subtract immediate with carry
|
126 | 00000965 MOVW R30,R24 Copy register pair
|
127 | 00000966 LDD R24,Z+0 Load indirect with displacement
|
128 | 00000967 MOV R18,R24 Copy register
|
129 | 00000968 SUBI R18,0xFF Subtract immediate
|
130 | 00000969 MOVW R24,R28 Copy register pair
|
131 | 0000096A SUBI R24,0xC0 Subtract immediate
|
132 | 0000096B SBCI R25,0xFF Subtract immediate with carry
|
133 | 0000096C MOVW R30,R24 Copy register pair
|
134 | 0000096D STD Z+0,R18 Store indirect with displacement
|
135 | 0000096E MOVW R24,R28 Copy register pair
|
136 | 0000096F SUBI R24,0xC0 Subtract immediate
|
137 | 00000970 SBCI R25,0xFF Subtract immediate with carry
|
138 | ADC_PINA0_RingBuffer.inPos++;
|
139 | 00000971 MOVW R30,R24 Copy register pair
|
140 | 00000972 LDD R24,Z+0 Load indirect with displacement
|
141 | 00000973 MOV R18,R24 Copy register
|
142 | 00000974 ANDI R18,0x0F Logical AND with immediate
|
143 | 00000975 MOVW R24,R28 Copy register pair
|
144 | 00000976 SUBI R24,0xC0 Subtract immediate
|
145 | 00000977 SBCI R25,0xFF Subtract immediate with carry
|
146 | 00000978 MOVW R30,R24 Copy register pair
|
147 | 00000979 STD Z+0,R18 Store indirect with displacement
|
148 | 0000097A LDS R24,0x2008 Load direct from data space
|
149 | 0000097C MOV R24,R24 Copy register
|
150 | ADC_PINA0_RingBuffer.inPos = ADC_PINA0_RingBuffer.inPos & 0x0F;
|
151 | 0000097D LDI R25,0x00 Load immediate
|
152 | --- X:\/src/main.c -------------------
|
153 | 0000097E ANDI R24,0x40 Logical AND with immediate
|
154 | 0000097F ANDI R25,0x00 Logical AND with immediate
|
155 | 00000980 SBIW R24,0x00 Subtract immediate from word
|
156 | 00000981 BRNE PC+0x02 Branch if not equal
|
157 | 00000982 RJMP PC+0x004E Relative jump
|
158 | 00000983 LDI R24,0x00 Load immediate
|
159 | 00000984 LDI R25,0x02 Load immediate
|
160 | 00000985 LDI R18,0x00 Load immediate
|
161 | 00000986 LDI R19,0x02 Load immediate
|
162 | 00000987 MOVW R30,R18 Copy register pair
|
163 | 00000988 LDD R18,Z+33 Load indirect with displacement
|
164 | if ((Analog_In_Configuration_Mask & 0x40) == 0x40)
|
165 | 00000989 ANDI R18,0x03 Logical AND with immediate
|
166 | 0000098A ORI R18,0x08 Logical OR with immediate
|
167 | 0000098B MOVW R30,R24 Copy register pair
|
168 | 0000098C STD Z+33,R18 Store indirect with displacement
|
169 | 0000098D LDI R24,0x00 Load immediate
|
170 | 0000098E LDI R25,0x02 Load immediate
|
171 | 0000098F LDI R18,0x00 Load immediate
|
172 | 00000990 LDI R19,0x02 Load immediate
|
173 | 00000991 MOVW R30,R18 Copy register pair
|
174 | ADCA_CH0_SET_INPUT_PINA1();
|
175 | 00000992 LDD R18,Z+32 Load indirect with displacement
|
176 | 00000993 ORI R18,0x80 Logical OR with immediate
|
177 | 00000994 MOVW R30,R24 Copy register pair
|
178 | 00000995 STD Z+32,R18 Store indirect with displacement
|
179 | 00000996 NOP No operation
|
180 | 00000997 LDI R24,0x00 Load immediate
|
181 | 00000998 LDI R25,0x02 Load immediate
|
182 | 00000999 MOVW R30,R24 Copy register pair
|
183 | 0000099A LDD R24,Z+35 Load indirect with displacement
|
184 | 0000099B MOV R24,R24 Copy register
|
185 | START_ADCA_CH0_SINGLE_MEASUREMENT();
|
186 | 0000099C LDI R25,0x00 Load immediate
|
187 | 0000099D ANDI R24,0x01 Logical AND with immediate
|
188 | 0000099E ANDI R25,0x00 Logical AND with immediate
|
189 | 0000099F SBIW R24,0x00 Subtract immediate from word
|
190 | 000009A0 BREQ PC-0x09 Branch if equal
|
191 | 000009A1 LDI R24,0x00 Load immediate
|
192 | 000009A2 LDI R25,0x02 Load immediate
|
193 | 000009A3 LDI R18,0x01 Load immediate
|
194 | 000009A4 MOVW R30,R24 Copy register pair
|
195 | while(!(ADCA.CH0.INTFLAGS & 0x01));
|
196 | 000009A5 STD Z+35,R18 Store indirect with displacement
|
197 | --- No source file -------------------------------------------------------------
|
198 | 000009A6 MOVW R24,R28 Copy register pair
|
199 | 000009A7 SUBI R24,0xAF Subtract immediate
|
200 | 000009A8 SBCI R25,0xFF Subtract immediate with carry
|
201 | 000009A9 MOVW R30,R24 Copy register pair
|
202 | 000009AA LDD R24,Z+0 Load indirect with displacement
|
203 | 000009AB MOV R24,R24 Copy register
|
204 | --- No source file -------------------------------------------------------------
|
205 | 000009AC LDI R25,0x00 Load immediate
|
206 | 000009AD LDI R18,0x00 Load immediate
|
207 | 000009AE LDI R19,0x02 Load immediate
|
208 | 000009AF MOVW R30,R18 Copy register pair
|
209 | --- X:/src/main.c -------------------
|
210 | CLEAR_ADCA_CH0_INTFLAG();
|
211 | 000009B0 LDD R20,Z+36 Load indirect with displacement
|
212 | 000009B1 MOVW R18,R28 Copy register pair
|
213 | 000009B2 SUBI R18,0xBF Subtract immediate
|
214 | 000009B3 SBCI R19,0xFF Subtract immediate with carry
|
215 | 000009B4 ADD R24,R18 Add without carry
|
216 | ADC_PINA1_RingBuffer.pBuffer[ADC_PINA1_RingBuffer.inPos] = ADCA.CH0.RESL;
|
217 | 000009B5 ADC R25,R19 Add with carry
|
218 | 000009B6 MOVW R30,R24 Copy register pair
|
219 | 000009B7 STD Z+0,R20 Store indirect with displacement
|
220 | 000009B8 MOVW R24,R28 Copy register pair
|
221 | 000009B9 SUBI R24,0xAF Subtract immediate
|
222 | 000009BA SBCI R25,0xFF Subtract immediate with carry
|
223 | 000009BB MOVW R30,R24 Copy register pair
|
224 | 000009BC LDD R24,Z+0 Load indirect with displacement
|
225 | 000009BD MOV R18,R24 Copy register
|
226 | 000009BE SUBI R18,0xFF Subtract immediate
|
227 | 000009BF MOVW R24,R28 Copy register pair
|
228 | 000009C0 SUBI R24,0xAF Subtract immediate
|
229 | 000009C1 SBCI R25,0xFF Subtract immediate with carry
|
230 | 000009C2 MOVW R30,R24 Copy register pair
|
231 | 000009C3 STD Z+0,R18 Store indirect with displacement
|
232 | 000009C4 MOVW R24,R28 Copy register pair
|
233 | 000009C5 SUBI R24,0xAF Subtract immediate
|
234 | 000009C6 SBCI R25,0xFF Subtract immediate with carry
|
235 | ADC_PINA1_RingBuffer.inPos++;
|
236 | 000009C7 MOVW R30,R24 Copy register pair
|
237 | 000009C8 LDD R24,Z+0 Load indirect with displacement
|
238 | 000009C9 MOV R18,R24 Copy register
|
239 | 000009CA ANDI R18,0x0F Logical AND with immediate
|
240 | 000009CB MOVW R24,R28 Copy register pair
|
241 | 000009CC SUBI R24,0xAF Subtract immediate
|
242 | 000009CD SBCI R25,0xFF Subtract immediate with carry
|
243 | 000009CE MOVW R30,R24 Copy register pair
|
244 | 000009CF STD Z+0,R18 Store indirect with displacement
|
245 | 000009D0 LDS R24,0x2008 Load direct from data space
|
246 | 000009D2 MOV R24,R24 Copy register
|
247 | ADC_PINA1_RingBuffer.inPos = ADC_PINA1_RingBuffer.inPos & 0x0F;
|
248 | 000009D3 LDI R25,0x00 Load immediate
|
249 | 000009D4 ANDI R24,0x20 Logical AND with immediate
|
250 | 000009D5 ANDI R25,0x00 Logical AND with immediate
|
251 | 000009D6 SBIW R24,0x00 Subtract immediate from word
|
252 | 000009D7 BRNE PC+0x02 Branch if not equal
|
253 | 000009D8 RJMP PC+0x004E Relative jump
|
254 | 000009D9 LDI R24,0x00 Load immediate
|
255 | 000009DA LDI R25,0x02 Load immediate
|
256 | --- X:\src/main.c -------------------
|
257 | 000009DB LDI R18,0x00 Load immediate
|
258 | 000009DC LDI R19,0x02 Load immediate
|
259 | 000009DD MOVW R30,R18 Copy register pair
|
260 | 000009DE LDD R18,Z+33 Load indirect with displacement )
|