Skip to content

Commit 3bd3aca

Browse files
committed
Add HAL API for analog out pinmap
Add the function analogout_pinmap to all targets.
1 parent 4818f88 commit 3bd3aca

File tree

36 files changed

+187
-0
lines changed

36 files changed

+187
-0
lines changed

hal/analogout_api.h

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

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

2526
#if DEVICE_ANALOGOUT
2627

@@ -81,6 +82,15 @@ float analogout_read(dac_t *obj);
8182
*/
8283
uint16_t analogout_read_u16(dac_t *obj);
8384

85+
/** Get the pins that support analogout
86+
*
87+
* Return a PinMap array of pins that support analogout. The
88+
* array is terminated with {NC, NC, 0}.
89+
*
90+
* @return PinMap array
91+
*/
92+
const PinMap *analogout_pinmap(void);
93+
8494
/**@}*/
8595

8696
#ifdef __cplusplus

targets/TARGET_Atmel/TARGET_SAM_CortexM0P/TARGET_SAML21J18A/analogout_api.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,3 +114,9 @@ uint16_t analogout_read_u16(dac_t *obj)
114114
uint32_t data_val = data_reg_read(obj);
115115
return (uint16_t)((data_val / (float)MAX_VAL_12BIT) * 0xFFFF); /*Normalization to the value 0xFFFF*/
116116
}
117+
118+
const PinMap *analogout_pinmap()
119+
{
120+
return PinMap_DAC;
121+
}
122+
#endif

targets/TARGET_Cypress/TARGET_PSOC6/analogout_api.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,5 +159,10 @@ uint16_t analogout_read_u16(dac_t *obj)
159159
return value;
160160
}
161161

162+
const PinMap *analogout_pinmap()
163+
{
164+
return PinMap_DAC;
165+
}
166+
162167
#endif // DEVICE_ANALOGIN
163168

targets/TARGET_Cypress/TARGET_PSOC6_FUTURE/analogout_api.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -146,5 +146,10 @@ uint16_t analogout_read_u16(dac_t *obj)
146146
return value;
147147
}
148148

149+
const PinMap *analogout_pinmap()
150+
{
151+
return PinMap_DAC;
152+
}
153+
149154
#endif // DEVICE_ANALOGIN
150155

targets/TARGET_Freescale/TARGET_K20XX/analogout_api.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,4 +81,9 @@ uint16_t analogout_read_u16(dac_t *obj) {
8181
return (value << 4) | ((value >> 8) & 0x003F);
8282
}
8383

84+
const PinMap *analogout_pinmap()
85+
{
86+
return PinMap_DAC;
87+
}
88+
8489
#endif

targets/TARGET_Freescale/TARGET_KLXX/analogout_api.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,3 +78,8 @@ uint16_t analogout_read_u16(dac_t *obj) {
7878
uint32_t value = dac_read(obj); // 12-bit
7979
return (value << 4) | ((value >> 8) & 0x003F);
8080
}
81+
82+
const PinMap *analogout_pinmap()
83+
{
84+
return PinMap_DAC;
85+
}

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/api/analogout_api.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,4 +86,9 @@ uint16_t analogout_read_u16(dac_t *obj)
8686
return (value << 4) | ((value >> 8) & 0x003F);
8787
}
8888

89+
const PinMap *analogout_pinmap()
90+
{
91+
return PinMap_DAC;
92+
}
93+
8994
#endif

targets/TARGET_GigaDevice/TARGET_GD32E10X/analogout_api.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,4 +158,9 @@ uint16_t analogout_read_u16(dac_t *obj)
158158
return (ret_val << 4) | ((ret_val >> 8) & 0x000F);
159159
}
160160

161+
const PinMap *analogout_pinmap()
162+
{
163+
return PinMap_DAC;
164+
}
165+
161166
#endif /* DEVICE_ANALOGOUT */

targets/TARGET_GigaDevice/TARGET_GD32F30X/analogout_api.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,4 +157,9 @@ uint16_t analogout_read_u16(dac_t *obj)
157157
return (ret_val << 4) | ((ret_val >> 8) & 0x000F);
158158
}
159159

160+
const PinMap *analogout_pinmap()
161+
{
162+
return PinMap_DAC;
163+
}
164+
160165
#endif /* DEVICE_ANALOGOUT */

targets/TARGET_GigaDevice/TARGET_GD32F4XX/analogout_api.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,4 +155,9 @@ uint16_t analogout_read_u16(dac_t *obj)
155155
return (uint16_t)((ret_val << 4) | ((ret_val >> 8) & 0x000F));
156156
}
157157

158+
const PinMap *analogout_pinmap()
159+
{
160+
return PinMap_DAC;
161+
}
162+
158163
#endif /* DEVICE_ANALOGOUT */

0 commit comments

Comments
 (0)