PDA

Просмотр полной версии : Допилить скетч DDS синтезатора на ардуино



gudzon-m
07.08.2016, 17:39
Здравствуйте коллеги!
Собственно есть скетч для ардуино, ad9850 и дисплеем на ST7735S. На нем собран генератор. Генератор нужно переделать в синтезатор для трансивера.
Важно! Исходники будут выложены в общий доступ, в том числе и на этом сайте.
Много заплатить не смогу, 1000 - 1500 рублей.
Заинтересовавшемуся, подробности по e-mail.
Спасибо.

Alex-31
07.08.2016, 21:43
ST7735S

1.8" TFT дисплей от nokia 5110 (128 x 160) ?

имхо где-то видел готовый синтез на всех этих "ингредиентах"...

gudzon-m
07.08.2016, 21:50
1.8" TFT дисплей от nokia 5110 (128 x 160) ?

Скорее всего. Я брал здесь: http://ru.aliexpress.com/item/New-Electric-Unit-High-quality-1-8-Inch-TFT-LCD-Display-Module-ST7735S-128x160-51-AVR/32612635271.html

По поводу готового или нет, у меня особые хотелки, потому и ищу помощи.

Alex-31
07.08.2016, 22:14
Вот такой получился синтезатор у польского товарища с применением трех стандартных модулей
- arduino nano,
- индикатор NOKIA 5110,
- DDS модуль на AD9850

http://sp-hm.pl/thread-1763.html

239947

gudzon-m
07.08.2016, 22:45
Ну да, в общем примерно такое и я и хочу получить, дисплей только цветной.

ur7hfo
08.08.2016, 00:12
Ну да, в общем примерно такое и я и хочу получить, дисплей только цветной.
Вы можете взять исходники , которые выше выложил Alex-31 (http://www.cqham.ru/forum/member.php?29903-Alex-31)

И прикрутить к нему свой дисплей на ST7735S. Он к стати отлично работает у меня с библиотекой UTFT. Последнюю версию библиотеки можно взять тут - http://www.rinkydinkelectro nics.com/library.php?id=51

gudzon-m
08.08.2016, 03:22
Вы можете взять исходники

Может для вас это просто, а для меня темный лес, потому и ищу помощи.

UV7QAE
08.08.2016, 03:53
Не морочьте голову, замените цветной дисплей на дисплей от Nokia (он стоит 2$) и возьмите готовую схему и будет все готово. Схему выше этого дали.

Alex-31
08.08.2016, 07:46
цветной


брал здесь

какой же он цветной? обычный монохромный...

R2DHG
08.08.2016, 09:18
у меня особые хотелки
Мне кажется дело именно в этом :-P Озвучивайте, чего уж... А то может хотелка толще всего оригинального скетча.

user12
08.08.2016, 11:19
какой же он цветной? обычный монохромный...
TFT и монохромный? Это цветной дисплей! Или по контроллеру посмотри что за дисплей по ссылке.

Alex-31
08.08.2016, 11:31
user12, тем лучше! :smile:

user12
08.08.2016, 11:43
Лучше чем? Тем чтоб написать что попало и запутать?
С этим дисплеем библиотека UTFT нормально работает.

R2DHG
08.08.2016, 12:06
Ну прикрутить к тому скетчу с монохромным библиотеку UTFT наверное несложно, но в библиотеке предупреждение от автора есть - на mega328 использовать не рекомендуется в виду того, что под ваш код памяти может не остаться :-P


Due to the size of the library I do not recommend using it on ATmega328 (Arduino 2009/Uno) and ATmega32U4 (Arduino Leonardo) as they only have 32KB of flash memory.
It will work, but you will be severely limited in available flash memory for your application.

Genadi Zawidowski
08.08.2016, 12:28
Управление контроллером дисплея ST7735 (так же известный как "1.8 дюйма TFT") давно включено в проект "простого синтезатора". Ничего сложного нет, знакогенераторы не больше чем под LS020...
Интересующиеся могут посмотреть исходники на С:
https://188.134.5.254/browser/hfreceiver/trunk/st7735.c

Использование для отображения текста и s-метра:
https://188.134.5.254/browser/hfreceiver/trunk/display.c

В описании библиотеки упоминаются разные версии дисплея - с зеленой, черной и красной наклейкой на защитной плёнке. Отличаются смещенным на единичку начальным адресом дисплейной памяти (кажется) и ещё чем-то... Я под чёрную наклейку тестировал.

зы: оригинальный копирайт, откуда дралось:

/******************** ******************** ***********
This is a library for the Adafruit 1.8" SPI display.
This library works with the Adafruit 1.8" TFT Breakout w/SD card
----> http://www.adafruit.com/products/358
as well as Adafruit raw 1.8" TFT display
----> http://www.adafruit.com/products/618

Check out the links above for our tutorials and wiring diagrams
These displays use SPI to communicate, 4 or 5 pins are required to
interface (RST is optional)
Adafruit invests time and resources providing this open source code,
please support Adafruit and open-source hardware by purchasing
products from Adafruit!

Written by Limor Fried/Ladyada for Adafruit Industries.
MIT license, all text above must be included in any redistribution
******************** ******************** ************/


Оригниал живет тут:
https://github.com/adafruit/Adafruit-ST7735-Library

R0SBD
08.08.2016, 12:38
У меня вот так:

Genadi Zawidowski
08.08.2016, 12:38
У меня вот так:
Проигнорируйте и идите дальше.

gudzon-m
08.08.2016, 12:53
По вашим просьбам, вот хотелки:


Сделать нужно будет достаточно много. Так как из простого генератора нужно будет сделать синтезатор для трансивера.
1. Убрать модуляцию и на эту кнопку вешаем переключатель диапазонов.

2. Диапазонов перестройки будет четыре.
а. 1800 - 2000 КГц
б. 3500 - 3800 КГц
в. 7000 - 7200 КГц
г. 14000 - 143500 КГц

3. Нужно будет учитывать промежуточную частоту в 500 КГц. То есть, на дисплее будет высвечиваться 2000 КГц а с DDS должно выходить 2500 КГц. И что бы эту разницу можно было легко поправить в скетче, желательно для каждого диапазона отдельно, в том числе и со знаком минус. Так как в диапазоне 14000 - 143500 КГц промежуточную частоту нужно будет вычитать, а не прибавлять.
4. Промежуточную частоту нужно ввести любую, от 200 КГц до 10 МГц

5. Переделать вольтметр из цифрового на "аналоговый" типа уровня сигнала (светодиодного столбика или полоски на аудиоаппаратуре) или типа стрелочного. В общем, сделать S-Meter

6. Убрать лишние шаги из переключения шагов. Оставить нужно только 10 герц и 100 герц.

7. При подаче на одну из ног ардуинки высокого уровня, менять надпись с "RX" на зеленом фоне на "TX" на красном.

8. При включении определенного диапазона, на определенной из ног ардуины должен появляться высокий уровень.

9. Самое сложное. :) Помочь мне более-менее прилично все это вывести на дисплей :)



Ну и сам оригинальный скетч.


За две тысячи американский рублей

Пишите, только не в эту тему, здесь немного другие расценки. Не заинтересованы, проходите мимо.

Alex-31
08.08.2016, 13:03
вот хотелки

и что тут необычного? все разработки синтезаторов на форуме умеют делать это...

надо просто по темам пройтись - обязательно найдёте то, что вас устроит...


две тысячи американских рублей

окстись! не по христиански это! :evil:

Genadi Zawidowski
08.08.2016, 13:09
На форуме есть схема синтезатора "колибри".
С процессором ATMEGA328 в планарном корпусе.
Под него легко генерируется прошивка синтезатора (без CAT) - ПЧ Вы уже сказали, осталось узнать частоту на входе AD9850. Посмотрите схему. FM25L04 не обязательна.
Внешние регистры 74HC595 для управления диапазонными фильтрами. Кнопки до разумного кличества (7-8 штук) тоже урезаются.

Или вот схема - ничего лишнего... 74HC595 не нарисованы (две-три штуки надо, на ~CSCTL1).

gudzon-m
08.08.2016, 13:16
На форуме есть схема синтезатора "колибри".
С процессором ATMEGA328 в планарном корпусе.
Под него легко генерируется прошивка синтезатора
Геннадий здравствуйте. Я хочу именно на ардуинке, что бы легко было, что-то поправить и сразу видеть результат. На данный момент, это самое простое решение, не требует ни программаторов ни спецсофта. Просто среда ардуино и usb шнурок.

Genadi Zawidowski
08.08.2016, 13:19
Тут как говориться и ёлку влезть... и не уколоться.
К сожалению, с Ардуино дела не имел. Но любую ардуиновскую плату можно превратить в обычный тупой процессор можно.

Genadi Zawidowski
08.08.2016, 13:20
Тут как говориться и ёлку влезть... и не уколоться.
К сожалению, с Ардуино дела не имел. Но любую ардуиновскую плату можно превратить в обычный тупой процессор можно.

что бы легко было, что-то поправить
Как легко поправить мы наблюдем в этой теме.

gudzon-m
08.08.2016, 13:24
Тут как говориться и ёлку влезть... и не уколоться.
:ржач::ржач::ржач: насмешили, спасибо. В том то и дело, что именно на ардуинке хочу. Тут даже я что-то подправить всегда смогу, посижу, задумаюсь но рожу решение. Так как все доступно чуть ли не со смартфона. Да и другим, таким как я радиолюбителям повторялкинам, проще. :smile:

R2DHG
08.08.2016, 14:07
именно на ардуинке хочу. Тут даже я что-то подправить всегда смогу, посижу, задумаюсь но рожу решение.
а что же мешает его родить по нескольким элементарным пунктам из списка (отметил как "фигня") ? :-P я буду отталкиваться от скетча, ссылку на который скинул Alex-31




Сделать нужно будет достаточно много. Так как из простого генератора нужно будет сделать синтезатор для трансивера.
1. Убрать модуляцию и на эту кнопку вешаем переключатель диапазонов.

А там разве нет переключателя ? В любом случае фигня, но вставать будет по центру диапазона (в скетче прописаны частоты).



2. Диапазонов перестройки будет четыре.
а. 1800 - 2000 КГц
б. 3500 - 3800 КГц
в. 7000 - 7200 КГц
г. 14000 - 143500 КГц

фигня



3. Нужно будет учитывать промежуточную частоту в 500 КГц. То есть, на дисплее будет высвечиваться 2000 КГц а с DDS должно выходить 2500 КГц. И что бы эту разницу можно было легко поправить в скетче, желательно для каждого диапазона отдельно, в том числе и со знаком минус. Так как в диапазоне 14000 - 143500 КГц промежуточную частоту нужно будет вычитать, а не прибавлять.

в скетче это есть



4. Промежуточную частоту нужно ввести любую, от 200 КГц до 10 МГц

и это есть



5. Переделать вольтметр из цифрового на "аналоговый" типа уровня сигнала (светодиодного столбика или полоски на аудиоаппаратуре) или типа стрелочного. В общем, сделать S-Meter

и это вроде тоже есть



6. Убрать лишние шаги из переключения шагов. Оставить нужно только 10 герц и 100 герц.

фигня



7. При подаче на одну из ног ардуинки высокого уровня, менять надпись с "RX" на зеленом фоне на "TX" на красном.

фигня (а зачем ? ну поставьте просто светодиод)



8. При включении определенного диапазона, на определенной из ног ардуины должен появляться высокий уровень.

может ног не хватить, фигня, но чуть менее фигня чем остальная



9. Самое сложное. :smile: Помочь мне более-менее прилично все это вывести на дисплей :smile:

возможно фигня, а возможно и нет, на вкус и цвет... и теоретически может не влезть если utft не покоцать :-P

ur3ilf
08.08.2016, 14:08
К сожалению, с Ардуино дела не имел. Но любую ардуиновскую плату можно превратить в обычный тупой процессор можно.


Геннадий даже и превращать не надо. В той же нано все выводы выведены наружу и можно залить любой hex через USB. Порой ардуиновские модули даже удобнее использовать. На "борту" usb/com есть. Если бы они ещё DTR И RTS на пины ардуины вывели было б вообще хорошо. Хотя DTR для ресета используется. Но пару проводов припаять не есть проблема. Заменой кренки переводится на питание 3,3 вольта.
239982

239981

