Автор Тема: DDS синтезатор передатчика  (Прочитано 137877 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн rn3aus

  • Ветеран
  • *****
  • Сообщений: 3671
    • Просмотр профиля
Re: DDS синтезатор передатчика
« Ответ #30 : 26 Февраль 2013, 19:28:53 »
Новая версия 6.1
Скорректировано формирование фазы посылок в OPERA, QRSS и CW с тем, чтобы обеспечить когерентность сигнала на всей его длительности. Это может быть полезно для обработки, что делает Markus DF6NM - OP deep search.

Александр, ты б перезалил свои чертежи и программы, а то много потерялось с переездом.

Код микропрограммы, команды управления и печатка

Оффлайн rn3aus

  • Ветеран
  • *****
  • Сообщений: 3671
    • Просмотр профиля
Re: DDS синтезатор передатчика
« Ответ #31 : 26 Февраль 2013, 19:30:18 »
Готовые прошивки под разные опорники (первая 12,8 МГц)

Оффлайн rn3aus

  • Ветеран
  • *****
  • Сообщений: 3671
    • Просмотр профиля
Re: DDS синтезатор передатчика
« Ответ #32 : 26 Февраль 2013, 19:31:28 »
Схема

Оффлайн rn3aus

  • Ветеран
  • *****
  • Сообщений: 3671
    • Просмотр профиля
Re: DDS синтезатор передатчика
« Ответ #33 : 26 Февраль 2013, 19:32:05 »
расположение деталей

Оффлайн rn3aus

  • Ветеран
  • *****
  • Сообщений: 3671
    • Просмотр профиля
Re: DDS синтезатор передатчика
« Ответ #34 : 26 Февраль 2013, 19:33:02 »
И что должно получиться

Оффлайн rn3aus

  • Ветеран
  • *****
  • Сообщений: 3671
    • Просмотр профиля
Re: DDS синтезатор передатчика
« Ответ #35 : 04 Март 2013, 19:02:05 »
По предложению Александра R7NT введена возможность настройки PTT delay. Это можно сделать в меню, либо в ини-файле в строчке [DDS] PTT_DELAY=время задержки подачи сигнала после команды включения РТТ в миллисекундах (от 0 до 58000 мс).
« Последнее редактирование: 04 Март 2013, 19:04:33 от rn3aus »

Оффлайн АлексейUA3MSF

  • Постоялец
  • ***
  • Сообщений: 103
    • Просмотр профиля
Re: DDS синтезатор передатчика
« Ответ #36 : 20 Апрель 2013, 10:37:08 »
Приветствую Александр!!! Собрал синтезатор rx генератор 16мгц пришлось сделать отдельно с климат контролем проверил частота стоит железобетонно. Хочу его применить в трансивере. Хочу узнать ваше мнение насчет этого. Сам тракт собрал на  sa612 с переключением полосы на эмф.
ua3msf 73!!!

Оффлайн rn3aus

  • Ветеран
  • *****
  • Сообщений: 3671
    • Просмотр профиля
Re: DDS синтезатор передатчика
« Ответ #37 : 20 Апрель 2013, 14:04:42 »
Приветствую Александр!!! Собрал синтезатор rx генератор 16мгц пришлось сделать отдельно с климат контролем проверил частота стоит железобетонно. Хочу его применить в трансивере. Хочу узнать ваше мнение насчет этого. Сам тракт собрал на  sa612 с переключением полосы на эмф.
Я так понимаю сигнал на передачу формируется как с микрофона, в ssb? То есть так же как в обычных КВ трансиверах? Если да, то это очень хорошо и синтезатор rx вполне можно использовать.

Оффлайн АлексейUA3MSF

  • Постоялец
  • ***
  • Сообщений: 103
    • Просмотр профиля
Re: DDS синтезатор передатчика
« Ответ #38 : 20 Апрель 2013, 14:17:46 »
Да именно так я собрал сам тракт по схеме трансивера аматор версия на sa612 с небольшими доработками. Синтезатор по вашей схеме. на выход поставлю irf540. Как я доделаю его сразу скину фото отчет.
ua3msf 73!!!

Оффлайн rw3adb

  • Ветеран
  • *****
  • Сообщений: 6338
    • Просмотр профиля
    • E-mail
Re: DDS синтезатор передатчика
« Ответ #39 : 21 Апрель 2013, 00:26:45 »
Да именно так я собрал сам тракт по схеме трансивера аматор версия на sa612 с небольшими доработками. Синтезатор по вашей схеме. на выход поставлю irf540. Как я доделаю его сразу скину фото отчет.

это круто - с ходу сможете гонять новомодный вспр и йт9!
щрсс тоже будет можно, если работает только одна QRS - посылка идет ровная, я проверял даже в моде 360 как-то.

UPD - да, после первых испытаний, а можно и до- ждём тему с описанием аппарата!
« Последнее редактирование: 21 Апрель 2013, 00:55:32 от rw3adb »
--_ _ _  _ _ _ --  --_   _   _-_  _--  _ _ _-- _- -_ _ -_ _ _

Оффлайн UF3K_Vlad

  • Ветеран
  • *****
  • Сообщений: 535
    • Просмотр профиля
Re: DDS синтезатор передатчика
« Ответ #40 : 17 Август 2013, 22:35:43 »
2 RN3AUS

Саш, сделал твой синтезатор - приятная штучка. Спасибо большое.
Есть один момент при формировании WSPR-15 (но думаю и в остальных модах будет так же) при изменении тона ненадолго пропадает сигнал. Усилителю мощности это просто "мозг выносит".  ;)

Рутины записи частоты и фазы сейчас выглядят так:

;
; read in 4 characters from the serial link
;
read_4:
      rcall   get_char      ; read and ignore bits 32..24
      rcall   get_char      ; read bits 23..16
      mov      r26,r16
      rcall   get_char      ; read bits 15..8
      mov      r25,r16
      rcall   get_char      ; read bits 7..0
      mov      r24,r16
      clr      r17
      out      PORTB,r17
      ret

; read 4 character from the serial link and add to phase accumulator
; ---- Первый байт игнорируется, второй - младший байт, третий - средний, четвертый - старший байт.
read_ph_4:
      rcall   get_char      ; read and ignore bits 32..24
      rcall   get_char      ; read bits 7 ..0   
      mov      r20,r16                              
      rcall   get_char      ; read bits 15..8
      mov      r21,r16                     
      rcall   get_char      ; read bits 23..16
      mov      r22,r16                           
      ret                              

Не слишком красиво. По идее нужно буферизировать. Я к сожалению не знаю ассемблера атмеловского и самого процессора, но если можно найти еще 3 регистра для буфера, то должно быть примерно так:

;
;    r40,r41,r42 буферные регистры
;
;
; read in 4 characters from the serial link
;
read_4:
      rcall   get_char      ; read and ignore bits 32..24
      rcall   get_char      ; read bits 23..16
      mov      r42,r16                ;пишем в буфер
      rcall   get_char      ; read bits 15..8
      mov      r41,r16                 ;пишем в буфер
      rcall   get_char      ; read bits 7..0
      mov      r40,r16                 ;пишем в буфер
                            cli                                                     ;запрещаем прерывания
                            mov                      r24,r40                ;быстренько грузим куда надо, начиная с младших разрядов
                            mov                      r25,r41
                            mov                      r26,r42
                            sei                                                   ;разрешаем прерывания
      clr      r17
      out      PORTB,r17
      ret

; и тоже самое для фазы

; read 4 character from the serial link and add to phase accumulator
; ---- Первый байт игнорируется, второй - младший байт, третий - средний, четвертый - старший байт.
read_ph_4:
      rcall   get_char      ; read and ignore bits 32..24
      rcall   get_char      ; read bits 7 ..0   
      mov          r40,r16                              
      rcall   get_char      ; read bits 15..8
      mov      r41,r16                     
      rcall   get_char      ; read bits 23..16
      mov      r42,r16      
      cli                                                     ;запрещаем прерывания
                            mov                      r20,r40                ;быстренько грузим куда надо, начиная с младших разрядов
                            mov                      r21,r41
                            mov                      r22,r42
                            sei                                                   ;разрешаем прерывания            
      ret                              


Возможно и не поможет... Там надо еще смотреть как обрабатывается прерывание по UART, но на это мне уже интеллекта не хватит.  ;)
« Последнее редактирование: 17 Август 2013, 22:40:40 от RX3QFM_Vlad »
ex RX3QFM

