123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258 |
- #ifndef _SAML11_CCL_COMPONENT_H_
- #define _SAML11_CCL_COMPONENT_H_
- #define _SAML11_CCL_COMPONENT_
- #define CCL_U2225
- #define REV_CCL 0x200
- #if !(defined(__ASSEMBLER__) || defined(__IAR_SYSTEMS_ASM__))
- typedef union {
- struct {
- uint8_t SWRST:1;
- uint8_t ENABLE:1;
- uint8_t :4;
- uint8_t RUNSTDBY:1;
- uint8_t :1;
- } bit;
- uint8_t reg;
- } CCL_CTRL_Type;
- #endif
- #define CCL_CTRL_OFFSET (0x00)
- #define CCL_CTRL_RESETVALUE _U_(0x00)
- #define CCL_CTRL_SWRST_Pos 0
- #define CCL_CTRL_SWRST_Msk (_U_(0x1) << CCL_CTRL_SWRST_Pos)
- #define CCL_CTRL_SWRST CCL_CTRL_SWRST_Msk
- #define CCL_CTRL_ENABLE_Pos 1
- #define CCL_CTRL_ENABLE_Msk (_U_(0x1) << CCL_CTRL_ENABLE_Pos)
- #define CCL_CTRL_ENABLE CCL_CTRL_ENABLE_Msk
- #define CCL_CTRL_RUNSTDBY_Pos 6
- #define CCL_CTRL_RUNSTDBY_Msk (_U_(0x1) << CCL_CTRL_RUNSTDBY_Pos)
- #define CCL_CTRL_RUNSTDBY CCL_CTRL_RUNSTDBY_Msk
- #define CCL_CTRL_MASK _U_(0x43)
- #define CCL_CTRL_Msk _U_(0x43)
- #if !(defined(__ASSEMBLER__) || defined(__IAR_SYSTEMS_ASM__))
- typedef union {
- struct {
- uint8_t SEQSEL:4;
- uint8_t :4;
- } bit;
- uint8_t reg;
- } CCL_SEQCTRL_Type;
- #endif
- #define CCL_SEQCTRL_OFFSET (0x04)
- #define CCL_SEQCTRL_RESETVALUE _U_(0x00)
- #define CCL_SEQCTRL_SEQSEL_Pos 0
- #define CCL_SEQCTRL_SEQSEL_Msk (_U_(0xF) << CCL_SEQCTRL_SEQSEL_Pos)
- #define CCL_SEQCTRL_SEQSEL(value) (CCL_SEQCTRL_SEQSEL_Msk & ((value) << CCL_SEQCTRL_SEQSEL_Pos))
- #define CCL_SEQCTRL_SEQSEL_DISABLE_Val _U_(0x0)
- #define CCL_SEQCTRL_SEQSEL_DFF_Val _U_(0x1)
- #define CCL_SEQCTRL_SEQSEL_JK_Val _U_(0x2)
- #define CCL_SEQCTRL_SEQSEL_LATCH_Val _U_(0x3)
- #define CCL_SEQCTRL_SEQSEL_RS_Val _U_(0x4)
- #define CCL_SEQCTRL_SEQSEL_DISABLE (CCL_SEQCTRL_SEQSEL_DISABLE_Val << CCL_SEQCTRL_SEQSEL_Pos)
- #define CCL_SEQCTRL_SEQSEL_DFF (CCL_SEQCTRL_SEQSEL_DFF_Val << CCL_SEQCTRL_SEQSEL_Pos)
- #define CCL_SEQCTRL_SEQSEL_JK (CCL_SEQCTRL_SEQSEL_JK_Val << CCL_SEQCTRL_SEQSEL_Pos)
- #define CCL_SEQCTRL_SEQSEL_LATCH (CCL_SEQCTRL_SEQSEL_LATCH_Val << CCL_SEQCTRL_SEQSEL_Pos)
- #define CCL_SEQCTRL_SEQSEL_RS (CCL_SEQCTRL_SEQSEL_RS_Val << CCL_SEQCTRL_SEQSEL_Pos)
- #define CCL_SEQCTRL_MASK _U_(0x0F)
- #define CCL_SEQCTRL_Msk _U_(0x0F)
- #if !(defined(__ASSEMBLER__) || defined(__IAR_SYSTEMS_ASM__))
- typedef union {
- struct {
- uint32_t :1;
- uint32_t ENABLE:1;
- uint32_t :2;
- uint32_t FILTSEL:2;
- uint32_t :1;
- uint32_t EDGESEL:1;
- uint32_t INSEL0:4;
- uint32_t INSEL1:4;
- uint32_t INSEL2:4;
- uint32_t INVEI:1;
- uint32_t LUTEI:1;
- uint32_t LUTEO:1;
- uint32_t :1;
- uint32_t TRUTH:8;
- } bit;
- uint32_t reg;
- } CCL_LUTCTRL_Type;
- #endif
- #define CCL_LUTCTRL_OFFSET (0x08)
- #define CCL_LUTCTRL_RESETVALUE _U_(0x00)
- #define CCL_LUTCTRL_ENABLE_Pos 1
- #define CCL_LUTCTRL_ENABLE_Msk (_U_(0x1) << CCL_LUTCTRL_ENABLE_Pos)
- #define CCL_LUTCTRL_ENABLE CCL_LUTCTRL_ENABLE_Msk
- #define CCL_LUTCTRL_FILTSEL_Pos 4
- #define CCL_LUTCTRL_FILTSEL_Msk (_U_(0x3) << CCL_LUTCTRL_FILTSEL_Pos)
- #define CCL_LUTCTRL_FILTSEL(value) (CCL_LUTCTRL_FILTSEL_Msk & ((value) << CCL_LUTCTRL_FILTSEL_Pos))
- #define CCL_LUTCTRL_FILTSEL_DISABLE_Val _U_(0x0)
- #define CCL_LUTCTRL_FILTSEL_SYNCH_Val _U_(0x1)
- #define CCL_LUTCTRL_FILTSEL_FILTER_Val _U_(0x2)
- #define CCL_LUTCTRL_FILTSEL_DISABLE (CCL_LUTCTRL_FILTSEL_DISABLE_Val << CCL_LUTCTRL_FILTSEL_Pos)
- #define CCL_LUTCTRL_FILTSEL_SYNCH (CCL_LUTCTRL_FILTSEL_SYNCH_Val << CCL_LUTCTRL_FILTSEL_Pos)
- #define CCL_LUTCTRL_FILTSEL_FILTER (CCL_LUTCTRL_FILTSEL_FILTER_Val << CCL_LUTCTRL_FILTSEL_Pos)
- #define CCL_LUTCTRL_EDGESEL_Pos 7
- #define CCL_LUTCTRL_EDGESEL_Msk (_U_(0x1) << CCL_LUTCTRL_EDGESEL_Pos)
- #define CCL_LUTCTRL_EDGESEL CCL_LUTCTRL_EDGESEL_Msk
- #define CCL_LUTCTRL_INSEL0_Pos 8
- #define CCL_LUTCTRL_INSEL0_Msk (_U_(0xF) << CCL_LUTCTRL_INSEL0_Pos)
- #define CCL_LUTCTRL_INSEL0(value) (CCL_LUTCTRL_INSEL0_Msk & ((value) << CCL_LUTCTRL_INSEL0_Pos))
- #define CCL_LUTCTRL_INSEL0_MASK_Val _U_(0x0)
- #define CCL_LUTCTRL_INSEL0_FEEDBACK_Val _U_(0x1)
- #define CCL_LUTCTRL_INSEL0_LINK_Val _U_(0x2)
- #define CCL_LUTCTRL_INSEL0_EVENT_Val _U_(0x3)
- #define CCL_LUTCTRL_INSEL0_IO_Val _U_(0x4)
- #define CCL_LUTCTRL_INSEL0_AC_Val _U_(0x5)
- #define CCL_LUTCTRL_INSEL0_TC_Val _U_(0x6)
- #define CCL_LUTCTRL_INSEL0_ALTTC_Val _U_(0x7)
- #define CCL_LUTCTRL_INSEL0_TCC_Val _U_(0x8)
- #define CCL_LUTCTRL_INSEL0_SERCOM_Val _U_(0x9)
- #define CCL_LUTCTRL_INSEL0_ALT2TC_Val _U_(0xA)
- #define CCL_LUTCTRL_INSEL0_ASYNCEVENT_Val _U_(0xB)
- #define CCL_LUTCTRL_INSEL0_MASK (CCL_LUTCTRL_INSEL0_MASK_Val << CCL_LUTCTRL_INSEL0_Pos)
- #define CCL_LUTCTRL_INSEL0_FEEDBACK (CCL_LUTCTRL_INSEL0_FEEDBACK_Val << CCL_LUTCTRL_INSEL0_Pos)
- #define CCL_LUTCTRL_INSEL0_LINK (CCL_LUTCTRL_INSEL0_LINK_Val << CCL_LUTCTRL_INSEL0_Pos)
- #define CCL_LUTCTRL_INSEL0_EVENT (CCL_LUTCTRL_INSEL0_EVENT_Val << CCL_LUTCTRL_INSEL0_Pos)
- #define CCL_LUTCTRL_INSEL0_IO (CCL_LUTCTRL_INSEL0_IO_Val << CCL_LUTCTRL_INSEL0_Pos)
- #define CCL_LUTCTRL_INSEL0_AC (CCL_LUTCTRL_INSEL0_AC_Val << CCL_LUTCTRL_INSEL0_Pos)
- #define CCL_LUTCTRL_INSEL0_TC (CCL_LUTCTRL_INSEL0_TC_Val << CCL_LUTCTRL_INSEL0_Pos)
- #define CCL_LUTCTRL_INSEL0_ALTTC (CCL_LUTCTRL_INSEL0_ALTTC_Val << CCL_LUTCTRL_INSEL0_Pos)
- #define CCL_LUTCTRL_INSEL0_TCC (CCL_LUTCTRL_INSEL0_TCC_Val << CCL_LUTCTRL_INSEL0_Pos)
- #define CCL_LUTCTRL_INSEL0_SERCOM (CCL_LUTCTRL_INSEL0_SERCOM_Val << CCL_LUTCTRL_INSEL0_Pos)
- #define CCL_LUTCTRL_INSEL0_ALT2TC (CCL_LUTCTRL_INSEL0_ALT2TC_Val << CCL_LUTCTRL_INSEL0_Pos)
- #define CCL_LUTCTRL_INSEL0_ASYNCEVENT (CCL_LUTCTRL_INSEL0_ASYNCEVENT_Val << CCL_LUTCTRL_INSEL0_Pos)
- #define CCL_LUTCTRL_INSEL1_Pos 12
- #define CCL_LUTCTRL_INSEL1_Msk (_U_(0xF) << CCL_LUTCTRL_INSEL1_Pos)
- #define CCL_LUTCTRL_INSEL1(value) (CCL_LUTCTRL_INSEL1_Msk & ((value) << CCL_LUTCTRL_INSEL1_Pos))
- #define CCL_LUTCTRL_INSEL1_MASK_Val _U_(0x0)
- #define CCL_LUTCTRL_INSEL1_FEEDBACK_Val _U_(0x1)
- #define CCL_LUTCTRL_INSEL1_LINK_Val _U_(0x2)
- #define CCL_LUTCTRL_INSEL1_EVENT_Val _U_(0x3)
- #define CCL_LUTCTRL_INSEL1_IO_Val _U_(0x4)
- #define CCL_LUTCTRL_INSEL1_AC_Val _U_(0x5)
- #define CCL_LUTCTRL_INSEL1_TC_Val _U_(0x6)
- #define CCL_LUTCTRL_INSEL1_ALTTC_Val _U_(0x7)
- #define CCL_LUTCTRL_INSEL1_TCC_Val _U_(0x8)
- #define CCL_LUTCTRL_INSEL1_SERCOM_Val _U_(0x9)
- #define CCL_LUTCTRL_INSEL1_ALT2TC_Val _U_(0xA)
- #define CCL_LUTCTRL_INSEL1_ASYNCEVENT_Val _U_(0xB)
- #define CCL_LUTCTRL_INSEL1_MASK (CCL_LUTCTRL_INSEL1_MASK_Val << CCL_LUTCTRL_INSEL1_Pos)
- #define CCL_LUTCTRL_INSEL1_FEEDBACK (CCL_LUTCTRL_INSEL1_FEEDBACK_Val << CCL_LUTCTRL_INSEL1_Pos)
- #define CCL_LUTCTRL_INSEL1_LINK (CCL_LUTCTRL_INSEL1_LINK_Val << CCL_LUTCTRL_INSEL1_Pos)
- #define CCL_LUTCTRL_INSEL1_EVENT (CCL_LUTCTRL_INSEL1_EVENT_Val << CCL_LUTCTRL_INSEL1_Pos)
- #define CCL_LUTCTRL_INSEL1_IO (CCL_LUTCTRL_INSEL1_IO_Val << CCL_LUTCTRL_INSEL1_Pos)
- #define CCL_LUTCTRL_INSEL1_AC (CCL_LUTCTRL_INSEL1_AC_Val << CCL_LUTCTRL_INSEL1_Pos)
- #define CCL_LUTCTRL_INSEL1_TC (CCL_LUTCTRL_INSEL1_TC_Val << CCL_LUTCTRL_INSEL1_Pos)
- #define CCL_LUTCTRL_INSEL1_ALTTC (CCL_LUTCTRL_INSEL1_ALTTC_Val << CCL_LUTCTRL_INSEL1_Pos)
- #define CCL_LUTCTRL_INSEL1_TCC (CCL_LUTCTRL_INSEL1_TCC_Val << CCL_LUTCTRL_INSEL1_Pos)
- #define CCL_LUTCTRL_INSEL1_SERCOM (CCL_LUTCTRL_INSEL1_SERCOM_Val << CCL_LUTCTRL_INSEL1_Pos)
- #define CCL_LUTCTRL_INSEL1_ALT2TC (CCL_LUTCTRL_INSEL1_ALT2TC_Val << CCL_LUTCTRL_INSEL1_Pos)
- #define CCL_LUTCTRL_INSEL1_ASYNCEVENT (CCL_LUTCTRL_INSEL1_ASYNCEVENT_Val << CCL_LUTCTRL_INSEL1_Pos)
- #define CCL_LUTCTRL_INSEL2_Pos 16
- #define CCL_LUTCTRL_INSEL2_Msk (_U_(0xF) << CCL_LUTCTRL_INSEL2_Pos)
- #define CCL_LUTCTRL_INSEL2(value) (CCL_LUTCTRL_INSEL2_Msk & ((value) << CCL_LUTCTRL_INSEL2_Pos))
- #define CCL_LUTCTRL_INSEL2_MASK_Val _U_(0x0)
- #define CCL_LUTCTRL_INSEL2_FEEDBACK_Val _U_(0x1)
- #define CCL_LUTCTRL_INSEL2_LINK_Val _U_(0x2)
- #define CCL_LUTCTRL_INSEL2_EVENT_Val _U_(0x3)
- #define CCL_LUTCTRL_INSEL2_IO_Val _U_(0x4)
- #define CCL_LUTCTRL_INSEL2_AC_Val _U_(0x5)
- #define CCL_LUTCTRL_INSEL2_TC_Val _U_(0x6)
- #define CCL_LUTCTRL_INSEL2_ALTTC_Val _U_(0x7)
- #define CCL_LUTCTRL_INSEL2_TCC_Val _U_(0x8)
- #define CCL_LUTCTRL_INSEL2_SERCOM_Val _U_(0x9)
- #define CCL_LUTCTRL_INSEL2_ALT2TC_Val _U_(0xA)
- #define CCL_LUTCTRL_INSEL2_ASYNCEVENT_Val _U_(0xB)
- #define CCL_LUTCTRL_INSEL2_MASK (CCL_LUTCTRL_INSEL2_MASK_Val << CCL_LUTCTRL_INSEL2_Pos)
- #define CCL_LUTCTRL_INSEL2_FEEDBACK (CCL_LUTCTRL_INSEL2_FEEDBACK_Val << CCL_LUTCTRL_INSEL2_Pos)
- #define CCL_LUTCTRL_INSEL2_LINK (CCL_LUTCTRL_INSEL2_LINK_Val << CCL_LUTCTRL_INSEL2_Pos)
- #define CCL_LUTCTRL_INSEL2_EVENT (CCL_LUTCTRL_INSEL2_EVENT_Val << CCL_LUTCTRL_INSEL2_Pos)
- #define CCL_LUTCTRL_INSEL2_IO (CCL_LUTCTRL_INSEL2_IO_Val << CCL_LUTCTRL_INSEL2_Pos)
- #define CCL_LUTCTRL_INSEL2_AC (CCL_LUTCTRL_INSEL2_AC_Val << CCL_LUTCTRL_INSEL2_Pos)
- #define CCL_LUTCTRL_INSEL2_TC (CCL_LUTCTRL_INSEL2_TC_Val << CCL_LUTCTRL_INSEL2_Pos)
- #define CCL_LUTCTRL_INSEL2_ALTTC (CCL_LUTCTRL_INSEL2_ALTTC_Val << CCL_LUTCTRL_INSEL2_Pos)
- #define CCL_LUTCTRL_INSEL2_TCC (CCL_LUTCTRL_INSEL2_TCC_Val << CCL_LUTCTRL_INSEL2_Pos)
- #define CCL_LUTCTRL_INSEL2_SERCOM (CCL_LUTCTRL_INSEL2_SERCOM_Val << CCL_LUTCTRL_INSEL2_Pos)
- #define CCL_LUTCTRL_INSEL2_ALT2TC (CCL_LUTCTRL_INSEL2_ALT2TC_Val << CCL_LUTCTRL_INSEL2_Pos)
- #define CCL_LUTCTRL_INSEL2_ASYNCEVENT (CCL_LUTCTRL_INSEL2_ASYNCEVENT_Val << CCL_LUTCTRL_INSEL2_Pos)
- #define CCL_LUTCTRL_INVEI_Pos 20
- #define CCL_LUTCTRL_INVEI_Msk (_U_(0x1) << CCL_LUTCTRL_INVEI_Pos)
- #define CCL_LUTCTRL_INVEI CCL_LUTCTRL_INVEI_Msk
- #define CCL_LUTCTRL_LUTEI_Pos 21
- #define CCL_LUTCTRL_LUTEI_Msk (_U_(0x1) << CCL_LUTCTRL_LUTEI_Pos)
- #define CCL_LUTCTRL_LUTEI CCL_LUTCTRL_LUTEI_Msk
- #define CCL_LUTCTRL_LUTEO_Pos 22
- #define CCL_LUTCTRL_LUTEO_Msk (_U_(0x1) << CCL_LUTCTRL_LUTEO_Pos)
- #define CCL_LUTCTRL_LUTEO CCL_LUTCTRL_LUTEO_Msk
- #define CCL_LUTCTRL_TRUTH_Pos 24
- #define CCL_LUTCTRL_TRUTH_Msk (_U_(0xFF) << CCL_LUTCTRL_TRUTH_Pos)
- #define CCL_LUTCTRL_TRUTH(value) (CCL_LUTCTRL_TRUTH_Msk & ((value) << CCL_LUTCTRL_TRUTH_Pos))
- #define CCL_LUTCTRL_MASK _U_(0xFF7FFFB2)
- #define CCL_LUTCTRL_Msk _U_(0xFF7FFFB2)
- #if !(defined(__ASSEMBLER__) || defined(__IAR_SYSTEMS_ASM__))
- typedef struct {
- __IO CCL_CTRL_Type CTRL;
- __I uint8_t Reserved1[3];
- __IO CCL_SEQCTRL_Type SEQCTRL[1];
- __I uint8_t Reserved2[3];
- __IO CCL_LUTCTRL_Type LUTCTRL[2];
- } Ccl;
- #endif
- #endif
|