Но сам компилятор ардуины я не использую. Не хватит ни какой памяти или надо оптимизировать стандартные библиотеки выкинув лишнее что не будешь использовать.
А так в 32к всё влазит и ещё место есть.

Владимир_К
08.08.2016, 14:18
Геннадий здравствуйте. Я хочу именно на ардуинке, что бы легко было, что-то поправить и сразу видеть результат. На данный момент, это самое простое решение, не требует ни программаторов ни спецсофта. Просто среда ардуино и usb шнурок.
Не заморачивайтесь Вы с Ардуиной. У меня самодельная Ардуинка, но пишу на стандартном С в среде WinAvr. На нем очень много готовых разработанных программ. Для того, чтобы программы из WinAVR грузились в Ардуино, надо изменить всего две строчки в файле "Makefile", который присутствует в любом проекте в среде WinAvr. То есть, скачиваете и устанавливаете WinAvr 2010, он бесплатный, потом качаете нужный Вам исходник, например тот, что предлагает Геннадий, открываете "Makefile", в нем меняете тип программатора и указываете порт к которому подключена Ваша плата. Теперь Ваша Ардуина будет грузиться из среды WinAVR. Что и как изменить, подробно здесь:
http://snippets.artvolk.sum y.ua/view/113/ispolzovanie-arduino-platy-s-winavr
Что это дает? Во-первых, программы на стандартном С занимают значительно меньший объем памяти, во-вторых Вы приобщаетесь к стандартному языку программирования. И не надо ничего дополнительно. У Вас все есть. Единственное - у меня Ардуино с физическим Com-портом, поэтому я пишу в файле сом1, у Вас будет какой-то виртуальный.

gudzon-m
08.08.2016, 14:57
Друзья! Всем спасибо за заботу и советы. Но я попросил помощи в виде написания программы за денежку. Если бы у меня получалось программировать, то и не было данной темы. Но к сожалению, видимо у меня голова устроенна так, что не могу самостоятельно писать программы. И именно потому, что не получается у меня программировать я прошу помощи. Я понимаю, что бесплатно никто ничего делать не будет и потому предложил скромное вознаграждение.
Спасибо за понимание.

RST-599
08.08.2016, 15:45
Я же предложил. 2000тыс зелёных рублей. Сегодня скидка. За 1799 могу взять под ключ написать с высылом макета.

R2DHG
08.08.2016, 15:59
Но к сожалению, видимо у меня голова устроенна так, что не могу самостоятельно писать программы. И именно потому, что не получается у меня программировать я прошу помощи.
Судя по хотелкам у вас вызывает затруднение даже переключение шага. Не очень понятно что вы в коде собрались менять при таком раскладе. Задел на будущее ? :-P

gudzon-m
08.08.2016, 17:08
RST-599, да чтож вы такой упертый (или упоротый) не даст вам ни кто не 2КК$ не 2К$ в моем случае, я вам даже 20$ не дам. Идите стройте свою станцию.
Модераторы, примите меры.
Спасибо.

Добавлено через 16 минут(ы):


Не очень понятно что вы в коде собрались менять при таком раскладе. Задел на будущее ?
Ну в общем да. Да и не только же я буду править, скетч то будет выложен в свободный доступ. ;-)

R2DHG
08.08.2016, 17:23
Да к ним особого интереса нет у народа. Видимо кому синтезатор надо - берут более менее готовую конструкцию и собирают, а кому поковыряться - как то сами ковыряются или их просто мало очень.

Alex-31
08.08.2016, 18:39
R2DHG, есть третий вариант - авторы конкретных конструкций помогают только по своим конструкциям,

потому что в большинстве случаев легче написать свою программу, чем разобраться в чужой!


вы такой упертый (или упоротый)

ra6ljm
08.08.2016, 19:26
ur3ilf,
Я,так понимаю, вы показали новый синтез на сишке?
Дадите подробно?
Спасибо.

ur3ilf
08.08.2016, 20:33
Всему своё время. Из документации схема пока только в протеусе. Да и вряд ли оно заинтересует кого то для повторения. Там только одних кнопок 18 штук.

R2DHG
08.08.2016, 21:13
потому что в большинстве случаев легче написать свою программу, чем разобраться в чужой!
Ну это когда как и зависит от объема переделок под себя.