Как я Spektrum и Hitec пытался подружить (часть 2)

Продолжение предыдущего поста: https://pikabu.ru/story/kak_ya_spektrum_s_hitec_pyitalsya_po...

Продолжаю мучать старую аппаратуру. С наскока не получилось, решено было проверить а работает ли вообще порт тренера на спектруме. Вчера удалось встретиться с другом, у которого в загашнике такой-же передатчик - соединили проводом, проверили, работает. Думаем дальше и ругаем по чем зря отсутствие стандарта...

После недолгих раздумий решено было отладить работу тренера с помощью микроконтроллера, тем более что в случае удачи он все равно нужен чтобы сменить порядок каналов (эти передатчики далеки от современных в плане программных функций).

Как я Spektrum и Hitec пытался подружить (часть 2) Arduino, Радиоуправление, Электроника, Хобби, Радиоуправляемые модели, Длиннопост

Открыл коробочку с всяким МК барахлом, и первое что увидел - на плате программатора нет чипа USB-uart :( а паяльную станцию я продал года 3 назад. Хорошо что есть друзья электронщики! Пересадили чип с переходника,вроде работает.

Как я Spektrum и Hitec пытался подружить (часть 2) Arduino, Радиоуправление, Электроника, Хобби, Радиоуправляемые модели, Длиннопост

За программатором из коробки показалась отладочная плата на atmega16.

Как я Spektrum и Hitec пытался подружить (часть 2) Arduino, Радиоуправление, Электроника, Хобби, Радиоуправляемые модели, Длиннопост

Что я на ней ваял в прошлый раз я совершенно не помню, но прошить тестовой прошивкой не удалось... И вроде фузы правильные, но не получилось. Беда. Да и к тому же за годы совершенно потерялся скилл написания кода под МК - вот прям смотрю в свой код и не понимаю что к чему 0_0.

Плюнул на все - купил ардуинку нано. Язык проще, среда разработки легче, да и прошивается сама, без программатора. Вещь короче, зря так долго игнорировал этот проект.

Как я Spektrum и Hitec пытался подружить (часть 2) Arduino, Радиоуправление, Электроника, Хобби, Радиоуправляемые модели, Длиннопост

За основу кода взял сначала проект под названием USB-joy. Кому интересно дам ссылки в комментариях, не знаю можно ли в посте их выкладывать.
Суть проста - 4 по енциометра на аналоговые входы ардуины -> читаем значения от 0 до 1023, преобразуем в значения от 1000 до 2000, вычитаем длительность импульса синхронизации (300-400мкс) и из этого формируем фрейм. Картинки как это выглядит есть в предыдущем посте. В общем собрал по быстрому, прошил, подключил - есть контакт! Сервы шевелятся, только почему-то все сразу. Разбираться не стал - важен был сам принцип.

Как я Spektrum и Hitec пытался подружить (часть 2) Arduino, Радиоуправление, Электроника, Хобби, Радиоуправляемые модели, Длиннопост

Интересно то, что осциллограмма такая-же, но ардуину Спектрум видит, а второй передатчик нет. Разница оказалась в том, что ... Тадам!... Спектруму нужно минимум 6 каналов на вход, а хайтек отдает только 5! Ларчик просто открывался :)

В общем задача оказалась совсем простой:
1) прочитать ппм с хайтека и разложить по каналам
2) поменять порядок каналов
3) доклеить как минимум ещё 1 канал
4) отправить новый фрейм на выход.

С теорией разобрались, осталось код написать да макет замакетить. Ближе к вечеру распишу что и как вышло.

Как я Spektrum и Hitec пытался подружить (часть 2) Arduino, Радиоуправление, Электроника, Хобби, Радиоуправляемые модели, Длиннопост

Зы: товарищи, а на гитхаб ссылки можно оставлять? Не хочется кучу кода в пост вставлять...

Автор поста оценил этот комментарий

Подскажите-что за ослик на нижнем снимке?

раскрыть ветку