Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: AD9913
Форум разработчиков электроники ELECTRONIX.ru > Аналоговая и цифровая техника, прикладная электроника > Цифровые схемы, высокоскоростные ЦС
gladkih
Здравствуйте форумчане. Обращаюсь с вопросами к вам. Вот моя проблема. Собрал схему ПИК24ФЙ64ЖА004+АД9913. Ну соответственно с обвязкой. Обвязку АД брал брал из AD9913 EVALUATION BOARD. Так вот зашил прогу в контроллер включил внешний кварцевый резонатор. Глянул на 9-ю ногу микрухи а там непонятно что - такое впечатление что просто мусор. Глянул на кварц а там тоже похоже что он не завелся. По умолчанию в АД стоит DIRECT-DRIVEN REF_CLK. Похоже что заливки данных в АД не идет. Взял осцилографом и проверил сигналы ДАТА, КЛОК, ЦС ИНПУТ ОУТПУТ АПДЕЙТ все есть гляньте на заливку данных может что не так делаю
CODE

void AD9954_WRITE (unsigned int64 DATA,unsigned INT8 ADRES)
{


SWITCH (ADRES)
{
CASE 0:CASE 3:CASE 2:CASE 8:
{
LEN=4;BREAK;
}
CASE 1:CASE 4:CASE 5:
{
LEN=2;BREAK;
}
CASE 9:CASE 10:CASE 11:CASE 12:CASE 13:CASE 14:CASE 15:CASE 16:
{
LEN=6;BREAK;
}
CASE 6:CASE 7:
{
LEN=8;BREAK;
}
}

OUTPUT_LOW(IO_CS);

for(data_count=8; data_count!=0; --data_count)
{
//DELAY_mS(100);
output_LOW(IO_SYNC);//DELAY_mS(100);
if (bit_test(ADRES,data_count-1))
{output_HIGH(IO_SDIO);}
else
{output_LOW(IO_SDIO);}
//DELAY_mS(100);
output_HIGH(IO_SYNC);
}
//DELAY_mS(100);
output_LOW(IO_SYNC);//DELAY_mS(100);
output_LOW(IO_SDIO);


DELAY_mS(1);

WHILE(LEN!=0)
{

for(data_count=LEN*8; data_count>(LEN-1)*8; --data_count)
{ //DELAY_mS(100);
output_LOW(IO_SYNC);//DELAY_mS(100);
if (bit_test(DATA,data_count-1)==1)
{output_HIGH(IO_SDIO);}
else {output_LOW(IO_SDIO);}
//DELAY_mS(100);
output_HIGH(IO_SYNC);
}
//DELAY_mS(100);
output_LOW(IO_SYNC);
//DELAY_mS(100);
output_LOW(IO_SDIO);


--LEN;
}
//DELAY_mS(100);
OUTPUT_HIGH(IO_CS);

OUTPUT_HIGH(IO_UPDATE);
DELAY_mS(1);
OUTPUT_LOW(IO_UPDATE);

Осцилографом смотрел все сигналы соответствуют даташиту. Ниже заливка данных в АД
CODE

init_AD9913();

AD9913_RESET();

AD9954_WRITE (0x08000000,DDS_AD9913_CFR1);
AD9954_WRITE (0x027a,DDS_AD9913_CFR2);
AD9954_WRITE (0x007F00F,DDS_AD9913_DAC_Control_Register );
AD9954_WRITE (0x008624D0,DDS_AD9913_FTW);
DELAY_MS(2);


И еще на 9-й ноге должен быть какой сигнал - частота кварца или частота кварца пропущенная через умножитель и делитель?

alexPec
Цитата(gladkih @ Jun 25 2011, 21:46) *
Здравствуйте форумчане. Обращаюсь с вопросами к вам. Вот моя проблема. Собрал схему ПИК24ФЙ64ЖА004+АД9913. Ну соответственно с обвязкой.

Я ставлю кварц 25 МГц. Конденсаторы 15 пф, все заводится сразу после включения. Питание проверьте НА ВСЕХ ногах. У меня на одной не было - пол микросхемы работало (PLL не лочился). Долго искал почему. А из интерфейса записанное читается?
gladkih
Цитата(alexPec @ Jun 26 2011, 10:59) *
Я ставлю кварц 25 МГц. Конденсаторы 15 пф, все заводится сразу после включения. Питание проверьте НА ВСЕХ ногах. У меня на одной не было - пол микросхемы работало (PLL не лочился). Долго искал почему. А из интерфейса записанное читается?

Большое спасибо за ответ. У меня кварц 20Мгц и 27рФ. Читать не пробовал. На ногах кварца генерация есть но почему то амплитуда всего 10мВ. Если подать ресет на АД то и генерация прекращается.
mdmitry
По схеме:
Сколько конденсаторов по питанию? На каждой паре выводов питания присутствуют?
Не понятно, что подсоединено в качестве нагрузки по выходу.
Задающий генератор (см. рис. 27 DS) и внимательно читаем примечание на схеме (стр 1) из AD9913_RevC_Schematic.pdf (У нас был внешний источник)

Использовали параллельный режим загрузки, поэтому ничего конкретного не скажу. Надо точно выдержать всю временную диаграмму. Контроллер был не PIC. С ними не работал вообще.
gladkih
Цитата(mdmitry @ Jun 27 2011, 18:24) *
По схеме:
Сколько конденсаторов по питанию? На каждой паре выводов питания присутствуют?
Не понятно, что подсоединено в качестве нагрузки по выходу.
Задающий генератор (см. рис. 27 DS) и внимательно читаем примечание на схеме (стр 1) из AD9913_RevC_Schematic.pdf (У нас был внешний источник)

Использовали параллельный режим загрузки, поэтому ничего конкретного не скажу. Надо точно выдержать всю временную диаграмму. Контроллер был не PIC. С ними не работал вообще.

Меня сейчас интересует вот что. На кварце почему то низкий уровень генерации. на выводе 9-м генерации нет. Питание везде есть. Я уже по пятому разу проверил. По питанию есть кондеры по 0.1мкФ возле каждой ножки питания и рядом по питанию электролит.
mdmitry
Цитата(gladkih @ Jun 27 2011, 23:26) *
На кварце почему то низкий уровень генерации. на выводе 9-м генерации нет.

Вы проверели
Цитата
Задающий генератор (см. рис. 27 DS) и внимательно читаем примечание на схеме (стр 1) из AD9913_RevC_Schematic.pdf
?
Там схема включения отличается от Вашей.
gladkih
Цитата(mdmitry @ Jun 27 2011, 23:05) *
Вы проверели
?
Там схема включения отличается от Вашей.

Чем именно отличается? И еще насчет примечания? Уровень генерации проверял осцилографом
mdmitry
Цитата(gladkih @ Jun 28 2011, 00:19) *
Чем именно отличается? И еще насчет примечания? Уровень генерации проверял осцилографом


Из примечания (AD9913_RevC_Schematic.pdf):
Цитата
STANDARD BOM: DO NOT INSTALL BOXED COMPONENTS
IF USING X2 FOR REF CLK: INSTALL BOXED COMPONENTS AND REMOVE C100 & C101.



У Вас есть отличия: не убраны конденсаторы С, есть резисторы R и т.д.

При подключении осциллографа Вы вносите потери потери во времязадающие цепи и возможно изменение режима работы. Бывало, что контроллеры переставали работать.
gladkih
Цитата(mdmitry @ Jun 27 2011, 23:35) *
Из примечания (AD9913_RevC_Schematic.pdf):



У Вас есть отличия: не убраны конденсаторы С, есть резисторы R и т.д.

При подключении осциллографа Вы вносите потери потери во времязадающие цепи и возможно изменение режима работы. Бывало, что контроллеры переставали работать.

Уважаемый mdmitry. Напишите пожалуйста конкретнее какие конденсаторы и резисторы надо убрать. Заранее благодарен.
mdmitry
Цитата(gladkih @ Jun 28 2011, 00:56) *
Напишите пожалуйста конкретнее какие конденсаторы и резисторы надо убрать.

Так как на Вашей схеме нет позиционных обозначений, то просто сравните Вашу схему со схемой от AD. У Вас должно остаться только то,что в обозначено прямоугольником OPTIONAL из указанной мной ссылки.
gladkih
Цитата(mdmitry @ Jun 28 2011, 00:05) *
Так как на Вашей схеме нет позиционных обозначений, то просто сравните Вашу схему со схемой от AD. У Вас должно остаться только то,что в обозначено прямоугольником OPTIONAL из указанной мной ссылки.

короче отпаять С100 и С101? щас попробую

Цитата(gladkih @ Jun 28 2011, 00:07) *
короче отпаять С100 и С101? щас попробую

Отпаял - ниче не поменялось. Добавлю что при снятии сброса с АД ток потребления схемы увеличивается на 10мА
gladkih
Цитата(gladkih @ Jun 28 2011, 00:19) *
короче отпаять С100 и С101? щас попробую


Отпаял - ниче не поменялось. Добавлю что при снятии сброса с АД ток потребления схемы увеличивается на 10мА


Народ огромное спасибо всем за ответы. Как обычно все поломки это либо есть контакт там где не надо либо нет контактам там где надо. В моем случае я лажанулся и не подал питание на AVDD_CLK. Запаял и пошла сразу нормальная генерация кварцем и на выходе микрухи появились импульсы. tort.gif
gladkih
форумчане подскажите вот что. на ноге sync_clk почему то либо логическая 1 если разрешена выдача тактов на ногу или 0 если запрещена. такты на ней я вижу только когда подаю сброс на микруху. в сфр1 посылаю все нули.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.