5.1.7.2.2. Functional Requirements
The system must enable the clock using the RCC register. |
The system should allow the usage of different USART peripherals. |
The system must ensure that the USART peripheral is enabled by setting the bits in the USART_CR1 register for operation. |
The USART module must initialize both the receiver (RX) and transmitter (TX) pins to the input or output configuration. |
The USART module must configure pins for alternate functions. |
The system must allow the user to choose between USART modes. |
The system must be able to choose between types of oversampling. |
The system must allow the selection of baud rate for communication. |
The system must allow enabling data sending using CR1. |
The system must check if the Transmit Data Register is empty and ready to receive a byte for transfer. |
The system must allow checking if the data transmission is completed using DR. |
The system must allow receiving data using CR1. |
The system must allow reception of one byte of data at a time through USART by reading from the data register. |
The system must check if the byte of data is available on the data register. |
The system must ensure that the transmitted and received data remains uncorrupted. |
The USART must synchronize with the system clock or external clock source. |
The system should allow simultaneous communication with multiple external devices. |
The USART configuration must be configurable through software. |