Add HAL API for analog out pinmap

Add the function analogout_pinmap to all targets.
pull/9449/head
Russ Butler 2019-01-23 21:51:50 -06:00
parent 4818f88d73
commit 3bd3aca6db
36 changed files with 187 additions and 0 deletions
targets
TARGET_Atmel/TARGET_SAM_CortexM0P/TARGET_SAML21J18A
TARGET_Cypress
TARGET_PSOC6
TARGET_PSOC6_FUTURE
TARGET_Freescale
TARGET_K20XX
TARGET_KLXX
TARGET_MCUXpresso_MCUS/api
TARGET_GigaDevice
TARGET_GD32E10X
TARGET_GD32F30X
TARGET_GD32F4XX
TARGET_Maxim
TARGET_MAX32600
TARGET_MAX32610
TARGET_MAX32620C
TARGET_NUVOTON
TARGET_M2351
TARGET_M451
TARGET_M480
TARGET_NANO100
TARGET_NXP
TARGET_LPC15XX
TARGET_LPC176X
TARGET_LPC408X
TARGET_LPC43XX
TARGET_Realtek/TARGET_AMEBA/TARGET_MCU_RTL8195A
TARGET_STM
TARGET_STM32F0
TARGET_STM32F2
TARGET_STM32F3
TARGET_STM32F4
TARGET_STM32F7
TARGET_STM32H7
TARGET_STM32L0
TARGET_STM32L1
TARGET_STM32L4
TARGET_Silicon_Labs/TARGET_EFM32
TARGET_TOSHIBA
TARGET_TMPM3H6
TARGET_TMPM3HQ
TARGET_TMPM4G9
TARGET_TT/TARGET_TT_M3HQ

View File

@ -21,6 +21,7 @@
#define MBED_ANALOGOUT_API_H
#include "device.h"
#include "pinmap.h"
#if DEVICE_ANALOGOUT
@ -81,6 +82,15 @@ float analogout_read(dac_t *obj);
*/
uint16_t analogout_read_u16(dac_t *obj);
/** Get the pins that support analogout
*
* Return a PinMap array of pins that support analogout. The
* array is terminated with {NC, NC, 0}.
*
* @return PinMap array
*/
const PinMap *analogout_pinmap(void);
/**@}*/
#ifdef __cplusplus

View File

@ -114,3 +114,9 @@ uint16_t analogout_read_u16(dac_t *obj)
uint32_t data_val = data_reg_read(obj);
return (uint16_t)((data_val / (float)MAX_VAL_12BIT) * 0xFFFF); /*Normalization to the value 0xFFFF*/
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif

View File

@ -159,5 +159,10 @@ uint16_t analogout_read_u16(dac_t *obj)
return value;
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif // DEVICE_ANALOGIN

View File

@ -146,5 +146,10 @@ uint16_t analogout_read_u16(dac_t *obj)
return value;
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif // DEVICE_ANALOGIN

View File

@ -81,4 +81,9 @@ uint16_t analogout_read_u16(dac_t *obj) {
return (value << 4) | ((value >> 8) & 0x003F);
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif

View File

@ -78,3 +78,8 @@ uint16_t analogout_read_u16(dac_t *obj) {
uint32_t value = dac_read(obj); // 12-bit
return (value << 4) | ((value >> 8) & 0x003F);
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}

View File

@ -86,4 +86,9 @@ uint16_t analogout_read_u16(dac_t *obj)
return (value << 4) | ((value >> 8) & 0x003F);
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif

View File

@ -158,4 +158,9 @@ uint16_t analogout_read_u16(dac_t *obj)
return (ret_val << 4) | ((ret_val >> 8) & 0x000F);
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif /* DEVICE_ANALOGOUT */

View File

@ -157,4 +157,9 @@ uint16_t analogout_read_u16(dac_t *obj)
return (ret_val << 4) | ((ret_val >> 8) & 0x000F);
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif /* DEVICE_ANALOGOUT */

View File

@ -155,4 +155,9 @@ uint16_t analogout_read_u16(dac_t *obj)
return (uint16_t)((ret_val << 4) | ((ret_val >> 8) & 0x000F));
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif /* DEVICE_ANALOGOUT */

View File

@ -210,3 +210,8 @@ uint16_t analogout_read_u16(dac_t *obj)
return (obj->out << 8);
}
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}

View File

@ -210,3 +210,8 @@ uint16_t analogout_read_u16(dac_t *obj)
return (obj->out << 8);
}
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}

View File

@ -93,3 +93,9 @@ uint16_t analogin_read_u16(analogin_t *obj)
return result;
}
//******************************************************************************
const PinMap *analogin_pinmap()
{
return PinMap_ADC;
}

View File

@ -196,4 +196,9 @@ uint16_t analogout_read_u16(dac_t *obj)
return dat16;
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif

View File

@ -174,4 +174,9 @@ uint16_t analogout_read_u16(dac_t *obj)
return dat16;
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif

View File

@ -184,4 +184,9 @@ uint16_t analogout_read_u16(dac_t *obj)
return dat16;
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif

View File

@ -170,4 +170,9 @@ uint16_t analogout_read_u16(dac_t *obj)
return dat16;
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif

View File

@ -69,3 +69,8 @@ float analogout_read(dac_t *obj) {
uint16_t analogout_read_u16(dac_t *obj) {
return (uint16_t)dac_read();
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}

View File

@ -74,3 +74,8 @@ uint16_t analogout_read_u16(dac_t *obj) {
uint32_t value = dac_read(); // 10-bit
return (value << 6) | ((value >> 4) & 0x003F);
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}

View File

@ -73,3 +73,8 @@ uint16_t analogout_read_u16(dac_t *obj) {
uint32_t value = dac_read(); // 10-bit
return (value << 6) | ((value >> 4) & 0x003F);
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}

View File

@ -84,3 +84,8 @@ uint16_t analogout_read_u16(dac_t *obj) {
uint32_t value = dac_read(); // 10-bit
return (value << 6) | ((value >> 4) & 0x003F);
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}

View File

@ -188,4 +188,9 @@ uint16_t analogout_read_u16(dac_t *obj)
return (uint16_t)0xFFFF;
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif

View File

@ -99,4 +99,9 @@ void analogout_free(dac_t *obj)
pin_function(obj->pin, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, 0));
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif // DEVICE_ANALOGOUT

View File

@ -99,4 +99,9 @@ void analogout_free(dac_t *obj)
pin_function(obj->pin, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, 0));
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif // DEVICE_ANALOGOUT

View File

@ -144,4 +144,9 @@ void analogout_free(dac_t *obj)
pin_function(obj->pin, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, 0));
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif // DEVICE_ANALOGOUT

View File

@ -92,4 +92,9 @@ void analogout_free(dac_t *obj)
{
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif // DEVICE_ANALOGOUT

View File

@ -92,5 +92,10 @@ void analogout_free(dac_t *obj)
{
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif // DEVICE_ANALOGOUT

View File

@ -92,5 +92,10 @@ void analogout_free(dac_t *obj)
{
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif // DEVICE_ANALOGOUT

View File

@ -118,4 +118,9 @@ void analogout_free(dac_t *obj)
pin_function(obj->pin, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, 0));
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif // DEVICE_ANALOGOUT

View File

@ -114,4 +114,9 @@ void analogout_free(dac_t *obj)
pin_function(obj->pin, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, 0));
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif // DEVICE_ANALOGOUT

View File

@ -123,4 +123,9 @@ void analogout_free(dac_t *obj)
pin_function(obj->pin, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, 0));
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif // DEVICE_ANALOGOUT

View File

@ -140,4 +140,9 @@ uint16_t analogout_read_u16(dac_t *obj)
return dac_read(obj) << 4;
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}
#endif

View File

@ -98,3 +98,8 @@ uint16_t analogout_read_u16(dac_t *obj)
return value;
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}

View File

@ -98,3 +98,8 @@ uint16_t analogout_read_u16(dac_t *obj)
return value;
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}

View File

@ -129,3 +129,8 @@ uint16_t analogout_read_u16(dac_t *obj)
// Upper and lower byte stored with read value
return ((value << (16 - DAC_NB_BITS)) | value);
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}

View File

@ -102,3 +102,8 @@ uint16_t analogout_read_u16(dac_t *obj)
return value;
}
const PinMap *analogout_pinmap()
{
return PinMap_DAC;
}