37 #if ((defined(_SILICON_LABS_32B_SERIES_0) && defined(OPAMP_PRESENT) && (OPAMP_COUNT == 1)) \
38 || (defined(_SILICON_LABS_32B_SERIES_1) && defined(VDAC_PRESENT) && (VDAC_COUNT > 0)))
47 #if defined(_SILICON_LABS_32B_SERIES_0)
49 #elif defined (_SILICON_LABS_32B_SERIES_1)
66 #if defined(_SILICON_LABS_32B_SERIES_0)
67 #define DAC_OPA_VALID(opa) ((opa) <= OPA2)
68 #elif defined(_SILICON_LABS_32B_SERIES_1)
69 #define VDAC_OPA_VALID(opa) ((opa) <= OPA2)
89 #if defined(_SILICON_LABS_32B_SERIES_0)
90 opaNegSelDisable = DAC_OPA0MUX_NEGSEL_DISABLE,
91 opaNegSelUnityGain = DAC_OPA0MUX_NEGSEL_UG,
92 opaNegSelResTap = DAC_OPA0MUX_NEGSEL_OPATAP,
93 opaNegSelNegPad = DAC_OPA0MUX_NEGSEL_NEGPAD
94 #elif defined(_SILICON_LABS_32B_SERIES_1)
95 opaNegSelAPORT1YCH1 = VDAC_OPA_MUX_NEGSEL_APORT1YCH1,
96 opaNegSelAPORT1YCH3 = VDAC_OPA_MUX_NEGSEL_APORT1YCH3,
97 opaNegSelAPORT1YCH5 = VDAC_OPA_MUX_NEGSEL_APORT1YCH5,
98 opaNegSelAPORT1YCH7 = VDAC_OPA_MUX_NEGSEL_APORT1YCH7,
99 opaNegSelAPORT1YCH9 = VDAC_OPA_MUX_NEGSEL_APORT1YCH9,
100 opaNegSelAPORT1YCH11 = VDAC_OPA_MUX_NEGSEL_APORT1YCH11,
101 opaNegSelAPORT1YCH13 = VDAC_OPA_MUX_NEGSEL_APORT1YCH13,
102 opaNegSelAPORT1YCH15 = VDAC_OPA_MUX_NEGSEL_APORT1YCH15,
103 opaNegSelAPORT1YCH17 = VDAC_OPA_MUX_NEGSEL_APORT1YCH17,
104 opaNegSelAPORT1YCH19 = VDAC_OPA_MUX_NEGSEL_APORT1YCH19,
105 opaNegSelAPORT1YCH21 = VDAC_OPA_MUX_NEGSEL_APORT1YCH21,
106 opaNegSelAPORT1YCH23 = VDAC_OPA_MUX_NEGSEL_APORT1YCH23,
107 opaNegSelAPORT1YCH25 = VDAC_OPA_MUX_NEGSEL_APORT1YCH25,
108 opaNegSelAPORT1YCH27 = VDAC_OPA_MUX_NEGSEL_APORT1YCH27,
109 opaNegSelAPORT1YCH29 = VDAC_OPA_MUX_NEGSEL_APORT1YCH29,
110 opaNegSelAPORT1YCH31 = VDAC_OPA_MUX_NEGSEL_APORT1YCH31,
111 opaNegSelAPORT2YCH0 = VDAC_OPA_MUX_NEGSEL_APORT2YCH0,
112 opaNegSelAPORT2YCH2 = VDAC_OPA_MUX_NEGSEL_APORT2YCH2,
113 opaNegSelAPORT2YCH4 = VDAC_OPA_MUX_NEGSEL_APORT2YCH4,
114 opaNegSelAPORT2YCH6 = VDAC_OPA_MUX_NEGSEL_APORT2YCH6,
115 opaNegSelAPORT2YCH8 = VDAC_OPA_MUX_NEGSEL_APORT2YCH8,
116 opaNegSelAPORT2YCH10 = VDAC_OPA_MUX_NEGSEL_APORT2YCH10,
117 opaNegSelAPORT2YCH12 = VDAC_OPA_MUX_NEGSEL_APORT2YCH12,
118 opaNegSelAPORT2YCH14 = VDAC_OPA_MUX_NEGSEL_APORT2YCH14,
119 opaNegSelAPORT2YCH16 = VDAC_OPA_MUX_NEGSEL_APORT2YCH16,
120 opaNegSelAPORT2YCH18 = VDAC_OPA_MUX_NEGSEL_APORT2YCH18,
121 opaNegSelAPORT2YCH20 = VDAC_OPA_MUX_NEGSEL_APORT2YCH20,
122 opaNegSelAPORT2YCH22 = VDAC_OPA_MUX_NEGSEL_APORT2YCH22,
123 opaNegSelAPORT2YCH24 = VDAC_OPA_MUX_NEGSEL_APORT2YCH24,
124 opaNegSelAPORT2YCH26 = VDAC_OPA_MUX_NEGSEL_APORT2YCH26,
125 opaNegSelAPORT2YCH28 = VDAC_OPA_MUX_NEGSEL_APORT2YCH28,
126 opaNegSelAPORT2YCH30 = VDAC_OPA_MUX_NEGSEL_APORT2YCH30,
127 opaNegSelAPORT3YCH1 = VDAC_OPA_MUX_NEGSEL_APORT3YCH1,
128 opaNegSelAPORT3YCH3 = VDAC_OPA_MUX_NEGSEL_APORT3YCH3,
129 opaNegSelAPORT3YCH5 = VDAC_OPA_MUX_NEGSEL_APORT3YCH5,
130 opaNegSelAPORT3YCH7 = VDAC_OPA_MUX_NEGSEL_APORT3YCH7,
131 opaNegSelAPORT3YCH9 = VDAC_OPA_MUX_NEGSEL_APORT3YCH9,
132 opaNegSelAPORT3YCH11 = VDAC_OPA_MUX_NEGSEL_APORT3YCH11,
133 opaNegSelAPORT3YCH13 = VDAC_OPA_MUX_NEGSEL_APORT3YCH13,
134 opaNegSelAPORT3YCH15 = VDAC_OPA_MUX_NEGSEL_APORT3YCH15,
135 opaNegSelAPORT3YCH17 = VDAC_OPA_MUX_NEGSEL_APORT3YCH17,
136 opaNegSelAPORT3YCH19 = VDAC_OPA_MUX_NEGSEL_APORT3YCH19,
137 opaNegSelAPORT3YCH21 = VDAC_OPA_MUX_NEGSEL_APORT3YCH21,
138 opaNegSelAPORT3YCH23 = VDAC_OPA_MUX_NEGSEL_APORT3YCH23,
139 opaNegSelAPORT3YCH25 = VDAC_OPA_MUX_NEGSEL_APORT3YCH25,
140 opaNegSelAPORT3YCH27 = VDAC_OPA_MUX_NEGSEL_APORT3YCH27,
141 opaNegSelAPORT3YCH29 = VDAC_OPA_MUX_NEGSEL_APORT3YCH29,
142 opaNegSelAPORT3YCH31 = VDAC_OPA_MUX_NEGSEL_APORT3YCH31,
143 opaNegSelAPORT4YCH0 = VDAC_OPA_MUX_NEGSEL_APORT4YCH0,
144 opaNegSelAPORT4YCH2 = VDAC_OPA_MUX_NEGSEL_APORT4YCH2,
145 opaNegSelAPORT4YCH4 = VDAC_OPA_MUX_NEGSEL_APORT4YCH4,
146 opaNegSelAPORT4YCH6 = VDAC_OPA_MUX_NEGSEL_APORT4YCH6,
147 opaNegSelAPORT4YCH8 = VDAC_OPA_MUX_NEGSEL_APORT4YCH8,
148 opaNegSelAPORT4YCH10 = VDAC_OPA_MUX_NEGSEL_APORT4YCH10,
149 opaNegSelAPORT4YCH12 = VDAC_OPA_MUX_NEGSEL_APORT4YCH12,
150 opaNegSelAPORT4YCH14 = VDAC_OPA_MUX_NEGSEL_APORT4YCH14,
151 opaNegSelAPORT4YCH16 = VDAC_OPA_MUX_NEGSEL_APORT4YCH16,
152 opaNegSelAPORT4YCH18 = VDAC_OPA_MUX_NEGSEL_APORT4YCH18,
153 opaNegSelAPORT4YCH20 = VDAC_OPA_MUX_NEGSEL_APORT4YCH20,
154 opaNegSelAPORT4YCH22 = VDAC_OPA_MUX_NEGSEL_APORT4YCH22,
155 opaNegSelAPORT4YCH24 = VDAC_OPA_MUX_NEGSEL_APORT4YCH24,
156 opaNegSelAPORT4YCH26 = VDAC_OPA_MUX_NEGSEL_APORT4YCH26,
157 opaNegSelAPORT4YCH28 = VDAC_OPA_MUX_NEGSEL_APORT4YCH28,
158 opaNegSelAPORT4YCH30 = VDAC_OPA_MUX_NEGSEL_APORT4YCH30,
159 opaNegSelDisable = VDAC_OPA_MUX_NEGSEL_DISABLE,
160 opaNegSelUnityGain = VDAC_OPA_MUX_NEGSEL_UG,
161 opaNegSelResTap = VDAC_OPA_MUX_NEGSEL_OPATAP,
162 opaNegSelNegPad = VDAC_OPA_MUX_NEGSEL_NEGPAD
164 } OPAMP_NegSel_TypeDef;
169 #if defined(_SILICON_LABS_32B_SERIES_0)
170 opaPosSelDisable = DAC_OPA0MUX_POSSEL_DISABLE,
171 opaPosSelDac = DAC_OPA0MUX_POSSEL_DAC,
172 opaPosSelPosPad = DAC_OPA0MUX_POSSEL_POSPAD,
173 opaPosSelOpaIn = DAC_OPA0MUX_POSSEL_OPA0INP,
174 opaPosSelResTapOpa0 = DAC_OPA0MUX_POSSEL_OPATAP
175 #elif defined(_SILICON_LABS_32B_SERIES_1)
176 opaPosSelAPORT1XCH0 = VDAC_OPA_MUX_POSSEL_APORT1XCH0,
177 opaPosSelAPORT1XCH2 = VDAC_OPA_MUX_POSSEL_APORT1XCH2,
178 opaPosSelAPORT1XCH4 = VDAC_OPA_MUX_POSSEL_APORT1XCH4,
179 opaPosSelAPORT1XCH6 = VDAC_OPA_MUX_POSSEL_APORT1XCH6,
180 opaPosSelAPORT1XCH8 = VDAC_OPA_MUX_POSSEL_APORT1XCH8,
181 opaPosSelAPORT1XCH10 = VDAC_OPA_MUX_POSSEL_APORT1XCH10,
182 opaPosSelAPORT1XCH12 = VDAC_OPA_MUX_POSSEL_APORT1XCH12,
183 opaPosSelAPORT1XCH14 = VDAC_OPA_MUX_POSSEL_APORT1XCH14,
184 opaPosSelAPORT1XCH16 = VDAC_OPA_MUX_POSSEL_APORT1XCH16,
185 opaPosSelAPORT1XCH18 = VDAC_OPA_MUX_POSSEL_APORT1XCH18,
186 opaPosSelAPORT1XCH20 = VDAC_OPA_MUX_POSSEL_APORT1XCH20,
187 opaPosSelAPORT1XCH22 = VDAC_OPA_MUX_POSSEL_APORT1XCH22,
188 opaPosSelAPORT1XCH24 = VDAC_OPA_MUX_POSSEL_APORT1XCH24,
189 opaPosSelAPORT1XCH26 = VDAC_OPA_MUX_POSSEL_APORT1XCH26,
190 opaPosSelAPORT1XCH28 = VDAC_OPA_MUX_POSSEL_APORT1XCH28,
191 opaPosSelAPORT1XCH30 = VDAC_OPA_MUX_POSSEL_APORT1XCH30,
192 opaPosSelAPORT2XCH1 = VDAC_OPA_MUX_POSSEL_APORT2XCH1,
193 opaPosSelAPORT2XCH3 = VDAC_OPA_MUX_POSSEL_APORT2XCH3,
194 opaPosSelAPORT2XCH5 = VDAC_OPA_MUX_POSSEL_APORT2XCH5,
195 opaPosSelAPORT2XCH7 = VDAC_OPA_MUX_POSSEL_APORT2XCH7,
196 opaPosSelAPORT2XCH9 = VDAC_OPA_MUX_POSSEL_APORT2XCH9,
197 opaPosSelAPORT2XCH11 = VDAC_OPA_MUX_POSSEL_APORT2XCH11,
198 opaPosSelAPORT2XCH13 = VDAC_OPA_MUX_POSSEL_APORT2XCH13,
199 opaPosSelAPORT2XCH15 = VDAC_OPA_MUX_POSSEL_APORT2XCH15,
200 opaPosSelAPORT2XCH17 = VDAC_OPA_MUX_POSSEL_APORT2XCH17,
201 opaPosSelAPORT2XCH19 = VDAC_OPA_MUX_POSSEL_APORT2XCH19,
202 opaPosSelAPORT2XCH21 = VDAC_OPA_MUX_POSSEL_APORT2XCH21,
203 opaPosSelAPORT2XCH23 = VDAC_OPA_MUX_POSSEL_APORT2XCH23,
204 opaPosSelAPORT2XCH25 = VDAC_OPA_MUX_POSSEL_APORT2XCH25,
205 opaPosSelAPORT2XCH27 = VDAC_OPA_MUX_POSSEL_APORT2XCH27,
206 opaPosSelAPORT2XCH29 = VDAC_OPA_MUX_POSSEL_APORT2XCH29,
207 opaPosSelAPORT2XCH31 = VDAC_OPA_MUX_POSSEL_APORT2XCH31,
208 opaPosSelAPORT3XCH0 = VDAC_OPA_MUX_POSSEL_APORT3XCH0,
209 opaPosSelAPORT3XCH2 = VDAC_OPA_MUX_POSSEL_APORT3XCH2,
210 opaPosSelAPORT3XCH4 = VDAC_OPA_MUX_POSSEL_APORT3XCH4,
211 opaPosSelAPORT3XCH6 = VDAC_OPA_MUX_POSSEL_APORT3XCH6,
212 opaPosSelAPORT3XCH8 = VDAC_OPA_MUX_POSSEL_APORT3XCH8,
213 opaPosSelAPORT3XCH10 = VDAC_OPA_MUX_POSSEL_APORT3XCH10,
214 opaPosSelAPORT3XCH12 = VDAC_OPA_MUX_POSSEL_APORT3XCH12,
215 opaPosSelAPORT3XCH14 = VDAC_OPA_MUX_POSSEL_APORT3XCH14,
216 opaPosSelAPORT3XCH16 = VDAC_OPA_MUX_POSSEL_APORT3XCH16,
217 opaPosSelAPORT3XCH18 = VDAC_OPA_MUX_POSSEL_APORT3XCH18,
218 opaPosSelAPORT3XCH20 = VDAC_OPA_MUX_POSSEL_APORT3XCH20,
219 opaPosSelAPORT3XCH22 = VDAC_OPA_MUX_POSSEL_APORT3XCH22,
220 opaPosSelAPORT3XCH24 = VDAC_OPA_MUX_POSSEL_APORT3XCH24,
221 opaPosSelAPORT3XCH26 = VDAC_OPA_MUX_POSSEL_APORT3XCH26,
222 opaPosSelAPORT3XCH28 = VDAC_OPA_MUX_POSSEL_APORT3XCH28,
223 opaPosSelAPORT3XCH30 = VDAC_OPA_MUX_POSSEL_APORT3XCH30,
224 opaPosSelAPORT4XCH1 = VDAC_OPA_MUX_POSSEL_APORT4XCH1,
225 opaPosSelAPORT4XCH3 = VDAC_OPA_MUX_POSSEL_APORT4XCH3,
226 opaPosSelAPORT4XCH5 = VDAC_OPA_MUX_POSSEL_APORT4XCH5,
227 opaPosSelAPORT4XCH7 = VDAC_OPA_MUX_POSSEL_APORT4XCH7,
228 opaPosSelAPORT4XCH9 = VDAC_OPA_MUX_POSSEL_APORT4XCH9,
229 opaPosSelAPORT4XCH11 = VDAC_OPA_MUX_POSSEL_APORT4XCH11,
230 opaPosSelAPORT4XCH13 = VDAC_OPA_MUX_POSSEL_APORT4XCH13,
231 opaPosSelAPORT4XCH15 = VDAC_OPA_MUX_POSSEL_APORT4XCH15,
232 opaPosSelAPORT4XCH17 = VDAC_OPA_MUX_POSSEL_APORT4XCH17,
233 opaPosSelAPORT4XCH19 = VDAC_OPA_MUX_POSSEL_APORT4XCH19,
234 opaPosSelAPORT4XCH21 = VDAC_OPA_MUX_POSSEL_APORT4XCH21,
235 opaPosSelAPORT4XCH23 = VDAC_OPA_MUX_POSSEL_APORT4XCH23,
236 opaPosSelAPORT4XCH25 = VDAC_OPA_MUX_POSSEL_APORT4XCH25,
237 opaPosSelAPORT4XCH27 = VDAC_OPA_MUX_POSSEL_APORT4XCH27,
238 opaPosSelAPORT4XCH29 = VDAC_OPA_MUX_POSSEL_APORT4XCH29,
239 opaPosSelAPORT4XCH31 = VDAC_OPA_MUX_POSSEL_APORT4XCH31,
240 opaPosSelDisable = VDAC_OPA_MUX_POSSEL_DISABLE,
241 opaPosSelDac = VDAC_OPA_MUX_POSSEL_DAC,
242 opaPosSelPosPad = VDAC_OPA_MUX_POSSEL_POSPAD,
243 opaPosSelOpaIn = VDAC_OPA_MUX_POSSEL_OPANEXT,
244 opaPosSelResTap = VDAC_OPA_MUX_POSSEL_OPATAP
246 } OPAMP_PosSel_TypeDef;
251 #if defined(_SILICON_LABS_32B_SERIES_0)
252 opaOutModeDisable = DAC_OPA0MUX_OUTMODE_DISABLE,
253 opaOutModeMain = DAC_OPA0MUX_OUTMODE_MAIN,
254 opaOutModeAlt = DAC_OPA0MUX_OUTMODE_ALT,
255 opaOutModeAll = DAC_OPA0MUX_OUTMODE_ALL
256 #elif defined(_SILICON_LABS_32B_SERIES_1)
257 opaOutModeDisable = 0,
258 opaOutModeMain = VDAC_OPA_OUT_MAINOUTEN,
259 opaOutModeAlt = VDAC_OPA_OUT_ALTOUTEN,
260 opaOutModeAll = VDAC_OPA_OUT_SHORT,
261 opaOutModeAPORT1YCH1 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT1YCH1),
262 opaOutModeAPORT1YCH3 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT1YCH3),
263 opaOutModeAPORT1YCH5 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT1YCH5),
264 opaOutModeAPORT1YCH7 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT1YCH7),
265 opaOutModeAPORT1YCH9 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT1YCH9),
266 opaOutModeAPORT1YCH11 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT1YCH11),
267 opaOutModeAPORT1YCH13 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT1YCH13),
268 opaOutModeAPORT1YCH15 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT1YCH15),
269 opaOutModeAPORT1YCH17 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT1YCH17),
270 opaOutModeAPORT1YCH19 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT1YCH19),
271 opaOutModeAPORT1YCH21 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT1YCH21),
272 opaOutModeAPORT1YCH23 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT1YCH23),
273 opaOutModeAPORT1YCH25 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT1YCH25),
274 opaOutModeAPORT1YCH27 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT1YCH27),
275 opaOutModeAPORT1YCH29 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT1YCH29),
276 opaOutModeAPORT1YCH31 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT1YCH31),
277 opaOutModeAPORT2YCH0 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT2YCH0),
278 opaOutModeAPORT2YCH2 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT2YCH2),
279 opaOutModeAPORT2YCH4 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT2YCH4),
280 opaOutModeAPORT2YCH6 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT2YCH6),
281 opaOutModeAPORT2YCH8 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT2YCH8),
282 opaOutModeAPORT2YCH10 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT2YCH10),
283 opaOutModeAPORT2YCH12 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT2YCH12),
284 opaOutModeAPORT2YCH14 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT2YCH14),
285 opaOutModeAPORT2YCH16 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT2YCH16),
286 opaOutModeAPORT2YCH18 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT2YCH18),
287 opaOutModeAPORT2YCH20 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT2YCH20),
288 opaOutModeAPORT2YCH22 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT2YCH22),
289 opaOutModeAPORT2YCH24 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT2YCH24),
290 opaOutModeAPORT2YCH26 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT2YCH26),
291 opaOutModeAPORT2YCH28 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT2YCH28),
292 opaOutModeAPORT2YCH30 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT2YCH30),
293 opaOutModeAPORT3YCH1 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT3YCH1),
294 opaOutModeAPORT3YCH3 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT3YCH3),
295 opaOutModeAPORT3YCH5 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT3YCH5),
296 opaOutModeAPORT3YCH7 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT3YCH7),
297 opaOutModeAPORT3YCH9 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT3YCH9),
298 opaOutModeAPORT3YCH11 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT3YCH11),
299 opaOutModeAPORT3YCH13 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT3YCH13),
300 opaOutModeAPORT3YCH15 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT3YCH15),
301 opaOutModeAPORT3YCH17 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT3YCH17),
302 opaOutModeAPORT3YCH19 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT3YCH19),
303 opaOutModeAPORT3YCH21 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT3YCH21),
304 opaOutModeAPORT3YCH23 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT3YCH23),
305 opaOutModeAPORT3YCH25 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT3YCH25),
306 opaOutModeAPORT3YCH27 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT3YCH27),
307 opaOutModeAPORT3YCH29 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT3YCH29),
308 opaOutModeAPORT3YCH31 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT3YCH31),
309 opaOutModeAPORT4YCH0 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT4YCH0),
310 opaOutModeAPORT4YCH2 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT4YCH2),
311 opaOutModeAPORT4YCH4 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT4YCH4),
312 opaOutModeAPORT4YCH6 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT4YCH6),
313 opaOutModeAPORT4YCH8 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT4YCH8),
314 opaOutModeAPORT4YCH10 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT4YCH10),
315 opaOutModeAPORT4YCH12 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT4YCH12),
316 opaOutModeAPORT4YCH14 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT4YCH14),
317 opaOutModeAPORT4YCH16 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT4YCH16),
318 opaOutModeAPORT4YCH18 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT4YCH18),
319 opaOutModeAPORT4YCH20 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT4YCH20),
320 opaOutModeAPORT4YCH22 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT4YCH22),
321 opaOutModeAPORT4YCH24 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT4YCH24),
322 opaOutModeAPORT4YCH26 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT4YCH26),
323 opaOutModeAPORT4YCH28 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT4YCH28),
324 opaOutModeAPORT4YCH30 = (VDAC_OPA_OUT_APORTOUTEN | VDAC_OPA_OUT_APORTOUTSEL_APORT4YCH30),
326 } OPAMP_OutMode_TypeDef;
331 #if defined(_SILICON_LABS_32B_SERIES_0)
332 opaResSelDefault = DAC_OPA0MUX_RESSEL_DEFAULT,
333 opaResSelR2eq0_33R1 = DAC_OPA0MUX_RESSEL_RES0,
334 opaResSelR2eqR1 = DAC_OPA0MUX_RESSEL_RES1,
335 opaResSelR1eq1_67R1 = DAC_OPA0MUX_RESSEL_RES2,
336 opaResSelR2eq2R1 = DAC_OPA0MUX_RESSEL_RES3,
337 opaResSelR2eq3R1 = DAC_OPA0MUX_RESSEL_RES4,
338 opaResSelR2eq4_33R1 = DAC_OPA0MUX_RESSEL_RES5,
339 opaResSelR2eq7R1 = DAC_OPA0MUX_RESSEL_RES6,
340 opaResSelR2eq15R1 = DAC_OPA0MUX_RESSEL_RES7
341 #elif defined(_SILICON_LABS_32B_SERIES_1)
342 opaResSelDefault = VDAC_OPA_MUX_RESSEL_DEFAULT,
343 opaResSelR2eq0_33R1 = VDAC_OPA_MUX_RESSEL_RES0,
344 opaResSelR2eqR1 = VDAC_OPA_MUX_RESSEL_RES1,
345 opaResSelR1eq1_67R1 = VDAC_OPA_MUX_RESSEL_RES2,
346 opaResSelR2eq2_2R1 = VDAC_OPA_MUX_RESSEL_RES3,
347 opaResSelR2eq3R1 = VDAC_OPA_MUX_RESSEL_RES4,
348 opaResSelR2eq4_33R1 = VDAC_OPA_MUX_RESSEL_RES5,
349 opaResSelR2eq7R1 = VDAC_OPA_MUX_RESSEL_RES6,
350 opaResSelR2eq15R1 = VDAC_OPA_MUX_RESSEL_RES7
352 } OPAMP_ResSel_TypeDef;
357 #if defined(_SILICON_LABS_32B_SERIES_0)
358 opaResInMuxDisable = DAC_OPA0MUX_RESINMUX_DISABLE,
359 opaResInMuxOpaIn = DAC_OPA0MUX_RESINMUX_OPA0INP,
360 opaResInMuxNegPad = DAC_OPA0MUX_RESINMUX_NEGPAD,
361 opaResInMuxPosPad = DAC_OPA0MUX_RESINMUX_POSPAD,
362 opaResInMuxVss = DAC_OPA0MUX_RESINMUX_VSS
363 #elif defined(_SILICON_LABS_32B_SERIES_1)
364 opaResInMuxDisable = VDAC_OPA_MUX_RESINMUX_DISABLE,
365 opaResInMuxOpaIn = VDAC_OPA_MUX_RESINMUX_OPANEXT,
366 opaResInMuxNegPad = VDAC_OPA_MUX_RESINMUX_NEGPAD,
367 opaResInMuxPosPad = VDAC_OPA_MUX_RESINMUX_POSPAD,
368 opaResInMuxComPad = VDAC_OPA_MUX_RESINMUX_COMPAD,
370 opaResInMuxCenter = VDAC_OPA_MUX_RESINMUX_CENTER,
372 opaResInMuxVss = VDAC_OPA_MUX_RESINMUX_VSS,
374 } OPAMP_ResInMux_TypeDef;
376 #if defined(_SILICON_LABS_32B_SERIES_1)
379 opaPrsModeDefault = VDAC_OPA_CTRL_PRSMODE_DEFAULT,
380 opaPrsModePulsed = VDAC_OPA_CTRL_PRSMODE_PULSED,
383 opaPrsModeTimed = VDAC_OPA_CTRL_PRSMODE_TIMED,
386 } OPAMP_PrsMode_TypeDef;
390 opaPrsSelDefault = VDAC_OPA_CTRL_PRSSEL_DEFAULT,
391 opaPrsSelCh0 = VDAC_OPA_CTRL_PRSSEL_PRSCH0,
392 opaPrsSelCh1 = VDAC_OPA_CTRL_PRSSEL_PRSCH1,
393 opaPrsSelCh2 = VDAC_OPA_CTRL_PRSSEL_PRSCH2,
394 opaPrsSelCh3 = VDAC_OPA_CTRL_PRSSEL_PRSCH3,
395 opaPrsSelCh4 = VDAC_OPA_CTRL_PRSSEL_PRSCH4,
396 opaPrsSelCh5 = VDAC_OPA_CTRL_PRSSEL_PRSCH5,
397 opaPrsSelCh6 = VDAC_OPA_CTRL_PRSSEL_PRSCH6,
398 opaPrsSelCh7 = VDAC_OPA_CTRL_PRSSEL_PRSCH7,
399 opaPrsSelCh8 = VDAC_OPA_CTRL_PRSSEL_PRSCH8,
400 opaPrsSelCh9 = VDAC_OPA_CTRL_PRSSEL_PRSCH9,
401 opaPrsSelCh10 = VDAC_OPA_CTRL_PRSSEL_PRSCH10,
402 opaPrsSelCh11 = VDAC_OPA_CTRL_PRSSEL_PRSCH11,
403 } OPAMP_PrsSel_TypeDef;
407 opaPrsOutDefault = VDAC_OPA_CTRL_PRSOUTMODE_DEFAULT,
408 opaPrsOutWarm = VDAC_OPA_CTRL_PRSOUTMODE_WARM,
409 opaPrsOutOutValid = VDAC_OPA_CTRL_PRSOUTMODE_OUTVALID,
410 } OPAMP_PrsOut_TypeDef;
414 opaOutScaleDefault = VDAC_OPA_CTRL_OUTSCALE_DEFAULT,
415 opaOutScaleFull = VDAC_OPA_CTRL_OUTSCALE_FULL,
416 opaOutSacleHalf = VDAC_OPA_CTRL_OUTSCALE_HALF,
417 } OPAMP_OutScale_Typedef;
421 opaDrvStrDefault = VDAC_OPA_CTRL_DRIVESTRENGTH_DEFAULT,
422 opaDrvStrLowerAccLowStr = (0 << _VDAC_OPA_CTRL_DRIVESTRENGTH_SHIFT),
423 opaDrvStrLowAccLowStr = (1 << _VDAC_OPA_CTRL_DRIVESTRENGTH_SHIFT),
424 opaDrvStrHighAccHighStr = (2 << _VDAC_OPA_CTRL_DRIVESTRENGTH_SHIFT),
425 opaDrvStrHigherAccHighStr = (3 << _VDAC_OPA_CTRL_DRIVESTRENGTH_SHIFT),
426 } OPAMP_DrvStr_Typedef;
436 OPAMP_NegSel_TypeDef negSel;
437 OPAMP_PosSel_TypeDef posSel;
438 OPAMP_OutMode_TypeDef outMode;
439 OPAMP_ResSel_TypeDef resSel;
440 OPAMP_ResInMux_TypeDef resInMux;
485 #if defined(_SILICON_LABS_32B_SERIES_0)
488 bool lpfPosPadDisable;
489 bool lpfNegPadDisable;
498 #elif defined(_SILICON_LABS_32B_SERIES_1)
499 OPAMP_DrvStr_Typedef drvStr;
504 OPAMP_PrsMode_TypeDef prsMode;
505 OPAMP_PrsSel_TypeDef prsSel;
506 OPAMP_PrsOut_TypeDef prsOutSel;
507 bool aportYMasterDisable;
508 bool aportXMasterDisable;
521 } OPAMP_Init_TypeDef;
523 #if defined(_SILICON_LABS_32B_SERIES_0)
525 #define OPA_INIT_UNITY_GAIN \
527 opaNegSelUnityGain, \
531 opaResInMuxDisable, \
533 _DAC_BIASPROG_BIASPROG_DEFAULT, \
534 _DAC_BIASPROG_HALFBIAS_DEFAULT, \
547 #define OPA_INIT_UNITY_GAIN_OPA2 \
549 opaNegSelUnityGain, \
553 opaResInMuxDisable, \
554 DAC_OPA0MUX_OUTPEN_OUT0, \
555 _DAC_BIASPROG_BIASPROG_DEFAULT, \
556 _DAC_BIASPROG_HALFBIAS_DEFAULT, \
569 #define OPA_INIT_NON_INVERTING \
574 opaResSelR2eq0_33R1, \
577 _DAC_BIASPROG_BIASPROG_DEFAULT, \
578 _DAC_BIASPROG_HALFBIAS_DEFAULT, \
591 #define OPA_INIT_NON_INVERTING_OPA2 \
596 opaResSelR2eq0_33R1, \
598 DAC_OPA0MUX_OUTPEN_OUT0, \
599 _DAC_BIASPROG_BIASPROG_DEFAULT, \
600 _DAC_BIASPROG_HALFBIAS_DEFAULT, \
613 #define OPA_INIT_INVERTING \
621 _DAC_BIASPROG_BIASPROG_DEFAULT, \
622 _DAC_BIASPROG_HALFBIAS_DEFAULT, \
635 #define OPA_INIT_INVERTING_OPA2 \
642 DAC_OPA0MUX_OUTPEN_OUT0, \
643 _DAC_BIASPROG_BIASPROG_DEFAULT, \
644 _DAC_BIASPROG_HALFBIAS_DEFAULT, \
657 #define OPA_INIT_CASCADED_NON_INVERTING_OPA0 \
662 opaResSelR2eq0_33R1, \
665 _DAC_BIASPROG_BIASPROG_DEFAULT, \
666 _DAC_BIASPROG_HALFBIAS_DEFAULT, \
679 #define OPA_INIT_CASCADED_NON_INVERTING_OPA1 \
684 opaResSelR2eq0_33R1, \
687 _DAC_BIASPROG_BIASPROG_DEFAULT, \
688 _DAC_BIASPROG_HALFBIAS_DEFAULT, \
701 #define OPA_INIT_CASCADED_NON_INVERTING_OPA2 \
706 opaResSelR2eq0_33R1, \
708 DAC_OPA0MUX_OUTPEN_OUT0, \
709 _DAC_BIASPROG_BIASPROG_DEFAULT, \
710 _DAC_BIASPROG_HALFBIAS_DEFAULT, \
723 #define OPA_INIT_CASCADED_INVERTING_OPA0 \
731 _DAC_BIASPROG_BIASPROG_DEFAULT, \
732 _DAC_BIASPROG_HALFBIAS_DEFAULT, \
745 #define OPA_INIT_CASCADED_INVERTING_OPA1 \
753 _DAC_BIASPROG_BIASPROG_DEFAULT, \
754 _DAC_BIASPROG_HALFBIAS_DEFAULT, \
767 #define OPA_INIT_CASCADED_INVERTING_OPA2 \
774 DAC_OPA0MUX_OUTPEN_OUT0, \
775 _DAC_BIASPROG_BIASPROG_DEFAULT, \
776 _DAC_BIASPROG_HALFBIAS_DEFAULT, \
789 #define OPA_INIT_DIFF_DRIVER_OPA0 \
791 opaNegSelUnityGain, \
795 opaResInMuxDisable, \
797 _DAC_BIASPROG_BIASPROG_DEFAULT, \
798 _DAC_BIASPROG_HALFBIAS_DEFAULT, \
811 #define OPA_INIT_DIFF_DRIVER_OPA1 \
819 _DAC_BIASPROG_BIASPROG_DEFAULT, \
820 _DAC_BIASPROG_HALFBIAS_DEFAULT, \
833 #define OPA_INIT_DIFF_RECEIVER_OPA0 \
835 opaNegSelUnityGain, \
841 _DAC_BIASPROG_BIASPROG_DEFAULT, \
842 _DAC_BIASPROG_HALFBIAS_DEFAULT, \
855 #define OPA_INIT_DIFF_RECEIVER_OPA1 \
857 opaNegSelUnityGain, \
861 opaResInMuxDisable, \
863 _DAC_BIASPROG_BIASPROG_DEFAULT, \
864 _DAC_BIASPROG_HALFBIAS_DEFAULT, \
877 #define OPA_INIT_DIFF_RECEIVER_OPA2 \
880 opaPosSelResTapOpa0, \
884 DAC_OPA0MUX_OUTPEN_OUT0, \
885 _DAC_BIASPROG_BIASPROG_DEFAULT, \
886 _DAC_BIASPROG_HALFBIAS_DEFAULT, \
898 #elif defined(_SILICON_LABS_32B_SERIES_1)
900 #define OPA_INIT_UNITY_GAIN \
902 opaNegSelUnityGain, \
906 opaResInMuxDisable, \
928 #define OPA_INIT_NON_INVERTING \
933 opaResSelR2eq0_33R1, \
956 #define OPA_INIT_INVERTING \
984 #define OPA_INIT_CASCADED_NON_INVERTING_OPA0 \
989 opaResSelR2eq0_33R1, \
1012 #define OPA_INIT_CASCADED_NON_INVERTING_OPA1 \
1017 opaResSelR2eq0_33R1, \
1018 opaResInMuxNegPad, \
1025 opaPrsModeDefault, \
1040 #define OPA_INIT_CASCADED_NON_INVERTING_OPA2 \
1045 opaResSelR2eq0_33R1, \
1046 opaResInMuxNegPad, \
1053 opaPrsModeDefault, \
1068 #define OPA_INIT_CASCADED_INVERTING_OPA0 \
1074 opaResInMuxNegPad, \
1081 opaPrsModeDefault, \
1096 #define OPA_INIT_CASCADED_INVERTING_OPA1 \
1109 opaPrsModeDefault, \
1124 #define OPA_INIT_CASCADED_INVERTING_OPA2 \
1137 opaPrsModeDefault, \
1152 #define OPA_INIT_DIFF_DRIVER_OPA0 \
1154 opaNegSelUnityGain, \
1158 opaResInMuxDisable, \
1165 opaPrsModeDefault, \
1180 #define OPA_INIT_DIFF_DRIVER_OPA1 \
1193 opaPrsModeDefault, \
1208 #define OPA_INIT_DIFF_RECEIVER_OPA0 \
1210 opaNegSelUnityGain, \
1214 opaResInMuxNegPad, \
1221 opaPrsModeDefault, \
1236 #define OPA_INIT_DIFF_RECEIVER_OPA1 \
1238 opaNegSelUnityGain, \
1242 opaResInMuxDisable, \
1249 opaPrsModeDefault, \
1264 #define OPA_INIT_DIFF_RECEIVER_OPA2 \
1277 opaPrsModeDefault, \
1292 #define OPA_INIT_INSTR_AMP_OPA0 \
1298 opaResInMuxCenter, \
1305 opaPrsModeDefault, \
1320 #define OPA_INIT_INSTR_AMP_OPA1 \
1326 opaResInMuxCenter, \
1333 opaPrsModeDefault, \
1353 #if defined(_SILICON_LABS_32B_SERIES_0)
1354 void OPAMP_Disable(
DAC_TypeDef *dac, OPAMP_TypeDef opa);
1355 void OPAMP_Enable(
DAC_TypeDef *dac, OPAMP_TypeDef opa,
const OPAMP_Init_TypeDef *init);
1356 #elif defined(_SILICON_LABS_32B_SERIES_1)
1357 void OPAMP_Disable(VDAC_TypeDef *dac, OPAMP_TypeDef opa);
1358 void OPAMP_Enable(VDAC_TypeDef *dac, OPAMP_TypeDef opa,
const OPAMP_Init_TypeDef *init);
CMSIS Cortex-M Peripheral Access Layer for Silicon Laboratories microcontroller devices.
Digital to Analog Converter (DAC) peripheral API.
Digital to Analog Converter (VDAC) peripheral API.