30 #ifndef _SAM4S_USART_COMPONENT_ 31 #define _SAM4S_USART_COMPONENT_ 39 #if !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) 77 #define US_CR_RSTRX (0x1u << 2) 78 #define US_CR_RSTTX (0x1u << 3) 79 #define US_CR_RXEN (0x1u << 4) 80 #define US_CR_RXDIS (0x1u << 5) 81 #define US_CR_TXEN (0x1u << 6) 82 #define US_CR_TXDIS (0x1u << 7) 83 #define US_CR_RSTSTA (0x1u << 8) 84 #define US_CR_STTBRK (0x1u << 9) 85 #define US_CR_STPBRK (0x1u << 10) 86 #define US_CR_STTTO (0x1u << 11) 87 #define US_CR_SENDA (0x1u << 12) 88 #define US_CR_RSTIT (0x1u << 13) 89 #define US_CR_RSTNACK (0x1u << 14) 90 #define US_CR_RETTO (0x1u << 15) 91 #define US_CR_DTREN (0x1u << 16) 92 #define US_CR_DTRDIS (0x1u << 17) 93 #define US_CR_RTSEN (0x1u << 18) 94 #define US_CR_FCS (0x1u << 18) 95 #define US_CR_RTSDIS (0x1u << 19) 96 #define US_CR_RCS (0x1u << 19) 98 #define US_MR_USART_MODE_Pos 0 99 #define US_MR_USART_MODE_Msk (0xfu << US_MR_USART_MODE_Pos) 100 #define US_MR_USART_MODE_NORMAL (0x0u << 0) 101 #define US_MR_USART_MODE_RS485 (0x1u << 0) 102 #define US_MR_USART_MODE_HW_HANDSHAKING (0x2u << 0) 103 #define US_MR_USART_MODE_MODEM (0x3u << 0) 104 #define US_MR_USART_MODE_IS07816_T_0 (0x4u << 0) 105 #define US_MR_USART_MODE_IS07816_T_1 (0x6u << 0) 106 #define US_MR_USART_MODE_IRDA (0x8u << 0) 107 #define US_MR_USART_MODE_SPI_MASTER (0xEu << 0) 108 #define US_MR_USART_MODE_SPI_SLAVE (0xFu << 0) 109 #define US_MR_USCLKS_Pos 4 110 #define US_MR_USCLKS_Msk (0x3u << US_MR_USCLKS_Pos) 111 #define US_MR_USCLKS_MCK (0x0u << 4) 112 #define US_MR_USCLKS_DIV (0x1u << 4) 113 #define US_MR_USCLKS_SCK (0x3u << 4) 114 #define US_MR_CHRL_Pos 6 115 #define US_MR_CHRL_Msk (0x3u << US_MR_CHRL_Pos) 116 #define US_MR_CHRL_5_BIT (0x0u << 6) 117 #define US_MR_CHRL_6_BIT (0x1u << 6) 118 #define US_MR_CHRL_7_BIT (0x2u << 6) 119 #define US_MR_CHRL_8_BIT (0x3u << 6) 120 #define US_MR_SYNC (0x1u << 8) 121 #define US_MR_CPHA (0x1u << 8) 122 #define US_MR_PAR_Pos 9 123 #define US_MR_PAR_Msk (0x7u << US_MR_PAR_Pos) 124 #define US_MR_PAR_EVEN (0x0u << 9) 125 #define US_MR_PAR_ODD (0x1u << 9) 126 #define US_MR_PAR_SPACE (0x2u << 9) 127 #define US_MR_PAR_MARK (0x3u << 9) 128 #define US_MR_PAR_NO (0x4u << 9) 129 #define US_MR_PAR_MULTIDROP (0x6u << 9) 130 #define US_MR_NBSTOP_Pos 12 131 #define US_MR_NBSTOP_Msk (0x3u << US_MR_NBSTOP_Pos) 132 #define US_MR_NBSTOP_1_BIT (0x0u << 12) 133 #define US_MR_NBSTOP_1_5_BIT (0x1u << 12) 134 #define US_MR_NBSTOP_2_BIT (0x2u << 12) 135 #define US_MR_CHMODE_Pos 14 136 #define US_MR_CHMODE_Msk (0x3u << US_MR_CHMODE_Pos) 137 #define US_MR_CHMODE_NORMAL (0x0u << 14) 138 #define US_MR_CHMODE_AUTOMATIC (0x1u << 14) 139 #define US_MR_CHMODE_LOCAL_LOOPBACK (0x2u << 14) 140 #define US_MR_CHMODE_REMOTE_LOOPBACK (0x3u << 14) 141 #define US_MR_MSBF (0x1u << 16) 142 #define US_MR_CPOL (0x1u << 16) 143 #define US_MR_MODE9 (0x1u << 17) 144 #define US_MR_CLKO (0x1u << 18) 145 #define US_MR_OVER (0x1u << 19) 146 #define US_MR_INACK (0x1u << 20) 147 #define US_MR_DSNACK (0x1u << 21) 148 #define US_MR_VAR_SYNC (0x1u << 22) 149 #define US_MR_INVDATA (0x1u << 23) 150 #define US_MR_MAX_ITERATION_Pos 24 151 #define US_MR_MAX_ITERATION_Msk (0x7u << US_MR_MAX_ITERATION_Pos) 152 #define US_MR_MAX_ITERATION(value) ((US_MR_MAX_ITERATION_Msk & ((value) << US_MR_MAX_ITERATION_Pos))) 153 #define US_MR_FILTER (0x1u << 28) 154 #define US_MR_MAN (0x1u << 29) 155 #define US_MR_MODSYNC (0x1u << 30) 156 #define US_MR_ONEBIT (0x1u << 31) 158 #define US_IER_RXRDY (0x1u << 0) 159 #define US_IER_TXRDY (0x1u << 1) 160 #define US_IER_RXBRK (0x1u << 2) 161 #define US_IER_ENDRX (0x1u << 3) 162 #define US_IER_ENDTX (0x1u << 4) 163 #define US_IER_OVRE (0x1u << 5) 164 #define US_IER_FRAME (0x1u << 6) 165 #define US_IER_PARE (0x1u << 7) 166 #define US_IER_TIMEOUT (0x1u << 8) 167 #define US_IER_TXEMPTY (0x1u << 9) 168 #define US_IER_ITER (0x1u << 10) 169 #define US_IER_UNRE (0x1u << 10) 170 #define US_IER_TXBUFE (0x1u << 11) 171 #define US_IER_RXBUFF (0x1u << 12) 172 #define US_IER_NACK (0x1u << 13) 173 #define US_IER_RIIC (0x1u << 16) 174 #define US_IER_DSRIC (0x1u << 17) 175 #define US_IER_DCDIC (0x1u << 18) 176 #define US_IER_CTSIC (0x1u << 19) 177 #define US_IER_MANE (0x1u << 24) 179 #define US_IDR_RXRDY (0x1u << 0) 180 #define US_IDR_TXRDY (0x1u << 1) 181 #define US_IDR_RXBRK (0x1u << 2) 182 #define US_IDR_ENDRX (0x1u << 3) 183 #define US_IDR_ENDTX (0x1u << 4) 184 #define US_IDR_OVRE (0x1u << 5) 185 #define US_IDR_FRAME (0x1u << 6) 186 #define US_IDR_PARE (0x1u << 7) 187 #define US_IDR_TIMEOUT (0x1u << 8) 188 #define US_IDR_TXEMPTY (0x1u << 9) 189 #define US_IDR_ITER (0x1u << 10) 190 #define US_IDR_UNRE (0x1u << 10) 191 #define US_IDR_TXBUFE (0x1u << 11) 192 #define US_IDR_RXBUFF (0x1u << 12) 193 #define US_IDR_NACK (0x1u << 13) 194 #define US_IDR_RIIC (0x1u << 16) 195 #define US_IDR_DSRIC (0x1u << 17) 196 #define US_IDR_DCDIC (0x1u << 18) 197 #define US_IDR_CTSIC (0x1u << 19) 198 #define US_IDR_MANE (0x1u << 24) 200 #define US_IMR_RXRDY (0x1u << 0) 201 #define US_IMR_TXRDY (0x1u << 1) 202 #define US_IMR_RXBRK (0x1u << 2) 203 #define US_IMR_ENDRX (0x1u << 3) 204 #define US_IMR_ENDTX (0x1u << 4) 205 #define US_IMR_OVRE (0x1u << 5) 206 #define US_IMR_FRAME (0x1u << 6) 207 #define US_IMR_PARE (0x1u << 7) 208 #define US_IMR_TIMEOUT (0x1u << 8) 209 #define US_IMR_TXEMPTY (0x1u << 9) 210 #define US_IMR_ITER (0x1u << 10) 211 #define US_IMR_UNRE (0x1u << 10) 212 #define US_IMR_TXBUFE (0x1u << 11) 213 #define US_IMR_RXBUFF (0x1u << 12) 214 #define US_IMR_NACK (0x1u << 13) 215 #define US_IMR_RIIC (0x1u << 16) 216 #define US_IMR_DSRIC (0x1u << 17) 217 #define US_IMR_DCDIC (0x1u << 18) 218 #define US_IMR_CTSIC (0x1u << 19) 219 #define US_IMR_MANE (0x1u << 24) 221 #define US_CSR_RXRDY (0x1u << 0) 222 #define US_CSR_TXRDY (0x1u << 1) 223 #define US_CSR_RXBRK (0x1u << 2) 224 #define US_CSR_ENDRX (0x1u << 3) 225 #define US_CSR_ENDTX (0x1u << 4) 226 #define US_CSR_OVRE (0x1u << 5) 227 #define US_CSR_FRAME (0x1u << 6) 228 #define US_CSR_PARE (0x1u << 7) 229 #define US_CSR_TIMEOUT (0x1u << 8) 230 #define US_CSR_TXEMPTY (0x1u << 9) 231 #define US_CSR_ITER (0x1u << 10) 232 #define US_CSR_UNRE (0x1u << 10) 233 #define US_CSR_TXBUFE (0x1u << 11) 234 #define US_CSR_RXBUFF (0x1u << 12) 235 #define US_CSR_NACK (0x1u << 13) 236 #define US_CSR_RIIC (0x1u << 16) 237 #define US_CSR_DSRIC (0x1u << 17) 238 #define US_CSR_DCDIC (0x1u << 18) 239 #define US_CSR_CTSIC (0x1u << 19) 240 #define US_CSR_RI (0x1u << 20) 241 #define US_CSR_DSR (0x1u << 21) 242 #define US_CSR_DCD (0x1u << 22) 243 #define US_CSR_CTS (0x1u << 23) 244 #define US_CSR_MANERR (0x1u << 24) 246 #define US_RHR_RXCHR_Pos 0 247 #define US_RHR_RXCHR_Msk (0x1ffu << US_RHR_RXCHR_Pos) 248 #define US_RHR_RXSYNH (0x1u << 15) 250 #define US_THR_TXCHR_Pos 0 251 #define US_THR_TXCHR_Msk (0x1ffu << US_THR_TXCHR_Pos) 252 #define US_THR_TXCHR(value) ((US_THR_TXCHR_Msk & ((value) << US_THR_TXCHR_Pos))) 253 #define US_THR_TXSYNH (0x1u << 15) 255 #define US_BRGR_CD_Pos 0 256 #define US_BRGR_CD_Msk (0xffffu << US_BRGR_CD_Pos) 257 #define US_BRGR_CD(value) ((US_BRGR_CD_Msk & ((value) << US_BRGR_CD_Pos))) 258 #define US_BRGR_FP_Pos 16 259 #define US_BRGR_FP_Msk (0x7u << US_BRGR_FP_Pos) 260 #define US_BRGR_FP(value) ((US_BRGR_FP_Msk & ((value) << US_BRGR_FP_Pos))) 262 #define US_RTOR_TO_Pos 0 263 #define US_RTOR_TO_Msk (0xffffu << US_RTOR_TO_Pos) 264 #define US_RTOR_TO(value) ((US_RTOR_TO_Msk & ((value) << US_RTOR_TO_Pos))) 266 #define US_TTGR_TG_Pos 0 267 #define US_TTGR_TG_Msk (0xffu << US_TTGR_TG_Pos) 268 #define US_TTGR_TG(value) ((US_TTGR_TG_Msk & ((value) << US_TTGR_TG_Pos))) 270 #define US_FIDI_FI_DI_RATIO_Pos 0 271 #define US_FIDI_FI_DI_RATIO_Msk (0x7ffu << US_FIDI_FI_DI_RATIO_Pos) 272 #define US_FIDI_FI_DI_RATIO(value) ((US_FIDI_FI_DI_RATIO_Msk & ((value) << US_FIDI_FI_DI_RATIO_Pos))) 274 #define US_NER_NB_ERRORS_Pos 0 275 #define US_NER_NB_ERRORS_Msk (0xffu << US_NER_NB_ERRORS_Pos) 277 #define US_IF_IRDA_FILTER_Pos 0 278 #define US_IF_IRDA_FILTER_Msk (0xffu << US_IF_IRDA_FILTER_Pos) 279 #define US_IF_IRDA_FILTER(value) ((US_IF_IRDA_FILTER_Msk & ((value) << US_IF_IRDA_FILTER_Pos))) 281 #define US_MAN_TX_PL_Pos 0 282 #define US_MAN_TX_PL_Msk (0xfu << US_MAN_TX_PL_Pos) 283 #define US_MAN_TX_PL(value) ((US_MAN_TX_PL_Msk & ((value) << US_MAN_TX_PL_Pos))) 284 #define US_MAN_TX_PP_Pos 8 285 #define US_MAN_TX_PP_Msk (0x3u << US_MAN_TX_PP_Pos) 286 #define US_MAN_TX_PP_ALL_ONE (0x0u << 8) 287 #define US_MAN_TX_PP_ALL_ZERO (0x1u << 8) 288 #define US_MAN_TX_PP_ZERO_ONE (0x2u << 8) 289 #define US_MAN_TX_PP_ONE_ZERO (0x3u << 8) 290 #define US_MAN_TX_MPOL (0x1u << 12) 291 #define US_MAN_RX_PL_Pos 16 292 #define US_MAN_RX_PL_Msk (0xfu << US_MAN_RX_PL_Pos) 293 #define US_MAN_RX_PL(value) ((US_MAN_RX_PL_Msk & ((value) << US_MAN_RX_PL_Pos))) 294 #define US_MAN_RX_PP_Pos 24 295 #define US_MAN_RX_PP_Msk (0x3u << US_MAN_RX_PP_Pos) 296 #define US_MAN_RX_PP_ALL_ONE (0x0u << 24) 297 #define US_MAN_RX_PP_ALL_ZERO (0x1u << 24) 298 #define US_MAN_RX_PP_ZERO_ONE (0x2u << 24) 299 #define US_MAN_RX_PP_ONE_ZERO (0x3u << 24) 300 #define US_MAN_RX_MPOL (0x1u << 28) 301 #define US_MAN_STUCKTO1 (0x1u << 29) 302 #define US_MAN_DRIFT (0x1u << 30) 304 #define US_WPMR_WPEN (0x1u << 0) 305 #define US_WPMR_WPKEY_Pos 8 306 #define US_WPMR_WPKEY_Msk (0xffffffu << US_WPMR_WPKEY_Pos) 307 #define US_WPMR_WPKEY(value) ((US_WPMR_WPKEY_Msk & ((value) << US_WPMR_WPKEY_Pos))) 309 #define US_WPSR_WPVS (0x1u << 0) 310 #define US_WPSR_WPVSRC_Pos 8 311 #define US_WPSR_WPVSRC_Msk (0xffffu << US_WPSR_WPVSRC_Pos) 313 #define US_VERSION_VERSION_Pos 0 314 #define US_VERSION_VERSION_Msk (0xfffu << US_VERSION_VERSION_Pos) 315 #define US_VERSION_MFN_Pos 16 316 #define US_VERSION_MFN_Msk (0x7u << US_VERSION_MFN_Pos) 318 #define US_RPR_RXPTR_Pos 0 319 #define US_RPR_RXPTR_Msk (0xffffffffu << US_RPR_RXPTR_Pos) 320 #define US_RPR_RXPTR(value) ((US_RPR_RXPTR_Msk & ((value) << US_RPR_RXPTR_Pos))) 322 #define US_RCR_RXCTR_Pos 0 323 #define US_RCR_RXCTR_Msk (0xffffu << US_RCR_RXCTR_Pos) 324 #define US_RCR_RXCTR(value) ((US_RCR_RXCTR_Msk & ((value) << US_RCR_RXCTR_Pos))) 326 #define US_TPR_TXPTR_Pos 0 327 #define US_TPR_TXPTR_Msk (0xffffffffu << US_TPR_TXPTR_Pos) 328 #define US_TPR_TXPTR(value) ((US_TPR_TXPTR_Msk & ((value) << US_TPR_TXPTR_Pos))) 330 #define US_TCR_TXCTR_Pos 0 331 #define US_TCR_TXCTR_Msk (0xffffu << US_TCR_TXCTR_Pos) 332 #define US_TCR_TXCTR(value) ((US_TCR_TXCTR_Msk & ((value) << US_TCR_TXCTR_Pos))) 334 #define US_RNPR_RXNPTR_Pos 0 335 #define US_RNPR_RXNPTR_Msk (0xffffffffu << US_RNPR_RXNPTR_Pos) 336 #define US_RNPR_RXNPTR(value) ((US_RNPR_RXNPTR_Msk & ((value) << US_RNPR_RXNPTR_Pos))) 338 #define US_RNCR_RXNCTR_Pos 0 339 #define US_RNCR_RXNCTR_Msk (0xffffu << US_RNCR_RXNCTR_Pos) 340 #define US_RNCR_RXNCTR(value) ((US_RNCR_RXNCTR_Msk & ((value) << US_RNCR_RXNCTR_Pos))) 342 #define US_TNPR_TXNPTR_Pos 0 343 #define US_TNPR_TXNPTR_Msk (0xffffffffu << US_TNPR_TXNPTR_Pos) 344 #define US_TNPR_TXNPTR(value) ((US_TNPR_TXNPTR_Msk & ((value) << US_TNPR_TXNPTR_Pos))) 346 #define US_TNCR_TXNCTR_Pos 0 347 #define US_TNCR_TXNCTR_Msk (0xffffu << US_TNCR_TXNCTR_Pos) 348 #define US_TNCR_TXNCTR(value) ((US_TNCR_TXNCTR_Msk & ((value) << US_TNCR_TXNCTR_Pos))) 350 #define US_PTCR_RXTEN (0x1u << 0) 351 #define US_PTCR_RXTDIS (0x1u << 1) 352 #define US_PTCR_TXTEN (0x1u << 8) 353 #define US_PTCR_TXTDIS (0x1u << 9) 355 #define US_PTSR_RXTEN (0x1u << 0) 356 #define US_PTSR_TXTEN (0x1u << 8) volatile uint32_t RwReg
Definition: sam3n00a.h:54
volatile uint32_t WoReg
Definition: sam3n00a.h:53
Usart hardware registers.
Definition: component_usart.h:41
volatile const uint32_t RoReg
Definition: sam3n00a.h:49