Функциональный генератор на AD9850

alex286
Offline
Зарегистрирован: 16.07.2012

Здравствуйте! 

У меня вопрос к обществу.. Собрал на коленке такой вот прибор



В принципе ничего не менял(немного поправил плату под свой корпус), по причине того, что нет никакого, и он так нужен, что даже такому рад.. Схема простая, реализация ПО на IDE Arduino. Шороховатости по поводу вращения энкодера и "синхронного" соответствующего увеличения/уменьшения показаний вполне поправимы в коде программы, это несложно.



У меня другое, генератор не работает!!! 

Пару раз случайно, при подаче питания, видел на осциллографе "змейку", не более.. Только шум.. 



Интернет ничего не дал, а вот "понимание кода" дальше энкодеров у меня не хватило.. В даташите только цифры понятно, остальное не очень..



Может там проблема с инициализацией? 
Сама AD9850 должна что-то выдавать после подачи питания? 




При питания +5в, схема потребляла более 350-400 мА и страшно грелась микросхема AD9850. По советам на форумах перевел "всю конструкцию" на пониженное питание (с помощью цепочки диодов). И теперь при +3,6 вся схема потребляет не более 150 мА. С этим все нормально, но все равно не работает!!!. sclerosis.gif 





У кого-нить было, чтобы китайская плата не работала? 

Еще есть мысли? 

alex286
Offline
Зарегистрирован: 16.07.2012

ссылка на страничку скодом и конструкцией..  http://vwlowen.co.uk/arduino/AD9850-waveform-generator/AD9850-waveform-generator.htm

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

alex286, почитайте сообщения 34-35

PS И да, я питаю от 5 вольт и чип холодный.

alex286
Offline
Зарегистрирован: 16.07.2012

Была такая "мысля", смотрел еще до обращения на форум. Вроде все правильно, как в с теме на первом посте. Где-то прочитал, что надо "покрутить  переменник".. "Покрутил"... не помогло.. Правда на вид, он уже был перепаян.. Видимо до меня кто-то "крутил".. :)

P.S. 125 МГц на на кварцевом генераторе есть , устойчивое, осциллографом смотрел.. Может действительно, что с нициализщацией.. Не рублю я в этом..

 

 

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

alex286, я видимо не донёс до вас мысль -ещё раз повторяю чип должен быть холодный. Причём тут инициализация? Раз греется значит аппаратные проблемы, в той теме осбуждалось.

ЕвгенийП
ЕвгенийП аватар
Онлайн
Зарегистрирован: 25.05.2015

alex286 пишет:

У кого-нить было, чтобы китайская плата не работала? 

alex286
Offline
Зарегистрирован: 16.07.2012

Очень интересное наблюдение..

Я вот например за ТРИ дня не нашел ни одного сообщения, что у кого оказалась не рабочая плата и  им пришлось открывать диспут с китайцами..

Поэтому спрашиваю и не получаю ответа  на прямой вопрос,  - "должен-ли генератор ЧТО_ТО выдавать на выходе"  при подключении ТОЛЬКО  питания?  Да/Нет?   и все .. :)

DeGlucker
Offline
Зарегистрирован: 23.07.2014

Без инициализации НЕ должен

alex286
Offline
Зарегистрирован: 16.07.2012

Спасибо! :)

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

alex286 пишет:

Очень интересное наблюдение..

Я вот например за ТРИ дня не нашел ни одного сообщения, что у кого оказалась не рабочая плата и  им пришлось открывать диспут с китайцами..

Поэтому спрашиваю и не получаю ответа  на прямой вопрос,  - "должен-ли генератор ЧТО_ТО выдавать на выходе"  при подключении ТОЛЬКО  питания?  Да/Нет?   и все .. :)

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

alex286
Offline
Зарегистрирован: 16.07.2012

Заказад новую плалу.. Правда время прошло и уже забыл какую надо, поэтому  и заказал на AD9851..  Даже попробовал вставить плату с AD9851 в прибор, который лежит на полке, такой красивый,  и .. неработающий.. Естественно не работает... 

Посмотрел, что эти микросхемы РАЗНЫЕ... (инициализация по разному вроде)..  Приехали.. В кодинге я не бум-бум, да и некогда..

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

alex286, да там делов то -частоту в дефайне поменять и в функции sendFrequency последний байт не нолик а единичку

alex286
Offline
Зарегистрирован: 16.07.2012

Да, но  я вообще не уверен, что код работает.. хотя наверное стоит попробовать..

Не поможешь поправить?  Скомпилировать то я скорее всего как-то сам смогу..

http://www.vwlowen.co.uk/arduino/AD9850-waveform-generator/AD9850-waveform-generator.htm

Вот собрал, как в статье... и не работает.. "обыдна-да"..

Morroc
Offline
Зарегистрирован: 24.10.2016

Вот тут

  tfr_byte(0x000);                     // Final control byte, all 0 for 9850 chip

поменять на

  tfr_byte(0x001);                     // Final control byte, 1 for 9851 chip

а вот тут

#define AD9850_CLOCK 125000000         // Module crystal frequency. Tweak here for accuracy.

на

#define AD9850_CLOCK 180000000         // Module crystal frequency. Tweak here for accuracy.

Весь код не знаю, а куски работы с DDS выглядят рабочими.

Если не заработает попробуем что нибудь простое залить и дальше пошагово. Жалко ведь если уж собран.

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

Morroc пишет:

Если не заработает попробуем что нибудь простое залить и дальше пошагово. Жалко ведь если уж собран.

напиши автору, радиолюбители люди отзывчивые

alex286
Offline
Зарегистрирован: 16.07.2012

Спасибо.. попробую подсказку, а если ничего не получится  наверное так и сделаю..

Vlad6511
Offline
Зарегистрирован: 22.02.2018

На ардуино не будет работать, но собирать чисто на кристалле atmega328p. Сам проверил, работает.