#pragma once #include #include #include "Assembly.h" class Gpio { public: Gpio() noexcept; void apply(AssemblyContext ctx); private: static constexpr unsigned SIZE {24}; std::array mode_of; std::array value_of; void set_mode(const unsigned port, const short mode); void write(const unsigned port, const short value); short read(const unsigned port) const; };