реклама на сайте
подробности

 
 
4 страниц V  < 1 2 3 4 >  
Reply to this topicStart new topic
> ATmega8 + lmx2326, управляющее слово
Genadi Zawidowsk...
сообщение Apr 9 2009, 20:54
Сообщение #31


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Цитата(Павлик @ Apr 9 2009, 21:17) *
Чта за вывод AUX не понятно , в распиновке мс его нету , схему включение я приложил , можно ткнуть на нее.

Вывод 14 - Fo/Ld - можно подключить у выходам любого из делителей.
Multiplexed Output of the RF Programmable or Reference Dividers and Lock Detect. CMOS output.
(See Table 4.)


F[3] F[4] F[5] Fo/LD Output State
0 0 0 TRI-STATE
0 0 1 R Divider Output (fr)
0 1 0 N Divider Output (fp)
0 1 1 Serial Data Output
1 0 0 Digital Lock Detect (See 1.3.2 LOCK DETECT OUTPUT Section)
1 0 1 n Channel Open Drain Lock Detect (See 1.3.2 LOCK DETECT OUTPUT
Section)
1 1 0 Active HIGH
1 1 1 Active LOW

Сообщение отредактировал Genadi Zawidowski - Apr 9 2009, 20:55
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Apr 9 2009, 22:06
Сообщение #32


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(Павлик @ Apr 9 2009, 19:40) *
Вот собственно код вывода данных в синтез , как я уже писал lmx2316 работает без проблем с этим кодом
Криминала не видно. Может дело не в коде? RF частота через емкость на вход подана?


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
pavel-pervomaysk
сообщение Apr 10 2009, 04:47
Сообщение #33


Местный
***

Группа: Свой
Сообщений: 253
Регистрация: 28-12-07
Из: Украина г. Первомайск
Пользователь №: 33 716



Через емкость подана , 39пф стоит у меня , ставил разные - эфект нулевой.
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Apr 10 2009, 07:03
Сообщение #34


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Цитата(Павлик @ Apr 10 2009, 08:47) *
Через емкость подана , 39пф стоит у меня , ставил разные - эфект нулевой.

Ну так посмотрите на выходе (пару битиков поменять - то всего!), все ли нормально с делителями... Самовозбуд во входных каскадах проявляется как подача на вход частоты вблизи верхнего предела для данной микросхемы.
Go to the top of the page
 
+Quote Post
pavel-pervomaysk
сообщение Apr 10 2009, 07:24
Сообщение #35


Местный
***

Группа: Свой
Сообщений: 253
Регистрация: 28-12-07
Из: Украина г. Первомайск
Пользователь №: 33 716



Получил еще пару новых микросхем другой партии.
Все работает , оказались просто дохлые МС , продавцов нужно maniac.gif smile3009.gif

Приведенный код работает без проблем , тему можно закрыть.
Go to the top of the page
 
+Quote Post
Pat
сообщение Jun 9 2010, 15:22
Сообщение #36


Местный
***

Группа: Свой
Сообщений: 421
Регистрация: 27-05-05
Из: Энергодар
Пользователь №: 5 480



Доброго здоровья всем.

Проблема с LMX2306

Рассчитываю коэфф. деления (KD) регистра.
Например
Fosc = 8000 КГц
Fstep = 5 КГц

KD = 8000/5 = 1600

Сдвигаю его влево на 2 разряда.
KD <<= 2
и записываю это значение в R регистр LMX2306
потом конфигурирую регистр FUNCTION LATCH на вывод частоты R делителя, на ножку
FoLD
Контролирую частоту на FoLD и получаю 20КГц вместо 5 КГц.
Если задать другой KD то на выходе будем иметь частоту в 4 раза выше ожидаемой.

Если сделать так KD <<= 4 то все в норме, но этого же не должно быть.

Если проделать аналогичное с N регистром то все в порядке.

Все регистры пишутся одной функцией.
Запись в FUNCTION LATCH тоже в норме (экспериментировал с выводом на ножку FoLD)

Подскажите может что не дочитал, но судя по этой ветке никаких особенностей нет.
Go to the top of the page
 
+Quote Post
Pat
сообщение Jun 9 2010, 19:49
Сообщение #37


Местный
***

Группа: Свой
Сообщений: 421
Регистрация: 27-05-05
Из: Энергодар
Пользователь №: 5 480



Ура заработало (С) Матроскин

Только расскажешь о своей проблеме и сразу идеи в голову лезут.

Разделительный конденсатор на 8 выводе OSCIn оказался маловат.

Схему включения подсмотрел не в Datasheet, а там кондер стоял 100 пФ.
Поставил 1000 пФ все заработало.

Однако глюк интересный получился частота четко в 4 раза была больше.

Может влияет то что тактирую LMX2306 положительными импульсами, с вывода MCO, STM32.
Go to the top of the page
 
+Quote Post
ASDFG123
сообщение Jan 3 2013, 16:28
Сообщение #38


