HALFRED  0.4.0
IO module

Introduction.

The IO module is responsible for handling communication through several common peripherals, such as UART or SPI. It provides a unified high-level application interface for different devices and is capable of working in several modes, taking advantage of additional microcontroler's mechanisms, such as interrupts or DMA channels. The IO module interface is flexible enough to handle most of the common data transmission tasks, but may be also used and abused in different areas of application.

IO Interfaces.

The main IO interface that the application interacts with is the IODevice interface. This interface encapsulates all the functionality provided by the IO module.

The TXTDevice interface sits on top of the IODevice interface. It provides functions for easier handling of textual information sent and received through IODevices.

Porting HAL IO.

TBD

Module configuration.

To enable the IO module, HAL_ENABLE_IO definition must be set to 1, in hal_config.h. Additional definitions may be required to enable specific modes of operation for specific ports, or other options. Refer to the port documentation.