18#ifndef __HAL_DRIVER_${SERIES/DAC_IP}_DAC_H__
19#define __HAL_DRIVER_${SERIES/DAC_IP}_DAC_H__
25#if VSF_HAL_USE_DAC == ENABLED
44#if defined(__VSF_HAL_${DAC_IP}_DAC_CLASS_IMPLEMENT)
45# define __VSF_CLASS_IMPLEMENT__
46#elif defined(__VSF_HAL_${DAC_IP}_DAC_CLASS_INHERIT__)
47# define __VSF_CLASS_INHERIT__
64#ifndef VSF_${DAC_IP}_DAC_CFG_MULTI_CLASS
65# define VSF_${DAC_IP}_DAC_CFG_MULTI_CLASS VSF_DAC_CFG_MULTI_CLASS
80#define VSF_DAC_CFG_REIMPLEMENT_TYPE_STATUS ENABLED
81#define VSF_DAC_CFG_REIMPLEMENT_TYPE_IRQ_MASK ENABLED
82#define VSF_DAC_CFG_REIMPLEMENT_TYPE_CFG ENABLED
83#define VSF_DAC_CFG_REIMPLEMENT_TYPE_CAPABILITY ENABLED
91#if VSF_${DAC_IP}_CFG_MULTI_CLASS == ENABLED
110#if VSF_DAC_CFG_REIMPLEMENT_TYPE_IRQ_MASK == ENABLED
117#if VSF_DAC_CFG_REIMPLEMENT_TYPE_STATUS == ENABLED
128#if VSF_DAC_CFG_REIMPLEMENT_TYPE_CFG == ENABLED
141#if VSF_DAC_CFG_REIMPLEMENT_TYPE_CAPABILITY == ENABLED
143#if VSF_DAC_CFG_INHERIT_HAL_CAPABILITY == ENABLED
168#undef __VSF_HAL_${DAC_IP}_DAC_CLASS_IMPLEMENT
169#undef __VSF_HAL_${DAC_IP}_DAC_CLASS_INHERIT__
vsf_arch_prio_t
Definition cortex_a_generic.h:88
vsf_dac_isr_t isr
Definition dac.h:105
void vsf_dac_isr_handler_t(void *target_ptr, vsf_dac_t *dac_ptr, vsf_dac_irq_mask_t irq_mask)
Definition dac.h:130
vsf_dac_irq_mask_t
Definition dac.h:111
@ VSF_DAC_IRQ_MASK_IDLE
Definition dac.h:112
@ VSF_DAC_IRQ_MASK_CPL
Definition dac.h:113
#define vsf_class(__name)
Definition ooc_class.h:48
const i_spi_t vsf_spi_irq_mask_t irq_mask
Definition spi_interface.h:38
unsigned uint32_t
Definition stdint.h:9
unsigned char uint8_t
Definition stdint.h:5
DAC capability structure that can be reimplemented in specific HAL drivers.
Definition vsf_template_dac.h:294
uint8_t min_resolution_bits
Minimum resolution bits.
Definition vsf_template_dac.h:300
inherit(vsf_peripheral_capability_t) vsf_dac_irq_mask_t irq_mask
uint8_t channel_count
Number of channels.
Definition vsf_template_dac.h:301
uint8_t max_resolution_bits
Maximum resolution bits.
Definition vsf_template_dac.h:299
DAC configuration structure.
Definition vsf_template_dac.h:263
vsf_dac_isr_t isr
Interrupt configuration.
Definition vsf_template_dac.h:264
DAC interrupt configuration structure.
Definition vsf_template_dac.h:250
vsf_dac_isr_handler_t * handler_fn
Interrupt handler.
Definition vsf_template_dac.h:251
void * target_ptr
User target pointer.
Definition vsf_template_dac.h:252
vsf_arch_prio_t prio
Interrupt priority.
Definition vsf_template_dac.h:253
DAC status structure that can be reimplemented in specific HAL drivers.
Definition vsf_template_dac.h:276
Definition vsf_template_dac.h:315
Definition vsf_template_hal_driver.h:203
Definition vsf_template_hal_driver.h:196
vsf_dac_irq_mask_t
Predefined VSF DAC interrupts that can be reimplemented in specific HAL drivers. Even if the hardware...
Definition vsf_template_dac.h:199