Частый гость
**

Группа: Участник
Сообщений: 165
Регистрация: 2-01-13
Пользователь №: 75 042



ДД. Как правильно посылать биты на LMX2326 ? допустим N counter
10 00000 000100000000 это правильно, для делителя 256 ? с1 с2 впереди при передаче задом наперед.
01 00 010 000000000000 это выход Fo/ld на N counter ?
в каком порядке надо все это записывать, надо ли записывать R counter?
и для чего режим с1 с2 [1,1] ?
в самом начале темы еще был вопрос, аппаратный SPI в авр передает токо байтами, и как себя ведет LMX если передать ей 24 бит и только потом LE =1 ?

пока разбираюсь только с прескаллером, но хочу сделать генератор/частотомер приборчик.
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Jan 3 2013, 20:36
Сообщение #39


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Цитата(ASDFG123 @ Jan 3 2013, 20:28) *
ДД. Как правильно посылать биты на LMX2326 ? допустим N counter
10 00000 000100000000 это правильно, для делителя 256 ? с1 с2 впереди при передаче задом наперед.
01 00 010 000000000000 это выход Fo/ld на N counter ?
в каком порядке надо все это записывать, надо ли записывать R counter?
и для чего режим с1 с2 [1,1] ?
в самом начале темы еще был вопрос, аппаратный SPI в авр передает токо байтами, и как себя ведет LMX если передать ей 24 бит и только потом LE =1 ?

пока разбираюсь только с прескаллером, но хочу сделать генератор/частотомер приборчик.


c2, c1 - это всегда последние два бита в передаче.
Кладите в регистр SPI передатчика, передающего старшим битом вперёд значения (не переворачивая ничего!) - старшие раньше, потом младшие - и передавайте. Всё там нормально.

Да, воспринимаются последние перед подъёмом LE биты. т.е., дополняете первыми нулями до 24 бит.
SPI в MODE3, если что.

Сообщение отредактировал Genadi Zawidowski - Jan 3 2013, 20:41
Go to the top of the page
 
+Quote Post
ASDFG123
сообщение Jan 5 2013, 15:22
Сообщение #40


Частый гость
**

Группа: Участник
Сообщений: 165
Регистрация: 2-01-13
Пользователь №: 75 042



Спасибо
Цитата(Genadi Zawidowski @ Jan 4 2013, 02:36) *
SPI в MODE3

третий режим это же CLOСK=1 и смена данных при падении уровня? с даташитом чет не совпадает.
режим 0


режим 3


а вот даташит

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

п.с Genadi Zawidowski вы DDS синтезаторами типа AD9959 не занимались ?

Сообщение отредактировал ASDFG123 - Jan 5 2013, 15:24
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Jan 6 2013, 00:29
Сообщение #41


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



AD9959 не занимался.
В даташите видно, что данные защёлкиваются по нарастающему фронту.
В том устройстве, что у меня есть, на SPI может быть только MODE3 и MODE2.
Соберите макет и попробуйте с разными SPI MODE, если 3-й не нравится, расскажете...

Скажу честно, отдельно прескалер от всего я не проверял...
Если Вам хочется просто предделитель сделать - программируйте все регистры (там, в даташите, написано о приостановке счёта N после пограммирования R, если не ошибаюсь). Короче, в даташите ВСЁ написано.
Исходники программ я выкладывал, последовательности проверенны.

Сообщение отредактировал Genadi Zawidowski - Jan 6 2013, 00:38
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Jan 15 2013, 20:31
Сообщение #42


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Цитата(ASDFG123 @ Jan 5 2013, 19:22) *
Спасибо


Вы случайно в лифте с собственной программой не застряли?
Есть успехи/вопросы/радости? Поделитесь...
Go to the top of the page
 
+Quote Post
ASDFG123
сообщение Feb 24 2013, 13:12
Сообщение #43


Частый гость
**

Группа: Участник
Сообщений: 165
Регистрация: 2-01-13
Пользователь №: 75 042



на работу устроился, приходится там чужими косяками заниматься, и еще дипломку дописываю, делаю схему в альтиуме, (заодно осваиваю). Но пока с коммутацией не разобрался. То есть разделять режимы частомер/генератор, вход rf должен работать входом делителя для частотомера, а в режиме генер делительтелем с выхода гуна.
П.с в качестве гуна что лучше применять готовый типа ROS-200-619+ или сборный на транзисторах?
Go to the top of the page
 
+Quote Post
-VenoM-
сообщение Nov 11 2013, 15:23
Сообщение #44





Группа: Новичок
Сообщений: 4
Регистрация: 9-10-13
Пользователь №: 78 656



Товарищи, день добрый! Стараюсь победить LMX2347. Инициализация, вроде, проходит успешно. Но частота скачет в пределах 2кГц, деление происходит непонятно. учитывая что подаю сигнал с кварцевого резонатора, он очень стабильный (и то то другое контролирую ч3-63/1 поверенным).


