@@ -159,7 +159,19 @@ uint16_t analogRead(uint8_t pinNumber)
159
159
{
160
160
if (ap3_analog_configure_map[indi].isAnalog == false )
161
161
{
162
- if (ap3_set_pin_to_analog (pinNumber) != AP3_OK)
162
+ if (padNumber == AP3_ADC_DIFF0_PAD)
163
+ {
164
+ Serial.println (" Config diff 0" );
165
+ retval = ap3_set_pin_to_analog (12 );
166
+ retval = ap3_set_pin_to_analog (13 );
167
+ if (retval != AP3_OK)
168
+ {
169
+ // Serial.println("Error - set pin to analog");
170
+ return 0 ; // Error
171
+ }
172
+ }
173
+
174
+ else if (ap3_set_pin_to_analog (pinNumber) != AP3_OK)
163
175
{
164
176
// Serial.println("Error - set pin to analog");
165
177
return 0 ; // Error
@@ -341,37 +353,19 @@ ap3_err_t ap3_set_pin_to_analog(uint8_t pinNumber)
341
353
uint8_t funcsel = 0 ;
342
354
am_hal_gpio_pincfg_t pincfg = AP3_PINCFG_INPUT;
343
355
344
- // Handle special pads: differential pairs
345
- if (pinNumber == AP3_ADC_DIFF0_PAD)
346
- {
347
- pincfg.uFuncSel = AM_HAL_PIN_12_ADCD0NSE9;
348
- pinMode (12 , pincfg, &retval);
349
-
350
- pincfg.uFuncSel = AM_HAL_PIN_13_ADCD0PSE8;
351
- pinMode (13 , pincfg, &retval);
356
+ retval = ap3_analog_pad_funcsel (ap3_gpio_pin2pad (pinNumber), &funcsel);
352
357
353
- retval = AP3_OK;
354
- }
355
- else if (pinNumber == AP3_ADC_DIFF1_PAD)
358
+ if (retval != AP3_OK)
356
359
{
360
+ return retval;
357
361
}
358
- else
359
- {
360
- // Normal analog channels
361
- retval = ap3_analog_pad_funcsel (ap3_gpio_pin2pad (pinNumber), &funcsel);
362
-
363
- if (retval != AP3_OK)
364
- {
365
- return retval;
366
- }
367
- pincfg.uFuncSel = funcsel; // set the proper function select option for this instance/pin/type combination
368
- pinMode (pinNumber, pincfg, &retval);
369
- }
362
+ pincfg.uFuncSel = funcsel; // set the proper function select option for this instance/pin/type combination
363
+ pinMode (pinNumber, pincfg, &retval);
370
364
371
365
return retval;
372
366
}
373
367
374
- // Given pin number, assign ADC function
368
+ // Given pad number, get ADC function
375
369
ap3_err_t ap3_analog_pad_funcsel (ap3_gpio_pad_t padNumber, uint8_t *funcsel)
376
370
{
377
371
ap3_err_t retval = AP3_ERR;
0 commit comments