Самодельный передатчик (часть 1)

Vad64

мне вот хочется графику и есть сомнения, сможет ли один МК тянуть и модуляцию сигнала в реальном времени, и графику.
в новой футабе  два МК - это факт, интересно, а в девятке их сколько ?

Сможет. У меня пиковая загрузка ATMega64 при кварце 12 МГц и формировании РСМ составляет около 30%, РРМ - еще меньше. При это весь код написан на Си. Важно формирование выхода делать по прерываниям, чтобы гарантированно успевать миксить и кодировать, назависимо от UI. Также необходимо формировать выход таймером, чтобы не было джиттера, обусловленного программными задержками. Задача, короче, решается и с большим запасом по производительности.

Что касается отладки UI и миксинга, я сначала делал ее под Win32. Тот же самый Си код системы меню, модели и миксинга я ставил на другой HAL (эмуляция ЖКИ, кнопки, шкалы серво - через окно Вин). Когда появилась железка, подключил честный HAL и все точно так же зажило на железке. Если кому интересно, могу прислать ехе-шник симулятора, чтобы посмотреть, как устроен мой UI и как работает миксинг.

Добавлено

rulll:

Декодер PCM уже написан ?

Последовательность PCM без постоянной составляющей (RZ) ?

Что такое маппинг?

Да.

В целом пост. сост. близка к 0, но может идти 18 одинаковых бит подряд. Так что спроектировать синтезатор не так-то просто.

Я могу на каждый временной слот РРМ назначить любой канал, или пустышку с мин-макс-сред значением, или объявить конец последовательности, задав таким образом количество передаваемых каналов.

Добавлено

Вячеслав_Старухин:

Для тех, кто не знает:

Вячеслав, речь здесь идет, скорее, о SCI. Все это понимают, не надо нотаций.

nicetry

2 Vad64:
жаль что придется изобретать велосипед, я планировал провести разработку ровно в таком же ключе 😉 а пример, пожалуйста лучше сюда, мне и остальным для референса, очень интересно!

Vad64

жаль что придется изобретать велосипед, я планировал провести разработку ровно в таком же ключе

А какие варианты? Я считаю, что проделал большую работу. Хотел бы, что бы от нее была польза многим, в том числе и мне самому. Если я опубликую исходники, польза будет единицам, а мне это принесет только головную боль - отвечать на дурацкие вопросы. Если наберется человек 10 энтузиастов, можно заказать РСВ. Я готов для них залить свой bootloader, позволяющий обновлять прошивку, - за символическую плату или обмен. Понравится моя прошивка - используйте. Нет - сотрете бутлоадер и будете изобретать свой софт-велосипед.

По поводу симулятора - он порядочно out-of-date, т.к. я давно переехал на железку. Мне лень его приводить в соответствие, так что многие фичи в нем не имплементированы. Также не идут часы, нет автоповтора кнопок, звука и т.п. Меню, джойстики, миксинг должны работать.

sim.zip

nicetry

в изобретение “софта-велосипеда” для меня как-раз и заключается всё удовольствие, просто не хочется банальные вещи делать самому 😉
а почему PCB нужно заказывать обязательно в десятером ? нынче это не дорого…

PS: мессадж-бокс с сообщением “нот имплементед” - солидно, чуствуется основательность подхода 😉

rulll
Vad64:

В целом пост. сост. близка к 0, но может идти 18 одинаковых бит подряд.

Почитал про PCM1024 и вот что я насчитал

Длина бита - 150микрсек. Отсюда максимальная частота модулирующего сигнала 3.3 КГц.
Не понял почему может быть 18 одинаковых бит , да и это неважно - отсюда 150*18=2,7 милисекунды продолжительность без перепада или отсюда минимальная модулирующая частота 185 Гц. Итого полоса модулирующего 3300-150=3150 Гц.
Влад , поправте меня если я недопоняв чтото неправильно посчитал.

Похвастаюсь тем что есть у меня 😃
Максимальная модулирующая 4,15 КГц
минимальная - 1,38 КГц
полоса модулирующего 2,77 КГц
Минимальная модулирующая частота в 7,5 раз выше чем у футабы!
Кроме того длина пакета у меня меняется и непревышает 19 милисекунд, у футабы 29.

Логические уровни передаются не сдвигом частоты а определяются временными интервалами между сдвижками. Отсюда синхронизация возможна по одному биту. Постоянная составляющая 0.
Чето футаба - ацтой…

Зачем делать из лучшего - хужее… ?
Вад, сделаете как опцию то о чем я писал ?

nicetry

2 Vad64:
наполнение меню вы с чего-то копировали или формировали на свой вкус ?

Vad64
rulll:

Длина бита - 150микрсек. Отсюда максимальная частота модулирующего сигнала 3.3 КГц.

Не надо торопиться с выводами. У Футабы минимум 2 соседних бита одинаковы. Поэтому верхняя частота модулирующего сигнала не 3.3, а 1.7кГц. Это дает узкий спектр и позволяет им при девиации ±1.5кГц уложиться в сетку частот с шагом 10кГц. При 4.15 кГц спектр будет слишком широк для стандартного диапазона.

Добавлено

наполнение меню вы с чего-то копировали или формировали на свой вкус ?

На свой неискушенный вкус.

rulll
Vad64:

При 4.15 кГц спектр будет слишком широк для стандартного диапазона.

На 430 МГц каналы по 25 КГц 😃 😁

12 days later
Покемон

Извините, что влезаю, но может вы поможите? Футабу Мс-28 все знают. А почему бы ей не сделать дествительно 28 канналов? Ну или самодельную аппаратуру. И соответственный приемник. Просто я в электрике, как сантехник в кефире, а канналы нужны.

6egemot
Покемон:

А почему бы ей не сделать дествительно 28 канналов? Просто я в электрике, как сантехник в кефире, а канналы нужны.

купи модуль для robbe-futaba и вперед. делает из одного канала до 16 дискретных.

втыкается в fx-18, fc-18 и далее

Покемон

А пропорциональные? И как быть с приемником? Где я найду 16 каннальный приемник? Таких вроде нету!

V_Alex

Все там-же, у Robbe, были модули расширители для приемника - из одного пропорционального канала получается четыре (либо 8 дискретных).

pakhomov4
Покемон:

А пропорциональные? И как быть с приемником? Где я найду 16 каннальный приемник? Таких вроде нету!

М-да… А что у тебя что имеется-то? Из раций? 😃

Покемон

При чем здесь рации? Я про приемник на самик. А то ведь оружием на нем тяжко управлять. Пока систему самонаведения включишь, пока то сё … Цель уже тю тю.

pakhomov4
Покемон:

При чем здесь рации? Я про приемник на самик. А то ведь оружием на нем тяжко управлять. Пока систему самонаведения включишь, пока то сё … Цель уже тю тю.

М-да… Это уже ДИАГНОЗ 😃 Лечить бесполезно 😃

serj

2 rull:
кстати, СRС 8 бит или 16? Наверное, 8 - пакеты короткие…
тогда какой полином? 😃

Надеюсь, я не очень мно спрашиваю? 😃

rulll

СRС-8, x4+x3. 8 бит вполне достаточно в данной системе, считается побитово поэтому все равно какая разрядность пакета. Исходник взял с какойто мути и подогнал под свои потребности. Меня устроило , хотя матерые програмеры конечно же скажут что СРС считается подругому.

;--------------------------------------------------
DOW_CRC:
;in- DATA each received byte
;out- DATA received and current CRC
push data
push data ;Save bits to be shifted.
ldi temp,8 ;Set to shift eight bits.
c_1:
eor data,crc ;Calculate DQIN xor CRCT0.
ror data ;Move it to the carry.
mov data,crc ;Get the last CRC value.
brcc c_2 ;Skip if DQIN xor CRCT0 = 0.
ldi temp_1,$18
eor data,temp_1 ;Update the CRC value.
c_2: ror data ;Position the new CRC.
mov crc,data ;Store the new CRC.
pop data ;Get the remaining bits.
lsr data ;Position next bit in LSB.
push data ;Save the remaining bits.
dec temp
brne c_1 ;Repeat for eight bits.
pop data ;Clean up the stack.
pop data
ret ;Return.
;===========================================================

Gold

а какой вид и размер имеют приемные и передающие антены на 450 mhz?

rulll

кусочек тонкого кабеля длиной 10-15 см.

Gold

кул 😃 для меня в этой затее это самый интересный момент.

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

завидую людям, для которых ВЧ - самая простая часть в этой системе, для меня это темный лес и сплошное шаманство, детали по другому расположил, дорожку не так провел и все работать перестало 😃

serj

В виде “дорожек, влияющих на все” обычно выполняются линии передачи 😃 хотя на 434 они достаточно длинны, а вот на 960 или 2400- тут одни “дорожки”.

Все это достаточно просто посчитать…
Есть такая программка, вернее пакет, microwawe office называется… .

А еще RFsim99 , она всего 2 мб весит, и простае, а еще APPcad от Aglirent- 15мб. Две последние просты в использовании.

2 Rull: этот полином, если мне не изменяет память, используется в DS1820 😃 только там еще +1, кажется, на конце должно быть…