Задать вопрос
@Fitter1990
Ленивый программист, бизнес-аналитик :)

Как передавать данные из игры/в игру на микроконтроллер?

Добрый день.

Не подскажете как можно организовать ввод-вывод информации из компьютерной игры на микроконтроллер?
Допустим, есть некий авиасимулятор, хотелось бы попробовать собрать приборную панель.
Что можно почитать, чтобы разобраться как это организовать?
Заранее всем ответившим спасибо.
  • Вопрос задан
  • 494 просмотра
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
@koronabora
Человек
Использовать MK c подключением по usb и com портом. Подключаем плату, получаем com порт в системе. Далее, самое простое - чтобы MK сам сыпал в com порт раз в 10 мс, или так быстро, как он может, состояния датчиков (все равно это будет считывание данных с АЦП). А программа на компе уже сама будет парсить данные, сглаживать значения и вносить изменения в работу игры на компе.

При использовании Arduino, например, нужно понимать что у него АЦП 10 бит и все возможные значения могут быть от 0 до 1023. Также, нужно учитывать что бывает много помех и всегда нужно фильтровать данные с АЦП хотя-бы скользящей средней или более продвинутыми фильтрами (т.к. фильтры будут срезать "мельтешения", у которых частота выше нежели у полезного сигнала). А фильтрация - это задержка. А для ввода, задержка больше 100мс - уже фатальна.

Также, отдельная задача - как грамотно подключить к АЦП руль, например (это делается просто при помощи переменного резистора высокого качества) или кнопки (при помощи концевых выключателей или пьезовыключателей). Просто подключить - легко, а вот как сделать так, чтобы наводки не влияли, а также чтобы со временем не сбивались показания - это большая наука.
Ответ написан
Комментировать
@evgeniy_lm
Есть два варианта
1. Использовать API игры, если есть
2. Ковырять память игры, писать драйвер с прямым доступом к необходимой памяти. Задача не тривиальная, можно попробовать использовать ArtMoney для поиска нужных параметров, но не факт, но не факт что получится
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы