123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227 |
- #ifndef _SAML11_OPAMP_COMPONENT_H_
- #define _SAML11_OPAMP_COMPONENT_H_
- #define _SAML11_OPAMP_COMPONENT_
- #define OPAMP_U2237
- #define REV_OPAMP 0x200
- #if !(defined(__ASSEMBLER__) || defined(__IAR_SYSTEMS_ASM__))
- typedef union {
- struct {
- uint8_t SWRST:1;
- uint8_t ENABLE:1;
- uint8_t :5;
- uint8_t LPMUX:1;
- } bit;
- uint8_t reg;
- } OPAMP_CTRLA_Type;
- #endif
- #define OPAMP_CTRLA_OFFSET (0x00)
- #define OPAMP_CTRLA_RESETVALUE _U_(0x00)
- #define OPAMP_CTRLA_SWRST_Pos 0
- #define OPAMP_CTRLA_SWRST_Msk (_U_(0x1) << OPAMP_CTRLA_SWRST_Pos)
- #define OPAMP_CTRLA_SWRST OPAMP_CTRLA_SWRST_Msk
- #define OPAMP_CTRLA_ENABLE_Pos 1
- #define OPAMP_CTRLA_ENABLE_Msk (_U_(0x1) << OPAMP_CTRLA_ENABLE_Pos)
- #define OPAMP_CTRLA_ENABLE OPAMP_CTRLA_ENABLE_Msk
- #define OPAMP_CTRLA_LPMUX_Pos 7
- #define OPAMP_CTRLA_LPMUX_Msk (_U_(0x1) << OPAMP_CTRLA_LPMUX_Pos)
- #define OPAMP_CTRLA_LPMUX OPAMP_CTRLA_LPMUX_Msk
- #define OPAMP_CTRLA_MASK _U_(0x83)
- #define OPAMP_CTRLA_Msk _U_(0x83)
- #if !(defined(__ASSEMBLER__) || defined(__IAR_SYSTEMS_ASM__))
- typedef union {
- struct {
- uint8_t READY0:1;
- uint8_t READY1:1;
- uint8_t READY2:1;
- uint8_t :5;
- } bit;
- struct {
- uint8_t READY:3;
- uint8_t :5;
- } vec;
- uint8_t reg;
- } OPAMP_STATUS_Type;
- #endif
- #define OPAMP_STATUS_OFFSET (0x02)
- #define OPAMP_STATUS_RESETVALUE _U_(0x00)
- #define OPAMP_STATUS_READY0_Pos 0
- #define OPAMP_STATUS_READY0_Msk (_U_(0x1) << OPAMP_STATUS_READY0_Pos)
- #define OPAMP_STATUS_READY0 OPAMP_STATUS_READY0_Msk
- #define OPAMP_STATUS_READY1_Pos 1
- #define OPAMP_STATUS_READY1_Msk (_U_(0x1) << OPAMP_STATUS_READY1_Pos)
- #define OPAMP_STATUS_READY1 OPAMP_STATUS_READY1_Msk
- #define OPAMP_STATUS_READY2_Pos 2
- #define OPAMP_STATUS_READY2_Msk (_U_(0x1) << OPAMP_STATUS_READY2_Pos)
- #define OPAMP_STATUS_READY2 OPAMP_STATUS_READY2_Msk
- #define OPAMP_STATUS_MASK _U_(0x07)
- #define OPAMP_STATUS_Msk _U_(0x07)
- #define OPAMP_STATUS_READY_Pos 0
- #define OPAMP_STATUS_READY_Msk (_U_(0x7) << OPAMP_STATUS_READY_Pos)
- #define OPAMP_STATUS_READY(value) (OPAMP_STATUS_READY_Msk & ((value) << OPAMP_STATUS_READY_Pos))
- #if !(defined(__ASSEMBLER__) || defined(__IAR_SYSTEMS_ASM__))
- typedef union {
- struct {
- uint32_t :1;
- uint32_t ENABLE:1;
- uint32_t ANAOUT:1;
- uint32_t BIAS:2;
- uint32_t RES2VCC:1;
- uint32_t RUNSTDBY:1;
- uint32_t ONDEMAND:1;
- uint32_t RES2OUT:1;
- uint32_t RES1EN:1;
- uint32_t RES1MUX:3;
- uint32_t POTMUX:3;
- uint32_t MUXPOS:4;
- uint32_t MUXNEG:4;
- uint32_t :8;
- } bit;
- uint32_t reg;
- } OPAMP_OPAMPCTRL_Type;
- #endif
- #define OPAMP_OPAMPCTRL_OFFSET (0x04)
- #define OPAMP_OPAMPCTRL_RESETVALUE _U_(0x00)
- #define OPAMP_OPAMPCTRL_ENABLE_Pos 1
- #define OPAMP_OPAMPCTRL_ENABLE_Msk (_U_(0x1) << OPAMP_OPAMPCTRL_ENABLE_Pos)
- #define OPAMP_OPAMPCTRL_ENABLE OPAMP_OPAMPCTRL_ENABLE_Msk
- #define OPAMP_OPAMPCTRL_ANAOUT_Pos 2
- #define OPAMP_OPAMPCTRL_ANAOUT_Msk (_U_(0x1) << OPAMP_OPAMPCTRL_ANAOUT_Pos)
- #define OPAMP_OPAMPCTRL_ANAOUT OPAMP_OPAMPCTRL_ANAOUT_Msk
- #define OPAMP_OPAMPCTRL_BIAS_Pos 3
- #define OPAMP_OPAMPCTRL_BIAS_Msk (_U_(0x3) << OPAMP_OPAMPCTRL_BIAS_Pos)
- #define OPAMP_OPAMPCTRL_BIAS(value) (OPAMP_OPAMPCTRL_BIAS_Msk & ((value) << OPAMP_OPAMPCTRL_BIAS_Pos))
- #define OPAMP_OPAMPCTRL_RES2VCC_Pos 5
- #define OPAMP_OPAMPCTRL_RES2VCC_Msk (_U_(0x1) << OPAMP_OPAMPCTRL_RES2VCC_Pos)
- #define OPAMP_OPAMPCTRL_RES2VCC OPAMP_OPAMPCTRL_RES2VCC_Msk
- #define OPAMP_OPAMPCTRL_RUNSTDBY_Pos 6
- #define OPAMP_OPAMPCTRL_RUNSTDBY_Msk (_U_(0x1) << OPAMP_OPAMPCTRL_RUNSTDBY_Pos)
- #define OPAMP_OPAMPCTRL_RUNSTDBY OPAMP_OPAMPCTRL_RUNSTDBY_Msk
- #define OPAMP_OPAMPCTRL_ONDEMAND_Pos 7
- #define OPAMP_OPAMPCTRL_ONDEMAND_Msk (_U_(0x1) << OPAMP_OPAMPCTRL_ONDEMAND_Pos)
- #define OPAMP_OPAMPCTRL_ONDEMAND OPAMP_OPAMPCTRL_ONDEMAND_Msk
- #define OPAMP_OPAMPCTRL_RES2OUT_Pos 8
- #define OPAMP_OPAMPCTRL_RES2OUT_Msk (_U_(0x1) << OPAMP_OPAMPCTRL_RES2OUT_Pos)
- #define OPAMP_OPAMPCTRL_RES2OUT OPAMP_OPAMPCTRL_RES2OUT_Msk
- #define OPAMP_OPAMPCTRL_RES1EN_Pos 9
- #define OPAMP_OPAMPCTRL_RES1EN_Msk (_U_(0x1) << OPAMP_OPAMPCTRL_RES1EN_Pos)
- #define OPAMP_OPAMPCTRL_RES1EN OPAMP_OPAMPCTRL_RES1EN_Msk
- #define OPAMP_OPAMPCTRL_RES1MUX_Pos 10
- #define OPAMP_OPAMPCTRL_RES1MUX_Msk (_U_(0x7) << OPAMP_OPAMPCTRL_RES1MUX_Pos)
- #define OPAMP_OPAMPCTRL_RES1MUX(value) (OPAMP_OPAMPCTRL_RES1MUX_Msk & ((value) << OPAMP_OPAMPCTRL_RES1MUX_Pos))
- #define OPAMP_OPAMPCTRL_POTMUX_Pos 13
- #define OPAMP_OPAMPCTRL_POTMUX_Msk (_U_(0x7) << OPAMP_OPAMPCTRL_POTMUX_Pos)
- #define OPAMP_OPAMPCTRL_POTMUX(value) (OPAMP_OPAMPCTRL_POTMUX_Msk & ((value) << OPAMP_OPAMPCTRL_POTMUX_Pos))
- #define OPAMP_OPAMPCTRL_MUXPOS_Pos 16
- #define OPAMP_OPAMPCTRL_MUXPOS_Msk (_U_(0xF) << OPAMP_OPAMPCTRL_MUXPOS_Pos)
- #define OPAMP_OPAMPCTRL_MUXPOS(value) (OPAMP_OPAMPCTRL_MUXPOS_Msk & ((value) << OPAMP_OPAMPCTRL_MUXPOS_Pos))
- #define OPAMP_OPAMPCTRL_MUXNEG_Pos 20
- #define OPAMP_OPAMPCTRL_MUXNEG_Msk (_U_(0xF) << OPAMP_OPAMPCTRL_MUXNEG_Pos)
- #define OPAMP_OPAMPCTRL_MUXNEG(value) (OPAMP_OPAMPCTRL_MUXNEG_Msk & ((value) << OPAMP_OPAMPCTRL_MUXNEG_Pos))
- #define OPAMP_OPAMPCTRL_MASK _U_(0xFFFFFE)
- #define OPAMP_OPAMPCTRL_Msk _U_(0xFFFFFE)
- #if !(defined(__ASSEMBLER__) || defined(__IAR_SYSTEMS_ASM__))
- typedef union {
- struct {
- uint8_t RES2OUT:1;
- uint8_t RES1EN:1;
- uint8_t RES1MUX:1;
- uint8_t POTMUX:3;
- uint8_t REFBUFLEVEL:2;
- } bit;
- uint8_t reg;
- } OPAMP_RESCTRL_Type;
- #endif
- #define OPAMP_RESCTRL_OFFSET (0x10)
- #define OPAMP_RESCTRL_RESETVALUE _U_(0x00)
- #define OPAMP_RESCTRL_RES2OUT_Pos 0
- #define OPAMP_RESCTRL_RES2OUT_Msk (_U_(0x1) << OPAMP_RESCTRL_RES2OUT_Pos)
- #define OPAMP_RESCTRL_RES2OUT OPAMP_RESCTRL_RES2OUT_Msk
- #define OPAMP_RESCTRL_RES1EN_Pos 1
- #define OPAMP_RESCTRL_RES1EN_Msk (_U_(0x1) << OPAMP_RESCTRL_RES1EN_Pos)
- #define OPAMP_RESCTRL_RES1EN OPAMP_RESCTRL_RES1EN_Msk
- #define OPAMP_RESCTRL_RES1MUX_Pos 2
- #define OPAMP_RESCTRL_RES1MUX_Msk (_U_(0x1) << OPAMP_RESCTRL_RES1MUX_Pos)
- #define OPAMP_RESCTRL_RES1MUX OPAMP_RESCTRL_RES1MUX_Msk
- #define OPAMP_RESCTRL_POTMUX_Pos 3
- #define OPAMP_RESCTRL_POTMUX_Msk (_U_(0x7) << OPAMP_RESCTRL_POTMUX_Pos)
- #define OPAMP_RESCTRL_POTMUX(value) (OPAMP_RESCTRL_POTMUX_Msk & ((value) << OPAMP_RESCTRL_POTMUX_Pos))
- #define OPAMP_RESCTRL_REFBUFLEVEL_Pos 6
- #define OPAMP_RESCTRL_REFBUFLEVEL_Msk (_U_(0x3) << OPAMP_RESCTRL_REFBUFLEVEL_Pos)
- #define OPAMP_RESCTRL_REFBUFLEVEL(value) (OPAMP_RESCTRL_REFBUFLEVEL_Msk & ((value) << OPAMP_RESCTRL_REFBUFLEVEL_Pos))
- #define OPAMP_RESCTRL_MASK _U_(0xFF)
- #define OPAMP_RESCTRL_Msk _U_(0xFF)
- #if !(defined(__ASSEMBLER__) || defined(__IAR_SYSTEMS_ASM__))
- typedef struct {
- __IO OPAMP_CTRLA_Type CTRLA;
- __I uint8_t Reserved1[1];
- __I OPAMP_STATUS_Type STATUS;
- __I uint8_t Reserved2[1];
- __IO OPAMP_OPAMPCTRL_Type OPAMPCTRL[3];
- __IO OPAMP_RESCTRL_Type RESCTRL;
- } Opamp;
- #endif
- #endif
|