Вот как у меня странно делится частота (в качетве примера, коэф. деления брал любые):

1. подаю 25.000.00 Гц. В=3,A=3 --> N=99. Т.е. 25.000.00/100=25.000. У меня почему-то 18.000.00
2. подаю 25.000.00 Гц. В=7,А=3 --> N=227. Т.е. 25.000.00/227=11013. У меня почему-то 7.712.00
2. подаю 25.000.00 Гц. В=11,А=3 --> N=355. Т.е. 25.000.00/355=7042. У меня почему-то 4.908.00

Ну и так далее. Т.е. микросхема реагирует на конфигурацию, выключается, включается, меняется коэфф. деления, но где-то ошибка.

Код инициализации.

CODE
/*настройка микросхемы lmx_2347
Порядок настройки:
1. Запись в регистр "N". NB_CNTR [9:0]=0000000011, NA_CNTR[4:0]=00011, PD[1:0]=00, ADDR=0.
Коэфф. деления N=32*B+A, B>=A. В=3,A=3 --> N=99
2. Запись в регистр "R". R_OPT[2:0]=000, LD_OUT[1:0]=11, PD_POL=1, CP_TRI=1,
R_CNTR[9:0]=0000000000, ADDR=1*/
void lmx_2322_tune(void)
{
/*1. Запись в регистр "N"*/
char i;
lmx_cfgL=0b00000000;//последние 2 бита
lmx_cfgM=0b11000110;//следующие 8 бит
lmx_cfgH=0b00000000;//первые 8 бит, начиная с MSB
//LMX_LE=1;
Delay10TCYx(1);//задержка 240нс
LMX_LE=0;
LMX_CLK=0;
Delay10TCYx(1);
Delay1TCY();

for(i=7;i>=0;i--)
{
LMX_DATA=(lmx_cfgH>>i)&0b00000001;
//Delay1TCY();
LMX_CLK=1;
Delay10TCYx(1);//задержка 240нс
LMX_CLK=0;
Delay10TCYx(1);//задержка 240нс
}

for(i=7;i>=0;i--)
{
LMX_DATA=(lmx_cfgM>>i)&0b00000001;
//Delay1TCY();
LMX_CLK=1;
Delay10TCYx(1);//задержка 240нс
LMX_CLK=0;
Delay10TCYx(1);//задержка 240нс
}

for(i=7;i!=5;i--)
{
LMX_DATA=(lmx_cfgL>>i)&0b00000001;
//Delay1TCY();
LMX_CLK=1;
Delay10TCYx(1);//задержка 240нс
LMX_CLK=0;
Delay10TCYx(1);//задержка 240нс
}

Delay10TCYx(1);//задержка 240нс
Delay10TCYx(1);//задержка 240нс
LMX_LE=1;
Delay10TCYx(1);//задержка 240нс
LMX_LE=0;

/* 2. Запись в регистр "R"*/

lmx_cfgL=0b01000000;
lmx_cfgM=0b00000000;
lmx_cfgH=0b00011110;
Delay10TCYx(1);//задержка 240нс
LMX_LE=0;
LMX_CLK=0;
Delay1TCY();

for(i=7;i>=0;i--)
{
LMX_DATA=(lmx_cfgH>>i)&0b00000001;
LMX_CLK=1;
Delay10TCYx(1);//задержка 240нс
LMX_CLK=0;
Delay10TCYx(1);//задержка 240нс
}

for(i=7;i>=0;i--)
{
LMX_DATA=(lmx_cfgM>>i)&0b00000001;
LMX_CLK=1;
Delay10TCYx(1);//задержка 240нс
LMX_CLK=0;
Delay10TCYx(1);//задержка 240нс
}

for(i=7;i!=5;i--)
{
LMX_DATA=(lmx_cfgL>>i)&0b00000001;
LMX_CLK=1;
Delay10TCYx(1);//задержка 240нс
LMX_CLK=0;
Delay10TCYx(1);//задержка 240нс
}

Delay10TCYx(1);//задержка 240нс
LMX_LE=1;

}


Схема, по которой включаю (сделал переходную платку для макета). Частоту подаю на вход Fin.


Сообщение отредактировал IgorKossak - Nov 11 2013, 21:43
Причина редактирования: [codebox] для длинного кода, [code] - для короткого!!!
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Nov 17 2013, 01:05
Сообщение #45


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



1) есть в даташите параметр - минимальная частота - для Fin она 200 МГц.
2) B должно быть не менее A
Цитата
Divide ratios less than 992 are achievable as long as the binary counter value is greater or equal
to the swallow counter value (NB_CNTR ≥ NA_CNTR)


Сообщение отредактировал Genadi Zawidowski - Nov 17 2013, 01:06
Go to the top of the page
 
+Quote Post

4 страниц V  < 1 2 3 4 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 14th July 2025 - 10:52
Рейтинг@Mail.ru


Страница сгенерированна за 0.01513 секунд с 7
ELECTRONIX ©2004-2016