#pragma once #include "config.hpp" namespace uart { enum class Mode { ASYNCHRONOUS, ASYNCHRONOUS_2X, SYNCHRONOUS_MASTER, SYNCHRONOUS_SLAVE, SPI, }; template class hardware0 { public: using data_t = typename config::data_t; static constexpr auto DATA_BITS = config::DATA_BITS; static void init() {} static void txByte(data_t byte) { static_cast(byte); } static data_t rxByte() {} static data_t peek() {} private: static constexpr auto BAUD_RATE = config::BAUD_RATE; static constexpr auto PARITY = config::PARITY; static constexpr auto STOP_BITS = config::STOP_BITS; }; } // namespace uart