Skip to content

xflyingcat/xflyinglib

Repository files navigation

XflyingLib

Русский | English


Русский

XflyingLib — Arduino библиотека для устройств кабины авиасимулятора. Используется при написании скетчей для плат Arduino при создании аппаратных модулей кокпита.

Состав библиотеки

  • LinkLevel — отвечает за связь с симулятором по протоколу xflyingcat.
  • DiscreteInputs — вырабатывает события органов управления (кнопки, переключатели, тумблеры).
  • DiscreteOutputs — управляет дискретными органами индикации (светодиодами).
  • GreyEncoder — вырабатывает события энкодеров. Поддерживает FULL, HALF и QUARTER энкодеры.
  • MatrixKeypad — вырабатывает события органов управления, подключенных к узлам проводной матрицы.
  • Max7219Display — управляет числовым выводом в модульные индикаторы на микросхемах MAX7219.
  • StepperGauges — управляет числовым выводом в указатели на шаговых двигателях. Поддерживаются секторные, курсовые и приборы часового типа.
  • ServiceKeypad — вырабатывает события служебных кнопок (нажатие, отпускание, долгое удержание) в целях юстировки приборов и изменения режимов работы.
  • CommandCom — консольный командный интерпретатор, использующий концепцию argc/argv для целей настройки и калибровки. Возможно попеременное использование единственного канала связи плагином и терминалом.
  • Scheduler — это не класс, это рекомендуемый каркас планировщика (карусели тайм-слотов) для периодических вызовов методов других классов.

English

XflyingLib — An Arduino library designed for flight simulator cockpit hardware modules.

Library Components

  • LinkLevel — Handles communication with the flight simulator using the xflyingcat protocol definition.
  • DiscreteInputs — Generates execution events for physical control inputs (tactile buttons, toggle switches).
  • DiscreteOutputs — Drives individual discrete indication hardware elements (status LEDs).
  • GreyEncoder — Decodes rotary encoder signals. Supports FULL, HALF, and QUARTER cycle quadrature hardware profiles.
  • MatrixKeypad — Processes button presses routed through a wired matrix diode grid array.
  • Max7219Display — Manages segmented numerical readouts mapped to chained MAX7219 driver modules.
  • StepperGauges — Controls analog instrument pointers driven by stepper motors. Natively supports sector-limited, endless circular (heading), and multi-turn (chronometric) movement dynamics.
  • ServiceKeypad — Tracks secondary maintenance/service key interactions (press, release, long hold) for instrument zero calibration and operational mode switching.
  • CommandCom — A modular console command interpreter utilizing standard argc/argv token parsing patterns for runtime calibration. Allows transparent shared multiplexing of a single serial pipeline between the simulator plugin and a diagnostic terminal interface.
  • Scheduler — Not an implementation class, but a recommended cooperative task-scheduling framework layout designed to evenly balance periodic method execution constraints.

About

Arduino library for flight simulator cockpit hardware modules

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors