Skip to content

Commit 4818f88

Browse files
committed
Add HAL API for analog in pinmap
Add the function analogin_pinmap to all targets.
1 parent 3252530 commit 4818f88

File tree

67 files changed

+342
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

67 files changed

+342
-0
lines changed

hal/analogin_api.h

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
#define MBED_ANALOGIN_API_H
2222

2323
#include "device.h"
24+
#include "pinmap.h"
2425

2526
#if DEVICE_ANALOGIN
2627

@@ -59,6 +60,15 @@ float analogin_read(analogin_t *obj);
5960
*/
6061
uint16_t analogin_read_u16(analogin_t *obj);
6162

63+
/** Get the pins that support analogin
64+
*
65+
* Return a PinMap array of pins that support analogin. The
66+
* array is terminated with {NC, NC, 0}.
67+
*
68+
* @return PinMap array
69+
*/
70+
const PinMap *analogin_pinmap(void);
71+
6272
/**@}*/
6373

6474
#ifdef __cplusplus

targets/TARGET_ARM_FM/TARGET_FVP_MPS2/analogin_api.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,3 +112,7 @@ uint16_t analogin_read_u16(analogin_t *obj)
112112
return 0;
113113
}
114114

115+
const PinMap *analogin_pinmap()
116+
{
117+
return PinMap_ADC;
118+
}

targets/TARGET_ARM_SSG/TARGET_BEETLE/analogin_api.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,4 +145,9 @@ float analogin_read(analogin_t *obj)
145145
return (float)((result & ADC_RESOLUTION) * 1.0f) / ADC_DIV;
146146
}
147147

148+
const PinMap *analogin_pinmap()
149+
{
150+
return PinMap_ADC;
151+
}
152+
148153
#endif

targets/TARGET_ARM_SSG/TARGET_CM3DS_MPS2/analogin_api.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,3 +151,8 @@ float analogin_read(analogin_t *obj)
151151

152152
return (result * (1. / MAXIMUM_VALUE_12_BITS));
153153
}
154+
155+
const PinMap *analogin_pinmap()
156+
{
157+
return PinMap_ADC;
158+
}

targets/TARGET_ARM_SSG/TARGET_IOTSS/analogin_api.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,3 +108,7 @@ uint16_t analogin_read_u16(analogin_t *obj) {
108108
return 0;
109109
}
110110

111+
const PinMap *analogin_pinmap()
112+
{
113+
return PinMap_ADC;
114+
}

targets/TARGET_ARM_SSG/TARGET_MPS2/analogin_api.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,3 +108,7 @@ uint16_t analogin_read_u16(analogin_t *obj) {
108108
return 0;
109109
}
110110

111+
const PinMap *analogin_pinmap()
112+
{
113+
return PinMap_ADC;
114+
}

targets/TARGET_Analog_Devices/TARGET_ADUCM302X/TARGET_ADUCM3029/api/analogin_api.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,11 @@ uint16_t analogin_read_u16(analogin_t *obj)
186186
return( (uint16_t)( ((uint16_t *)pAdcBuffer->pDataBuffer)[(pAdcBuffer->nNumConversionPasses) - 1]) );
187187
}
188188

189+
const PinMap *analogin_pinmap()
190+
{
191+
return PinMap_ADC;
192+
}
193+
189194
/* Retrieve the active channel corresponding to the input pin */
190195
static uint32_t adi_pin2channel(PinName pin)
191196
{

targets/TARGET_Analog_Devices/TARGET_ADUCM4X50/TARGET_ADUCM4050/api/analogin_api.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,11 @@ uint16_t analogin_read_u16(analogin_t *obj)
186186
return( (uint16_t)( ((uint16_t *)pAdcBuffer->pDataBuffer)[(pAdcBuffer->nNumConversionPasses) - 1]) );
187187
}
188188

189+
const PinMap *analogin_pinmap()
190+
{
191+
return PinMap_ADC;
192+
}
193+
189194
/* Retrieve the active channel corresponding to the input pin */
190195
static uint32_t adi_pin2channel(PinName pin)
191196
{

targets/TARGET_Atmel/TARGET_SAM_CortexM0P/TARGET_SAMD21G18A/analogout_api.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,3 +108,8 @@ uint16_t analogout_read_u16(dac_t *obj)
108108
uint32_t data_val = data_reg_read(obj);
109109
return (uint16_t)((data_val / (float)MAX_VAL_10BIT) * 0xFFFF); /*Normalization to the value 0xFFFF*/
110110
}
111+
112+
const PinMap *analogout_pinmap()
113+
{
114+
return PinMap_DAC;
115+
}

targets/TARGET_Atmel/TARGET_SAM_CortexM0P/TARGET_SAMD21J18A/analogout_api.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,3 +108,8 @@ uint16_t analogout_read_u16(dac_t *obj)
108108
uint32_t data_val = data_reg_read(obj);
109109
return (uint16_t)((data_val / (float)MAX_VAL_10BIT) * 0xFFFF); /*Normalization to the value 0xFFFF*/
110110
}
111+
112+
const PinMap *analogout_pinmap()
113+
{
114+
return PinMap_DAC;
115+
}

0 commit comments

Comments
 (0)