OSD на ATmega1281
Обнаружилась еще одна проблема при использовании чужих приемников: например слона не возможно не только заставить прекращать генерацию sum_ppm, но и не удается запомнить в режиме FS в канале газа значения меньше 1мс… Для подобных случаев пришлось добавить возможность определения потери линка по значению в 8-ом канале. При включении этой опции, при значении в 8 канале > 1.5ms считается переходом приемника в FS, те. потерей линка РУ.
Провели полевые испытания (в тч. с LRS слона) вроде бы все работает… Кто хочет может обновиться:V2.7.3
Тут между делом поправил свой “захватчик”: FPVcap.
Полноценно реализован fullscreen (до этого была скорее имитация). По идее должны в полноэкранном режиме сохраняться пропорции исходной картинки.
Вай молодец начальнике! Теперь при разворачивании на полный экран, сохраняет пропорции!
Спасибо! Теперь я буду твоей прогой писать.
Кто хочет может обновиться:V2.7.3
Немогу скачать , просит разрешение.
Извиняюсь, расшарил…
Сергей, есть вопрос по конфигуратору для ИМУ - оно как то должно показывать калибровочные данные?, кирпич крутиться должен? у меня работает только режим “терминала” кажет поток данных с ИМУ…
Возможно использовали прошику для моего экзотического кварца 16 к копейками… Для 16мгц кварца попробуйте это: IMU_16mHz.
попробуем:) Спасибо:)
а как оно связано? иму то работает, и в ОСД нормально цепляется и горизонт работает, до полётов пока не дошло, правда…
Если вы используете USB-COM переходник, то зайдите в диспетчер задач, в свойства драйвера и измените вручную скорость передачи данных на 38400. У меня была такая проблема с один из переходников.
По идее если у вас в прошивка не под тот кварц, то и OSD работать с ним не будет. Если кварц на 16 мгц, то прошивку нужно под 16 мгц.
С АП IMU рабтает по SPI подобной шине с синхронизацией от АП. Поэтому до определенных пределов работоспособность шины сохраняется вне зависимости от частоты кварца IMU. С компом связь по UART на скорости 56000. Естественно при изменении кварца асинхронная шина перестает работать… Для перехода на 16мгц ровно, достаточно поменять в инициализации IMU один регистр:UBRRL=0x11;
Сергей ubd нашел какой-то кривой USB-COM, который не захотел работать на 56000. Пришлось для него переделать и IMU и прогу теста на 38400…
Ага, не кривой стоит 480 руб, а кривой 50 руб. За то 10 штук купить можно… 😃
а какой не кривой? у меня на фт232 и пл2303 оба на 56000 не хотят работать:(
не кривой стоит 480 руб
Ну совсем “не кривой” (MOXA) стоит под 3т … 😃
Иван, а почему решили что ваши адаптеры не работают на 56000?
Вот этот нормальный, под любой виндой работает:
www.masterkit.ru/main/set.php?code_id=221247
А вот на PL2303, как раз кривой. Под W7 я вообще его завести не смог, вроди бы скачал дрова на 7-ку, но нифига.
А под ХР работает но я там скорость 38400 выставил вручную.
Иван, а почему решили что ваши адаптеры не работают на 56000?
в настройках порта такая скорость не доступна:(
прошился на 16МГц кроме потока данных в режиме чтения в проге test_imu.exe ничего не шевелиться… вот… может прога не совсем та? 😃 если бы не работал адаптер то данных я бы не получил наверное?
В настройках такой скорости в выпадающем списке обычно нет, но test_imu ее по идее сам должен устанавливать при открытии порта.
Данные должны приходить такого вида:
AB > AF 50 0B 05 03 00 FF FF 02 00 00 30 00 02 00 3D
AC > AF 50 0B 05 03 00 FF FF 02 00 00 30 00 00 00 3F
AD > AF 50 0B 05 03 00 FF FF 02 00 00 2F 00 00 00 20
AE > AF 50 0B 05 03 00 FF FF 02 00 00 2E 00 00 00 21
AF > AF 50 0B 05 03 00 FF FF 02 00 00 2D 00 01 00 23
Каждое сообщение начинается с последовательности AF 50, это синхронизация, 0B длина телеграммы, 05- тип, заканчивается 1 байтом crc.
Если этого не видно, какая-то проблема с uart… Может я действительно уже запутался с версиями, кварцами, скоростями…
На всякий, вот мой test_imu под 56000.
данные именно такие , просто оно не кажет настроечных данных почему то:( может не там клацаю:))
разобрался - я не там клацал!!! после включения режима чтения, нужно включить дебаг, тогда “кирпич оживает” ща буду допинывать:)
Кстати, сергей, сенсор в прошиве я “повернул” всё нормально и адекватно в ОСД кажет, СПАСИБО
Сергей, а ещё просьба - можете показать компановку Вашего вжика?
разобрался - я не там клацал!!! после включения режима чтения, нужно включить дебаг, тогда “кирпич оживает” ща буду допинывать
У меня без всяких дебагов он оживал.
после включения режима чтения, нужно включить дебаг
Не-не… При включения дебаг, IMU начинает передавать в комп сырые данные с датчиков, которые обрабатываются в самом компе… “Кирпич” должен крутится и без этой галки (с иму передаются уже просчитанные данные)… Посмотрите в main():
if(gHostDbg & 1)
send_UART(UART_SENSOR_DATA, (u_char *)&gSensorData, sizeof(SENSOR_DATA), 0);
else
send_UART(UART_IMU_DATA, (u_char *)&gIMU_Data, sizeof(IMU_DATA),0);
Вот версия по которой я последний раз IMU делал под кварц 16 мгц, и скорость для обмена с компом 38400. Это всё работало.
Видимо версия конфигуратора для иму у меня оч старая… Скачал то что выложил ubd настроил иму на 38400 и кирпич “заработал” данные калибровочные считываются:)
На всякий, вот мой test_imu под 56000.
выдаёт not found 😦 при попытке скачать…