Самодельный передатчик (часть 2)
Вчера пробовал Мегу8 прошить, прошилась, но считать потом не смог, вылезла та-же самая ошибка, что и с этой мегой
А можно взглянуть фото Меги8 с подключенным к ней программатором? И/или платы кодера, подключенной к программатору?
С виду нормально.
У меня хвост примерно такой же длины (может, длиннее на три-пять сантиметров; из МГТФ-0,35). Иногда бывают чудеса - с виду все нормально, но верификация после прошивки не проходит. Лечится перекладкой хвоста над другими областями программируемого/отлаживаемого дивайса.
ещё бы попробовать шить с другого компа, и иметь подрукой тактовый сигнал на всяк случай (мне часто помогает когда чтото не то твориться с камнем)
А попробуйте на другом компе и другим прогером.
Если есть ком порт то соберите простейший прогер.
Я таким пользуюсь и прогой понипрог еще не разу не подводил.
Если будете шить прям в схеме то все что связанно с кренкой можно смело выкинуть.
Только если с понькой не работали, то там фьюзы вроде по другому ставятся чем в некоторых других прогах.
Но для поньки можно тут взять фьюзы fusecalc.mirmk.net
А попробуйте на другом компе и другим прогером.
Если есть ком порт то соберите простейший прогер.
Я таким пользуюсь и прогой понипрог еще не разу не подводил.
Если будете шить прям в схеме то все что связанно с кренкой можно смело выкинуть.
Только если с понькой не работали, то там фьюзы вроде по другому ставятся чем в некоторых других прогах.
Но для поньки можно тут взять фьюзы fusecalc.mirmk.net
И главное- фюз SPIEN не убрать,или не трогать.
И главное- фюз SPIEN не убрать,или не трогать.
Калькулятор фьюзов предупреждает об опасности, да и понипрог не дает возможности менять reset и spien, а с другими прогами этот прогер не работает, возможно с испрогом будет работать , но не проверял
Уважаемые! Вопрос не в тему, но может кто подскажет ( в личку ) : как можно ускорить данный код ?
sda=( bitdata & 0b10000000 ); scl=0; scl=1;
sda=( bitdata & 0b01000000 ); scl=0; scl=1;
sda=( bitdata & 0b00100000 ); scl=0; scl=1;
sda=( bitdata & 0b00010000 ); scl=0; scl=1;
sda=( bitdata & 0b00001000 ); scl=0; scl=1;
sda=( bitdata & 0b00000100 ); scl=0; scl=1;
sda=( bitdata & 0b00000010 ); scl=0; scl=1;
sda=( bitdata & 0b00000001 ); scl=0; scl=1;
Програмно реализуете i2c? Вполне возможно что задержки добавляют ожидания подтверждения. Особенно сказывается на медленных устройствах и медленных процессах (запись в епром?). Лучше использовать аппаратный вывод и работать по прерываниям - тогда процессор сможет чем-то заниматься пока идет передача. В случае с епромом - приличное ускорение получается при использовании страничного режима (а не побайтового).
Применительно к коду действующего передатчика? Мож правда пора уже новый зачинать?
Уважаемые! Вопрос не в тему, но может кто подскажет ( в личку ) : как можно ускорить данный код ?
После компиляции посмотрите этот кусок в получившемся ассемблерном файле. Возможно, CVAVR кое-чего добавляет от себя. И это “кое чего” может притормаживать. Если так - аккуратно убрать лишнее и компилировать ассемблерный файл.
Спасибо всем! Этот код для цветного дисплея. Аппаратные выводы уже заняты…
подскажите есть ли в природе код под приемник hk 6ch v2 чтоб на выходе бинда выдавал PPM или альтернативные совместимые приемники?
народ писал что была версия которая выдает, на своих смотрел - единица
хочу сделать очень простенький совсем нерегулируемый без всяких жк-экранов, экспонент и настроек передатчик с 12 канальным PPM на 328 атмеге, на базе корпуса и передающего модуля передатчика hk 6ch v2
чтоб сам калибровался под расходы 1000-1500-2000 при соединении с ppm приемника на входной пин передатчика.
передатчик будет заточен под ардупилот, на передатчике 6-уровневый переключатель полетного режима автопилота. точность отработки серв, экспоненты ардупилоту незачем а вот еще 6 каналов пригодятся под управление подвесом камеры с хеадтрекера, управление зумом и спуском камеры
Да, делал я недавно вариант для arducopter, вдохновленный переключалкой. Оттуда я взял, правда, лишь идею подключения светодиодов к тем же выводам, что и кнопки управления режимами. Если интересно могу исходники поискать.
На видео видно переключение между четырьмя режимами. В меню это выглядит как Switch2 и поэтому трехпозиционый тумблер я убрал. Добавить еще 2 кнопки - вообще не проблема.
Ну на ардуинке уже существует туча кодеров с экранчиком или без. Да что там- можно самому за вечер навалять нечто управляющее кхм… My RC Target. 😃
дане, проблема не в коде передатчика,
нужен код для тини приемника, чтоб выдавал суммовой сигнал на “бинд” разъеме
ибо даже сделав передатчик на 12 каналов использовать применик на 6 смысла нет
можно конечно турниговский (он биндится к хк) но у него кажись семь всего
Это я понял. Я показал в посте видео просто для упоминания arducopter в этой теме.
Алексей вам в эту тему на рцгрупс. Берете модули xl7105 на dx.com по $6 за пару и вперед. Все уже придумано до нас 😉
Краткий отчёт о приёмнике и передатчике на модулях nRF24L01+
- Что хотелось: при включении передатчика он должен просмотреть эфир и найти 3 свободных канала, и в составе пакета данных передать их в приёмник
Получилось: как раз не получилось: свободные каналы определить не удалось, поэтому передача идёт на 4-х каналах по очереди в течении периода
посылки передатчика. Причём если каналов меньше 6 , то передача только на 3 и менее каналах.
В результате алгорить такой: при прошивке приёмника и передатчика нужно задать одинаковые частоты(каналы) и Code_1 Code_2 , где коды осуществляют
привязку приёмника к передатчику. С изменением адреса самой nRF пробовать не стал, так как там есть нюансы.
В результате передатчик анализирует входные импульсы, по первому фронту импульса начинает отсчёт длительности каналов и запоминает их. После в паузе данные копируются в буфер, из котрого и передаются в nRF. Передача осуществляется на 4-х каналах по очереди в моменты приёма входных импульсов
от кодера и соответствуют 1, 3, 5 и 7 импульсу. Передаются 32 байта, хотя используются только 22. Максимум 8 каналов, хотя можно и увеличить…
Приёмник принимает данные, проверяет совпадение Code_1 и Code_2, после чего выводит канальные импульсы. Для записи FileSafe нужно замкнуть и разомкнуть
на корпус соответствующую ножку ( в проекте PD2 ). Если нужного сигнала некоторое время нет, то приёмник начинает последовательно переключаться на другие каналы.
Если сигнала нет около 1,5 сек, то включается FileSafe. При появлении сигнала всё продолжает работать в обычном режиме. Общая задержка от приёма
посылки кодера передатчиком до вывода канальных импульсов составляет около 45 мс.
Вполне возможно сделать вход передатчика не PPM, а цифровой или универсальный. Но я не потяну… т.к. надо сопрягать с кодером.
Все ножки МК можно переназначить, кроме MOSI , MISO , SCK и RESET.
Схемы, проекты с прошивками и исходниками, примеры плат прилагаются
Проверка на дальность ( но сквозь дом ) показала идентичность с аппаратурой Hobby King .
На открытой местности не пробовал.
Рассмотрю все предложения и замечания!
вопросик про алгоритм
а бинд чисто выбором каналов?
если другой передатчик будет охватывать один из каналов то будет идти управление от другого передатчика?
насколько я понимаю в системах передачи данных при использовании канального кодирования передают буффер кусочками на все используемые каналы а затем на приемнике все это склеивают в последовательность и проверяют контрольную сумму
у вас просто дубляж по всем каналам одинаковых данных?
а бинд чисто выбором каналов? Не только, ещё и двумя байтами данных - Code_1 и Code_2
если другой передатчик будет охватывать один из каналов то будет идти управление от другого передатчика?
Если приёмник не сможет правильно принять данные, то он перейдёт на другой канал. Время работы на одной частоте около 1,5 мс.
насколько я понимаю в системах передачи данных при использовании канального кодирования передают буфер кусочками на все используемые каналы а затем на приёмнике все это склеивают в последовательность и проверяют контрольную сумму
у вас просто дубляж по всем каналам одинаковых данных? Да , просто дубляж.
а передаваемые данные проверяются на предмет правильности передачи? например контрольная сумма переданного буффера или это обеспечивает радиочип аппаратно?
простите что заваливаю вопросами, очень уж интересная разработка.
я планировал нарисовать тоже нечто похожее, но ряд озвучиваемых вопросов пока не определился как решать