XMEGA USART register definitions. More...
#include <io.h>Go to the source code of this file.
Defines | |
Register Offsets | |
| #define | USART_DATA 0x00 |
| TX/RX Data Register. | |
| #define | USART_STATUS 0x01 |
| Status Register. | |
| #define | USART_CTRLA 0x03 |
| Control Register A. | |
| #define | USART_CTRLB 0x04 |
| Control Register B. | |
| #define | USART_CTRLC 0x05 |
| Control Register C. | |
| #define | USART_BAUDCTRLA 0x06 |
| Baud Rate Register A. | |
| #define | USART_BAUDCTRLB 0x07 |
| Baud Rate Register B. | |
STATUS register bits | |
| #define | USART_RXB8_BIT 0 |
| Receive Bit 8. | |
| #define | USART_PERR_BIT 2 |
| Parity Error. | |
| #define | USART_BUFOVF_BIT 3 |
| Buffer Overflow. | |
| #define | USART_FERR_BIT 4 |
| Frame Error. | |
| #define | USART_DREIF_BIT 5 |
| Data Register Empty. | |
| #define | USART_TXCIF_BIT 6 |
| Transmit Complete. | |
| #define | USART_RXCIF_BIT 7 |
| Receive Complete. | |
CTRLA register bits | |
| #define | USART_DREINTLVL_START 0 |
| Data Reg Empty Interrupt Level. | |
| #define | USART_DREINTLVL_SIZE 2 |
| Data Reg Empty Interrupt Level. | |
| #define | USART_TXCINTLVL_START 2 |
| TX Complete Interrupt Level. | |
| #define | USART_TXCINTLVL_SIZE 2 |
| TX Complete Interrupt Level. | |
| #define | USART_RXCINTLVL_START 4 |
| RX Complete Interrupt Level. | |
| #define | USART_RXCINTLVL_SIZE 2 |
| RX Complete Interrupt Level. | |
CTRLB register bits | |
| #define | USART_TXB8_BIT 0 |
| Transmit Bit 8. | |
| #define | USART_MPCM_BIT 1 |
| Multi-processor Communication Mode. | |
| #define | USART_CLK2X_BIT 2 |
| Double Transmission Speed. | |
| #define | USART_TXEN_BIT 3 |
| Transmitter Enable. | |
| #define | USART_RXEN_BIT 4 |
| Receiver Enable. | |
CTRLC register bits | |
| #define | USART_CHSIZE_START 0 |
| Character Size. | |
| #define | USART_CHSIZE_SIZE 3 |
| Character Size. | |
| #define | USART_SBMODE_START 3 |
| Stop Bit Mode. | |
| #define | USART_SBMODE_SIZE 1 |
| Stop Bit Mode. | |
| #define | USART_PMODE_START 4 |
| Parity Mode. | |
| #define | USART_PMODE_SIZE 2 |
| Parity Mode. | |
| #define | USART_CMODE_START 6 |
| Communication Mode. | |
| #define | USART_CMODE_SIZE 2 |
| Communication Mode. | |
BAUDCTRLB register bits | |
| #define | USART_BSELB_START 0 |
| Baud Rate bits 8..11. | |
| #define | USART_BSELB_SIZE 4 |
| Baud Rate bits 8..11. | |
| #define | USART_BSCALE_START 4 |
| Baud Rate Scale factor. | |
| #define | USART_BSCALE_SIZE 4 |
| Baud Rate Scale factor. | |
Bit manipulation macros | |
| #define | USART_BIT(name) (1U << USART_##name##_BIT) |
| Create a mask with bit name set. | |
| #define | USART_BF(name, value) ((value) << USART_##name##_START) |
| Create a mask with bitfield name set to value. | |
| #define | USART_BFEXT(name, regval) |
| Extract the value of bitfield name from regval. | |
| #define | USART_BFINS(name, value, regval) |
| Return regval with bitfield name set to value. | |
Register access macros | |
| #define | usart_read_reg(usart, reg) mmio_read8((void *)((uintptr_t)(usart) + USART_##reg)) |
| Read the value of reg on usart. | |
| #define | usart_write_reg(usart, reg, value) mmio_write8((void *)((uintptr_t)(usart) + USART_##reg), value) |
| Write value to reg on usart. | |
XMEGA USART register definitions.
Copyright (C) 2009 Atmel Corporation. All rights reserved.
Definition in file xmega_usart.h.
1.6.3