mirror of https://github.com/ARMmbed/mbed-os.git
Add HAL API for analog out pinmap
Add the function analogout_pinmap to all targets.pull/9449/head
parent
4818f88d73
commit
3bd3aca6db
targets
TARGET_Atmel/TARGET_SAM_CortexM0P/TARGET_SAML21J18A
TARGET_Cypress
TARGET_PSOC6
TARGET_PSOC6_FUTURE
TARGET_Freescale
TARGET_GigaDevice
TARGET_Maxim
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_TT/TARGET_TT_M3HQ
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -159,5 +159,10 @@ uint16_t analogout_read_u16(dac_t *obj)
|
|||
return value;
|
||||
}
|
||||
|
||||
const PinMap *analogout_pinmap()
|
||||
{
|
||||
return PinMap_DAC;
|
||||
}
|
||||
|
||||
#endif // DEVICE_ANALOGIN
|
||||
|
||||
|
|
|
@ -146,5 +146,10 @@ uint16_t analogout_read_u16(dac_t *obj)
|
|||
return value;
|
||||
}
|
||||
|
||||
const PinMap *analogout_pinmap()
|
||||
{
|
||||
return PinMap_DAC;
|
||||
}
|
||||
|
||||
#endif // DEVICE_ANALOGIN
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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 */
|
||||
|
|
|
@ -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 */
|
||||
|
|
|
@ -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 */
|
||||
|
|
|
@ -210,3 +210,8 @@ uint16_t analogout_read_u16(dac_t *obj)
|
|||
return (obj->out << 8);
|
||||
}
|
||||
}
|
||||
|
||||
const PinMap *analogout_pinmap()
|
||||
{
|
||||
return PinMap_DAC;
|
||||
}
|
||||
|
|
|
@ -210,3 +210,8 @@ uint16_t analogout_read_u16(dac_t *obj)
|
|||
return (obj->out << 8);
|
||||
}
|
||||
}
|
||||
|
||||
const PinMap *analogout_pinmap()
|
||||
{
|
||||
return PinMap_DAC;
|
||||
}
|
||||
|
|
|
@ -93,3 +93,9 @@ uint16_t analogin_read_u16(analogin_t *obj)
|
|||
|
||||
return result;
|
||||
}
|
||||
|
||||
//******************************************************************************
|
||||
const PinMap *analogin_pinmap()
|
||||
{
|
||||
return PinMap_ADC;
|
||||
}
|
||||
|
|
|
@ -196,4 +196,9 @@ uint16_t analogout_read_u16(dac_t *obj)
|
|||
return dat16;
|
||||
}
|
||||
|
||||
const PinMap *analogout_pinmap()
|
||||
{
|
||||
return PinMap_DAC;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
|
@ -174,4 +174,9 @@ uint16_t analogout_read_u16(dac_t *obj)
|
|||
return dat16;
|
||||
}
|
||||
|
||||
const PinMap *analogout_pinmap()
|
||||
{
|
||||
return PinMap_DAC;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
|
@ -184,4 +184,9 @@ uint16_t analogout_read_u16(dac_t *obj)
|
|||
return dat16;
|
||||
}
|
||||
|
||||
const PinMap *analogout_pinmap()
|
||||
{
|
||||
return PinMap_DAC;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
|
@ -170,4 +170,9 @@ uint16_t analogout_read_u16(dac_t *obj)
|
|||
return dat16;
|
||||
}
|
||||
|
||||
const PinMap *analogout_pinmap()
|
||||
{
|
||||
return PinMap_DAC;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
|
@ -188,4 +188,9 @@ uint16_t analogout_read_u16(dac_t *obj)
|
|||
return (uint16_t)0xFFFF;
|
||||
}
|
||||
|
||||
const PinMap *analogout_pinmap()
|
||||
{
|
||||
return PinMap_DAC;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -92,4 +92,9 @@ void analogout_free(dac_t *obj)
|
|||
{
|
||||
}
|
||||
|
||||
const PinMap *analogout_pinmap()
|
||||
{
|
||||
return PinMap_DAC;
|
||||
}
|
||||
|
||||
#endif // DEVICE_ANALOGOUT
|
||||
|
|
|
@ -92,5 +92,10 @@ void analogout_free(dac_t *obj)
|
|||
{
|
||||
}
|
||||
|
||||
const PinMap *analogout_pinmap()
|
||||
{
|
||||
return PinMap_DAC;
|
||||
}
|
||||
|
||||
|
||||
#endif // DEVICE_ANALOGOUT
|
||||
|
|
|
@ -92,5 +92,10 @@ void analogout_free(dac_t *obj)
|
|||
{
|
||||
}
|
||||
|
||||
const PinMap *analogout_pinmap()
|
||||
{
|
||||
return PinMap_DAC;
|
||||
}
|
||||
|
||||
|
||||
#endif // DEVICE_ANALOGOUT
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -98,3 +98,8 @@ uint16_t analogout_read_u16(dac_t *obj)
|
|||
|
||||
return value;
|
||||
}
|
||||
|
||||
const PinMap *analogout_pinmap()
|
||||
{
|
||||
return PinMap_DAC;
|
||||
}
|
||||
|
|
|
@ -98,3 +98,8 @@ uint16_t analogout_read_u16(dac_t *obj)
|
|||
|
||||
return value;
|
||||
}
|
||||
|
||||
const PinMap *analogout_pinmap()
|
||||
{
|
||||
return PinMap_DAC;
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
|
@ -102,3 +102,8 @@ uint16_t analogout_read_u16(dac_t *obj)
|
|||
|
||||
return value;
|
||||
}
|
||||
|
||||
const PinMap *analogout_pinmap()
|
||||
{
|
||||
return PinMap_DAC;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue