5.1.6.2.1. Informational requirements

Requirement: label REQ_INT3_1732783938 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

USART is used for serial communication between two devices.

Requirement: label REQ_INT3_1732785337 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

The functionality of the USART includes mode of operation such as data transmission and reception

Requirement: label REQ_INT3_1732785381 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

The functionality of the USART includes mode of operation such as controlling transmission speed.

Requirement: label REQ_INT3_1732785452 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

The functionality of the USART includes mode of operation such as operating modes(synchronous and asynchronous).

Requirement: label REQ_INT3_1732785522 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

The functionality of the USART includes modes of operation such as additional flow control and error detection failures.

Requirement: label REQ_INT3_1732785580 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

Transmitter is sending data

Requirement: label REQ_INT3_1732785686 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

Receiever is recieving data

Requirement: label REQ_INT3_1732785721 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

Control register are used to configure parameters such as baud rate, operating mode and parity.

Requirement: label REQ_INT3_1732785783 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

USART is used to support asynchronous and synchronous operation modes

Requirement: label REQ_INT3_1732785864 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

USART has configurable baud rate for flexible communication speed

Requirement: label REQ_INT3_1732786316 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

Baud rate is the measure of the number of changes to the signal (per second) that propagate through a transmission medium.

Requirement: label REQ_INT3_1732785935 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

USART has configurable data size(8-bit, 9-bit).

Requirement: label REQ_INT3_1732797208 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

Odd parity means that the total number of 1s in the data should always be odd number, if bit is corrupted during transmission, the parity check will fail.

Requirement: label REQ_INT3_1732797345 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

Even parity means that the total number of 1s must always be an even number, if the data is recieved and the total number of 1s is not even, this indicates an error during transmission.

Requirement: label REQ_INT3_1732794782 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

USART provides even parity control for error detection

Requirement: label REQ_INT3_1732786086 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

USART provides support for Direct Memory Access, speeding up data transmission.

Requirement: label REQ_INT3_1732786173 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

Single-wire Half-duplex uses one pin for both data transmission and reception

Requirement: label REQ_INT3_1732786486 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

STM32F411 supports USART1 which is connected to APB2 bus and uses pins PA9 (TX) and PA10 (RX)

Requirement: label REQ_INT3_1732786595 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

STM32F411 supports USART2 connected to the APB1 bus and uses pins PA2 (TX) and PA3 (RX).

Requirement: label REQ_INT3_1732786700 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

STM32F411 supports USART6 connected to APB2 bus and uses pins PC6 (TX) and PC7 (RX).

Requirement: label REQ_INT3_1732786813 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

USART has two modes: asynchronous mode and synchronous mode

Requirement: label REQ_INT3_1732787036 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

In asynchronous mode start and stop bits are used to mark the beginning and end of a data packet

Requirement: label REQ_INT3_1732787558 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

Formula for Baud Rate = fPLCK / (8*(2 - OVER8) * USARTDIV) where FPLCK=Clock frequency, OVER8=Oversampling configuration, USARTDIV=Value in the BRR register.

Requirement: label REQ_INT3_1732787756 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

In USART the baud rate is controlled using the Baud Rate Register.

Requirement: label REQ_INT3_1732787805 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

The baud rate depends on the peripheral clock frequency (fPCLK) and the configuration of the USART peripheral.

Requirement: label REQ_INT3_1732787864 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

The oversampling factor (OVER8) can be adjusted to control the precision and speed of data transmission.

Requirement: label REQ_INT3_1732787935 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

16x oversampling provides more stable signal

Requirement: label REQ_INT3_1732787989 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

8x oversampling provides faster data transmission, but with potential loss in accuracy.

Requirement: label REQ_INT3_1732788084 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

The CR1 is a critical regiter used to configure Baud Rate, Data bits, Stop bits, Parity, Mode of communication for USART communication.

Requirement: label REQ_INT3_1732795059 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

Basic parameters for USART communication are: Baud Rate, Word lenght, Stop bits, Parity, Flow Control, Oversampling

Requirement: label REQ_INT3_1732788145 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

UE (Usart Enable) bit enables or disables the USART peripheral

Requirement: label REQ_INT3_1732788245 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

TE (Transmitter Enable) bit enables or disables data transmission through the USART

Requirement: label REQ_INT3_1732788324 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

RE (Reciever Enable) bit enables or disables data reception through the USART

Requirement: label REQ_INT3_1732788446 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

Oversampling refers to taking multiple samples of the data during a single bit cycle to improve the accuracy in data reception.

Requirement: label REQ_INT3_1732796410 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

USART1 uses AF1, AF4 and AF7

Requirement: label REQ_INT3_1732796534 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

USART2 uses AF1, AF4 and AF7

Requirement: label REQ_INT3_1732796573 ../../../../../_images/arrow-right-circle.svg
status: Draft
style: red_bar
category: Informational
priority: Low

USART6 uses AF5, AF8 and AF11