Оффлайн rn3aus

  • Ветеран
  • *****
  • Сообщений: 3671
    • Просмотр профиля
Re: DDS синтезатор передатчика
« Ответ #41 : 21 Август 2013, 11:50:59 »
На подходе новая усовершенствованная прошивка и программа управления. Пока у меня есть возможность плотно ей заниматься, предлагаю высказать здесь пожелания и замечания.
Что будет в новой версии:
- возможность составить и записать в eeprom контроллера циклограмму маяка, включающую в себя wspr-15 (или 2), ОР (-1 ....-65), qrss/dfcw сообщение, а также bpsk-1...31. В одной циклограмме одновременно умещается wspr и две Ор и паузы между ними. Возможны и иные комбинации. При этом паузы автоматически подбираются таким образом, чтобы полный цикл работы маяка был кратен периоду передачи wspr. Так как в изделии нет часов точного времени, то достаточно будет лишь включить маяк в нужный момент времени (например в начале часа) и дальше цикл будет ходить сам. Компьютер, естественно, в этом режиме не нужен.
- в обычном режиме, с управляющим компьютером, изменено формирование сигнала вспр, чтобы уменьшить или совсем устранить паузы между посылками. Вроде бы получилось.
- введена защита от зависания компьютера. Если от компьютера нет никаких команд более чем 20 минут, синтезатор выключает РТТ. Передатчик не будет лучить в эфир. Тон при этом, если он был включен, не снимается - это если синтезатор используется для каких-то иных целей, как опорник например.
- на лицевой панели синтезатора вводится одна кнопка, нажатием на которую управляют вручную включением PTT и тона, а также запускают режим маяка; она же служит для разрешения записи в eeprom.

Это то что уже сделано. Какие еще будут пожелания? (jt9 постараюсь сделать, но пока не все детали его формирования успел изучить. Нет нормального описания процесса кодирования, в отличие от вспр.)
« Последнее редактирование: 21 Август 2013, 11:54:40 от rn3aus »

Оффлайн UF3K_Vlad

  • Ветеран
  • *****
  • Сообщений: 535
    • Просмотр профиля
Re: DDS синтезатор передатчика
« Ответ #42 : 21 Август 2013, 12:29:30 »
Пожелания:

-при включении питания сигнал на выходе синтезатора должен отсутствовать (пару раз уже по невнимательности руку об радиатор драйвера обжег) до прихода команды из компьютера;
-очень сильные спуры (-30 -40 дб) по всему диапазону. Не знаю, можно ли побороть в такой конструкции, т.к. слишком маленький аккумулятор фазы и мало разрядов ЦАП. Т.е. как гетеродин приемника он не годится, да и на передачу при большой мощности немного страшновато.
-может быть подумать прикрутить AD9832 (AD9835)? Они дешевые. Но это уже другой синтез будет.
-может быть в скрипт расписания ввести не задержки между режимами, а время старта команды?

UPD: Хорошо бы в управляющей программе сделать ползунок (скрываемый по чек-боксу) для быстрой перестройки 0-300 кГц. Это может пригодиться для настройки антенн.
« Последнее редактирование: 22 Август 2013, 16:30:28 от RX3QFM_Vlad »
ex RX3QFM

Оффлайн rn3aus

  • Ветеран
  • *****
  • Сообщений: 3671
    • Просмотр профиля
Re: DDS синтезатор передатчика
« Ответ #43 : 27 Август 2013, 12:43:28 »
Готова новая версия прошивки DDS и v7.0 управляющей программы (она совместима и со старой прошивкой DDS, но новые функции будут недоступны).

Для новой прошивки нужно минимально доработать схему, как показано на рисунке и описано в пояснении.
Удалось учесть многие из высказанных пожеланий, в том числе запуск команд по времени, частотный скроллер, режим ГКЧ, улучшенное формирование WSPR и многое другое...

Оффлайн rn3aus

  • Ветеран
  • *****
  • Сообщений: 3671
    • Просмотр профиля
Re: DDS синтезатор передатчика
« Ответ #44 : 27 Август 2013, 12:44:06 »
Упр программа