636 lines
15 KiB
YAML
636 lines
15 KiB
YAML
---
|
|
block/USART:
|
|
description: Universal synchronous asynchronous receiver transmitter
|
|
items:
|
|
- name: CR1
|
|
description: Control register 1
|
|
byte_offset: 0
|
|
fieldset: CR1
|
|
- name: CR2
|
|
description: Control register 2
|
|
byte_offset: 4
|
|
fieldset: CR2
|
|
- name: CR3
|
|
description: Control register 3
|
|
byte_offset: 8
|
|
fieldset: CR3
|
|
- name: BRR
|
|
description: Baud rate register
|
|
byte_offset: 12
|
|
fieldset: BRR
|
|
- name: GTPR
|
|
description: Guard time and prescaler register
|
|
byte_offset: 16
|
|
fieldset: GTPR
|
|
- name: RTOR
|
|
description: Receiver timeout register
|
|
byte_offset: 20
|
|
fieldset: RTOR
|
|
- name: RQR
|
|
description: Request register
|
|
byte_offset: 24
|
|
access: Write
|
|
fieldset: RQR
|
|
- name: ISR
|
|
description: Interrupt & status register
|
|
byte_offset: 28
|
|
access: Read
|
|
fieldset: IXR
|
|
- name: ICR
|
|
description: Interrupt flag clear register
|
|
byte_offset: 32
|
|
access: Write
|
|
fieldset: IXR
|
|
- name: RDR
|
|
description: Receive data register
|
|
byte_offset: 36
|
|
access: Read
|
|
fieldset: DR
|
|
- name: TDR
|
|
description: Transmit data register
|
|
byte_offset: 40
|
|
access: Write
|
|
fieldset: DR
|
|
fieldset/BRR:
|
|
description: Baud rate register
|
|
fields:
|
|
- name: BRR
|
|
description: mantissa of USARTDIV
|
|
bit_offset: 0
|
|
bit_size: 16
|
|
fieldset/CR1:
|
|
description: Control register 1
|
|
fields:
|
|
- name: UE
|
|
description: USART enable
|
|
bit_offset: 0
|
|
bit_size: 1
|
|
- name: UESM
|
|
description: USART enable in Stop mode
|
|
bit_offset: 1
|
|
bit_size: 1
|
|
- name: RE
|
|
description: Receiver enable
|
|
bit_offset: 2
|
|
bit_size: 1
|
|
- name: TE
|
|
description: Transmitter enable
|
|
bit_offset: 3
|
|
bit_size: 1
|
|
- name: IDLEIE
|
|
description: IDLE interrupt enable
|
|
bit_offset: 4
|
|
bit_size: 1
|
|
- name: RXNEIE
|
|
description: RXNE interrupt enable
|
|
bit_offset: 5
|
|
bit_size: 1
|
|
- name: TCIE
|
|
description: Transmission complete interrupt enable
|
|
bit_offset: 6
|
|
bit_size: 1
|
|
- name: TXEIE
|
|
description: TXE interrupt enable
|
|
bit_offset: 7
|
|
bit_size: 1
|
|
- name: PEIE
|
|
description: PE interrupt enable
|
|
bit_offset: 8
|
|
bit_size: 1
|
|
- name: PS
|
|
description: Parity selection
|
|
bit_offset: 9
|
|
bit_size: 1
|
|
enum: PS
|
|
- name: PCE
|
|
description: Parity control enable
|
|
bit_offset: 10
|
|
bit_size: 1
|
|
- name: WAKE
|
|
description: Receiver wakeup method
|
|
bit_offset: 11
|
|
bit_size: 1
|
|
enum: WAKE
|
|
- name: M0
|
|
description: Word length
|
|
bit_offset: 12
|
|
bit_size: 1
|
|
enum: M0
|
|
- name: MME
|
|
description: Mute mode enable
|
|
bit_offset: 13
|
|
bit_size: 1
|
|
- name: CMIE
|
|
description: Character match interrupt enable
|
|
bit_offset: 14
|
|
bit_size: 1
|
|
- name: OVER
|
|
description: Oversampling mode
|
|
bit_offset: 15
|
|
bit_size: 1
|
|
array:
|
|
len: 1
|
|
stride: 0
|
|
enum: OVER
|
|
- name: DEDT
|
|
description: Driver Enable deassertion time
|
|
bit_offset: 16
|
|
bit_size: 5
|
|
- name: DEAT
|
|
description: Driver Enable assertion time
|
|
bit_offset: 21
|
|
bit_size: 5
|
|
- name: RTOIE
|
|
description: Receiver timeout interrupt enable
|
|
bit_offset: 26
|
|
bit_size: 1
|
|
- name: EOBIE
|
|
description: End of Block interrupt enable
|
|
bit_offset: 27
|
|
bit_size: 1
|
|
- name: M1
|
|
description: Word length
|
|
bit_offset: 28
|
|
bit_size: 1
|
|
enum: M1
|
|
fieldset/CR2:
|
|
description: Control register 2
|
|
fields:
|
|
- name: ADDM
|
|
description: 7-bit Address Detection/4-bit Address Detection
|
|
bit_offset: 4
|
|
bit_size: 1
|
|
array:
|
|
len: 1
|
|
stride: 0
|
|
enum: ADDM
|
|
- name: LBDL
|
|
description: Line break detection length
|
|
bit_offset: 5
|
|
bit_size: 1
|
|
enum: LBDL
|
|
- name: LBDIE
|
|
description: LIN break detection interrupt enable
|
|
bit_offset: 6
|
|
bit_size: 1
|
|
- name: LBCL
|
|
description: Last bit clock pulse
|
|
bit_offset: 8
|
|
bit_size: 1
|
|
- name: CPHA
|
|
description: Clock phase
|
|
bit_offset: 9
|
|
bit_size: 1
|
|
enum: CPHA
|
|
- name: CPOL
|
|
description: Clock polarity
|
|
bit_offset: 10
|
|
bit_size: 1
|
|
enum: CPOL
|
|
- name: CLKEN
|
|
description: Clock enable
|
|
bit_offset: 11
|
|
bit_size: 1
|
|
- name: STOP
|
|
description: STOP bits
|
|
bit_offset: 12
|
|
bit_size: 2
|
|
enum: STOP
|
|
- name: LINEN
|
|
description: LIN mode enable
|
|
bit_offset: 14
|
|
bit_size: 1
|
|
- name: SWAP
|
|
description: Swap TX/RX pins
|
|
bit_offset: 15
|
|
bit_size: 1
|
|
- name: RXINV
|
|
description: RX pin active level inversion
|
|
bit_offset: 16
|
|
bit_size: 1
|
|
- name: TXINV
|
|
description: TX pin active level inversion
|
|
bit_offset: 17
|
|
bit_size: 1
|
|
- name: DATAINV
|
|
description: Binary data inversion
|
|
bit_offset: 18
|
|
bit_size: 1
|
|
- name: MSBFIRST
|
|
description: Most significant bit first
|
|
bit_offset: 19
|
|
bit_size: 1
|
|
enum: MSBFIRST
|
|
- name: ABREN
|
|
description: Auto baud rate enable
|
|
bit_offset: 20
|
|
bit_size: 1
|
|
- name: ABRMOD
|
|
description: Auto baud rate mode
|
|
bit_offset: 21
|
|
bit_size: 2
|
|
enum: ABRMOD
|
|
- name: RTOEN
|
|
description: Receiver timeout enable
|
|
bit_offset: 23
|
|
bit_size: 1
|
|
- name: ADD
|
|
description: Address of the USART node
|
|
bit_offset: 24
|
|
bit_size: 8
|
|
fieldset/CR3:
|
|
description: Control register 3
|
|
fields:
|
|
- name: EIE
|
|
description: Error interrupt enable
|
|
bit_offset: 0
|
|
bit_size: 1
|
|
- name: IREN
|
|
description: IrDA mode enable
|
|
bit_offset: 1
|
|
bit_size: 1
|
|
- name: IRLP
|
|
description: IrDA low-power
|
|
bit_offset: 2
|
|
bit_size: 1
|
|
enum: IRLP
|
|
- name: HDSEL
|
|
description: Half-duplex selection
|
|
bit_offset: 3
|
|
bit_size: 1
|
|
- name: NACK
|
|
description: Smartcard NACK enable
|
|
bit_offset: 4
|
|
bit_size: 1
|
|
- name: SCEN
|
|
description: Smartcard mode enable
|
|
bit_offset: 5
|
|
bit_size: 1
|
|
- name: DMAR
|
|
description: DMA enable receiver
|
|
bit_offset: 6
|
|
bit_size: 1
|
|
- name: DMAT
|
|
description: DMA enable transmitter
|
|
bit_offset: 7
|
|
bit_size: 1
|
|
- name: RTSE
|
|
description: RTS enable
|
|
bit_offset: 8
|
|
bit_size: 1
|
|
- name: CTSE
|
|
description: CTS enable
|
|
bit_offset: 9
|
|
bit_size: 1
|
|
- name: CTSIE
|
|
description: CTS interrupt enable
|
|
bit_offset: 10
|
|
bit_size: 1
|
|
- name: ONEBIT
|
|
description: One sample bit method enable
|
|
bit_offset: 11
|
|
bit_size: 1
|
|
enum: ONEBIT
|
|
- name: OVRDIS
|
|
description: Overrun Disable
|
|
bit_offset: 12
|
|
bit_size: 1
|
|
- name: DDRE
|
|
description: DMA Disable on Reception Error
|
|
bit_offset: 13
|
|
bit_size: 1
|
|
- name: DEM
|
|
description: Driver enable mode
|
|
bit_offset: 14
|
|
bit_size: 1
|
|
- name: DEP
|
|
description: Driver enable polarity selection
|
|
bit_offset: 15
|
|
bit_size: 1
|
|
enum: DEP
|
|
- name: SCARCNT
|
|
description: Smartcard auto-retry count
|
|
bit_offset: 17
|
|
bit_size: 3
|
|
- name: WUS
|
|
description: Wakeup from Stop mode interrupt flag selection
|
|
bit_offset: 20
|
|
bit_size: 2
|
|
enum: WUS
|
|
- name: WUFIE
|
|
description: Wakeup from Stop mode interrupt enable
|
|
bit_offset: 22
|
|
bit_size: 1
|
|
fieldset/DR:
|
|
description: Data register
|
|
fields:
|
|
- name: DR
|
|
description: Data value
|
|
bit_offset: 0
|
|
bit_size: 9
|
|
fieldset/GTPR:
|
|
description: Guard time and prescaler register
|
|
fields:
|
|
- name: PSC
|
|
description: Prescaler value
|
|
bit_offset: 0
|
|
bit_size: 8
|
|
- name: GT
|
|
description: Guard time value
|
|
bit_offset: 8
|
|
bit_size: 8
|
|
fieldset/IXR:
|
|
description: Interrupt & status register
|
|
fields:
|
|
- name: PE
|
|
description: Parity error
|
|
bit_offset: 0
|
|
bit_size: 1
|
|
- name: FE
|
|
description: Framing error
|
|
bit_offset: 1
|
|
bit_size: 1
|
|
- name: NE
|
|
description: Noise error flag
|
|
bit_offset: 2
|
|
bit_size: 1
|
|
- name: ORE
|
|
description: Overrun error
|
|
bit_offset: 3
|
|
bit_size: 1
|
|
- name: IDLE
|
|
description: Idle line detected
|
|
bit_offset: 4
|
|
bit_size: 1
|
|
- name: RXNE
|
|
description: Read data register not empty
|
|
bit_offset: 5
|
|
bit_size: 1
|
|
- name: TC
|
|
description: Transmission complete
|
|
bit_offset: 6
|
|
bit_size: 1
|
|
- name: TXE
|
|
description: Transmit data register empty
|
|
bit_offset: 7
|
|
bit_size: 1
|
|
- name: LBD
|
|
description: LIN break detection flag
|
|
bit_offset: 8
|
|
bit_size: 1
|
|
- name: CTSIF
|
|
description: CTS interrupt flag
|
|
bit_offset: 9
|
|
bit_size: 1
|
|
- name: CTS
|
|
description: CTS flag
|
|
bit_offset: 10
|
|
bit_size: 1
|
|
- name: RTOF
|
|
description: Receiver timeout
|
|
bit_offset: 11
|
|
bit_size: 1
|
|
- name: EOBF
|
|
description: End of block flag
|
|
bit_offset: 12
|
|
bit_size: 1
|
|
- name: ABRE
|
|
description: Auto baud rate error
|
|
bit_offset: 14
|
|
bit_size: 1
|
|
- name: ABRF
|
|
description: Auto baud rate flag
|
|
bit_offset: 15
|
|
bit_size: 1
|
|
- name: BUSY
|
|
description: Busy flag
|
|
bit_offset: 16
|
|
bit_size: 1
|
|
- name: CMF
|
|
description: character match flag
|
|
bit_offset: 17
|
|
bit_size: 1
|
|
- name: SBKF
|
|
description: Send break flag
|
|
bit_offset: 18
|
|
bit_size: 1
|
|
- name: RWU
|
|
description: Receiver wakeup from Mute mode
|
|
bit_offset: 19
|
|
bit_size: 1
|
|
enum: RWU
|
|
- name: WUF
|
|
description: Wakeup from Stop mode flag
|
|
bit_offset: 20
|
|
bit_size: 1
|
|
- name: TEACK
|
|
description: Transmit enable acknowledge flag
|
|
bit_offset: 21
|
|
bit_size: 1
|
|
- name: REACK
|
|
description: Receive enable acknowledge flag
|
|
bit_offset: 22
|
|
bit_size: 1
|
|
fieldset/RQR:
|
|
description: Request register
|
|
fields:
|
|
- name: ABRRQ
|
|
description: Auto baud rate request. Resets the ABRF flag in the USART_ISR and request an automatic baud rate measurement on the next received data frame.
|
|
bit_offset: 0
|
|
bit_size: 1
|
|
- name: SBKRQ
|
|
description: "Send break request. Sets the SBKF flag and request to send a BREAK on the line, as soon as the transmit machine is available"
|
|
bit_offset: 1
|
|
bit_size: 1
|
|
- name: MMRQ
|
|
description: Mute mode request. Puts the USART in mute mode and sets the RWU flag.
|
|
bit_offset: 2
|
|
bit_size: 1
|
|
- name: RXFRQ
|
|
description: "Receive data flush request. Clears the RXNE flag. This allows to discard the received data without reading it, and avoid an overrun condition"
|
|
bit_offset: 3
|
|
bit_size: 1
|
|
- name: TXFRQ
|
|
description: Transmit data flush request. Sets the TXE flags. This allows to discard the transmit data.
|
|
bit_offset: 4
|
|
bit_size: 1
|
|
fieldset/RTOR:
|
|
description: Receiver timeout register
|
|
fields:
|
|
- name: RTO
|
|
description: Receiver timeout value
|
|
bit_offset: 0
|
|
bit_size: 24
|
|
- name: BLEN
|
|
description: Block Length
|
|
bit_offset: 24
|
|
bit_size: 8
|
|
enum/ABRMOD:
|
|
bit_size: 2
|
|
variants:
|
|
- name: Start
|
|
description: Measurement of the start bit is used to detect the baud rate
|
|
value: 0
|
|
- name: Edge
|
|
description: Falling edge to falling edge measurement
|
|
value: 1
|
|
- name: Frame7F
|
|
description: "0x7F frame detection"
|
|
value: 2
|
|
- name: Frame55
|
|
description: "0x55 frame detection"
|
|
value: 3
|
|
enum/ADDM:
|
|
bit_size: 1
|
|
variants:
|
|
- name: Bit4
|
|
description: 4-bit address detection
|
|
value: 0
|
|
- name: Bit7
|
|
description: 7-bit address detection
|
|
value: 1
|
|
enum/CPHA:
|
|
bit_size: 1
|
|
variants:
|
|
- name: First
|
|
description: The first clock transition is the first data capture edge
|
|
value: 0
|
|
- name: Second
|
|
description: The second clock transition is the first data capture edge
|
|
value: 1
|
|
enum/CPOL:
|
|
bit_size: 1
|
|
variants:
|
|
- name: Low
|
|
description: Steady low value on CK pin outside transmission window
|
|
value: 0
|
|
- name: High
|
|
description: Steady high value on CK pin outside transmission window
|
|
value: 1
|
|
enum/DEP:
|
|
bit_size: 1
|
|
variants:
|
|
- name: High
|
|
description: DE signal is active high
|
|
value: 0
|
|
- name: Low
|
|
description: DE signal is active low
|
|
value: 1
|
|
enum/IRLP:
|
|
bit_size: 1
|
|
variants:
|
|
- name: Normal
|
|
description: Normal mode
|
|
value: 0
|
|
- name: LowPower
|
|
description: Low-power mode
|
|
value: 1
|
|
enum/LBDL:
|
|
bit_size: 1
|
|
variants:
|
|
- name: Bit10
|
|
description: 10-bit break detection
|
|
value: 0
|
|
- name: Bit11
|
|
description: 11-bit break detection
|
|
value: 1
|
|
enum/M0:
|
|
bit_size: 1
|
|
variants:
|
|
- name: Bit8
|
|
description: "1 start bit, 8 data bits, n stop bits"
|
|
value: 0
|
|
- name: Bit9
|
|
description: "1 start bit, 9 data bits, n stop bits"
|
|
value: 1
|
|
enum/M1:
|
|
bit_size: 1
|
|
variants:
|
|
- name: M0
|
|
description: Use M0 to set the data bits
|
|
value: 0
|
|
- name: Bit7
|
|
description: "1 start bit, 7 data bits, n stop bits"
|
|
value: 1
|
|
enum/MSBFIRST:
|
|
bit_size: 1
|
|
variants:
|
|
- name: LSB
|
|
description: "data is transmitted/received with data bit 0 first, following the start bit"
|
|
value: 0
|
|
- name: MSB
|
|
description: "data is transmitted/received with MSB (bit 7/8/9) first, following the start bit"
|
|
value: 1
|
|
enum/ONEBIT:
|
|
bit_size: 1
|
|
variants:
|
|
- name: Sample3
|
|
description: Three sample bit method
|
|
value: 0
|
|
- name: Sample1
|
|
description: One sample bit method
|
|
value: 1
|
|
enum/OVER:
|
|
bit_size: 1
|
|
variants:
|
|
- name: Oversampling16
|
|
description: Oversampling by 16
|
|
value: 0
|
|
- name: Oversampling8
|
|
description: Oversampling by 8
|
|
value: 1
|
|
enum/PS:
|
|
bit_size: 1
|
|
variants:
|
|
- name: Even
|
|
description: Even parity
|
|
value: 0
|
|
- name: Odd
|
|
description: Odd parity
|
|
value: 1
|
|
enum/RWU:
|
|
bit_size: 1
|
|
variants:
|
|
- name: Active
|
|
description: Receiver in active mode
|
|
value: 0
|
|
- name: Mute
|
|
description: Receiver in mute mode
|
|
value: 1
|
|
enum/STOP:
|
|
bit_size: 2
|
|
variants:
|
|
- name: Stop1
|
|
description: 1 stop bit
|
|
value: 0
|
|
- name: Stop0p5
|
|
description: 0.5 stop bit
|
|
value: 1
|
|
- name: Stop2
|
|
description: 2 stop bit
|
|
value: 2
|
|
- name: Stop1p5
|
|
description: 1.5 stop bit
|
|
value: 3
|
|
enum/WAKE:
|
|
bit_size: 1
|
|
variants:
|
|
- name: IdleLine
|
|
description: USART wakeup on idle line
|
|
value: 0
|
|
- name: AddressMark
|
|
description: USART wakeup on address mark
|
|
value: 1
|
|
enum/WUS:
|
|
bit_size: 2
|
|
variants:
|
|
- name: Address
|
|
description: WUF active on address match
|
|
value: 0
|
|
- name: Start
|
|
description: WuF active on Start bit detection
|
|
value: 2
|
|
- name: RXNE
|
|
description: WUF active on RXNE
|
|
value: 3
|