|
программирование синтезаторов частоты |
|
|
|
May 4 2008, 15:31
|
Группа: Участник
Сообщений: 12
Регистрация: 1-05-07
Пользователь №: 27 434

|
Доброго времени суток Недавно приобрёл по случаю несколько микросхем синтезаторов частоты TSA5512, LMX1501, LC72131, LC7218, UMA1014. Было желание рассчитать синтезатор на диапазон 140 -160 МГц, приспособить к нему PIC16F628 или PIC12F629 (потому что они есть и есть скромный опыт написания программ к ним), НО ПОИСК НЕ РУЛИТ... В Инете не нашел расчет коэффициентов деления для них (по крайней мере на родном русском), длятого чтобы написать к ним программу. На LM7001 вроде есть русскоязычная информация, но низковата верхняя частота и велик шаг перестройки. На другие синтезаторы даташиты нашел (не хочу застрять в английском). Может кто подкинет ссылочку на подробное описание их программирования, или какие примеры применения. Заранее спасибо Желающим помочь - даташиты
|
|
|
|
|
 |
Ответов
|
May 5 2008, 17:12
|
Участник

Группа: Участник
Сообщений: 73
Регистрация: 6-11-07
Пользователь №: 32 085

|
Сам сталкивался только с LMX2306 и LMX2316, но они управляются так же как и LMX1501A: 1) передаются 20 бит команды установки режимов 2) потом 21 бит значения коэффициента деления частоты опорного генератора 3) и последнее - 21 бит - значение коэффициента деления частоты ГУН Для унификации подпрограмм передачи в команде установки режимов я передавал тоже 21 бит (добавлял вперед 0).
Программно реализовывал на асме. Вот кусок кода:
; Определение портов out_port equ PORTB ; Порт для вывода команд на синтезаторы out_tris equ TRISB clk equ 2 ; синхронизация по битам dat equ 1 ; данные le1 equ 0 ; синхронизация по командам синтезатора гетеродина
; какой-то код...
osc_del ; Передача значения коэффициента деления частоты опорного генератора ;----------------------------------------------------------------------------- movlw b'0000000' movwf part1 movlw b'0010100' movwf part2 movlw b'0000000' movwf part3 call wr_comand_1 ;----------------------------------------------------
;тут еще что-нибудь...
; Подпрограммы для работы с LMX ;=============================================================================== ====
wr_comand_1 ; Подпрограмма передачи команды на синтезатор гетеродина ;---------------------------------------------------------------------------------- bcf out_port, le1 nop movf part1, W movwf part call wr_part movf part2, W movwf part call wr_part movf part3, W movwf part call wr_part nop bsf out_port, le1 return ;----------------------------------------------------------------------------------
wr_part ; Подпрограмма передачи одной из 3-ех 7-разрядных частей команды для LMX2316 ;------------------------------------------------------------------------------ movlw h'07' movwf count wr_loop btfsc part, 6 bsf out_port, dat nop bsf out_port, clk nop bcf out_port, clk nop bcf out_port, dat rlf part, W rlf part, F decfsz count, F goto wr_loop return ;------------------------------------------------------------------------------
А временные нормы есть в даташите. Этот код был для контроллера с кварцем 5МГц, никаких задержек между командами не было.
P.S. Не нашел тегов для кода, так что надеюсь, выглядит читаемо.
Сообщение отредактировал *antzol* - May 5 2008, 17:16
|
|
|
|
|
May 6 2008, 16:20
|
Группа: Участник
Сообщений: 12
Регистрация: 1-05-07
Пользователь №: 27 434

|
Цитата(*antzol* @ May 5 2008, 23:12)  Сам сталкивался только с LMX2306 и LMX2316, но они управляются так же как и LMX1501A: 1) передаются 20 бит команды установки режимов 2) потом 21 бит значения коэффициента деления частоты опорного генератора 3) и последнее - 21 бит - значение коэффициента деления частоты ГУН Для унификации подпрограмм передачи в команде установки режимов я передавал тоже 21 бит (добавлял вперед 0).
Программно реализовывал на асме. Вот кусок кода:
; Определение портов out_port equ PORTB ; Порт для вывода команд на синтезаторы out_tris equ TRISB clk equ 2 ; синхронизация по битам dat equ 1 ; данные le1 equ 0 ; синхронизация по командам синтезатора гетеродина
; какой-то код...
osc_del ; Передача значения коэффициента деления частоты опорного генератора ;----------------------------------------------------------------------------- movlw b'0000000' movwf part1 movlw b'0010100' movwf part2 movlw b'0000000' movwf part3 call wr_comand_1 ;---------------------------------------------------- ;тут еще что-нибудь...
; Подпрограммы для работы с LMX ;=============================================================================== ====
wr_comand_1 ; Подпрограмма передачи команды на синтезатор гетеродина ;---------------------------------------------------------------------------------- bcf out_port, le1 nop movf part1, W movwf part call wr_part movf part2, W movwf part call wr_part movf part3, W movwf part call wr_part nop bsf out_port, le1 return ;----------------------------------------------------------------------------------
wr_part ; Подпрограмма передачи одной из 3-ех 7-разрядных частей команды для LMX2316 ;------------------------------------------------------------------------------ movlw h'07' movwf count wr_loop btfsc part, 6 bsf out_port, dat nop bsf out_port, clk nop bcf out_port, clk nop bcf out_port, dat rlf part, W rlf part, F decfsz count, F goto wr_loop return ;------------------------------------------------------------------------------
А временные нормы есть в даташите. Этот код был для контроллера с кварцем 5МГц, никаких задержек между командами не было.
P.S. Не нашел тегов для кода, так что надеюсь, выглядит читаемо. Спасибо за помощь, уже есть зацепка, буду разбираться На это уйдёт время (основная работа выматывает), как только будет результат обязательно отпишусь С наступающим днём РАДИО, слава Богу есть такие же как и я больные на голову
|
|
|
|
Сообщений в этой теме
vrt90 программирование синтезаторов частоты May 4 2008, 15:31 *antzol* А почему не выразить коэффициенты из формул в дата... May 4 2008, 16:44 vrt90 Цитата(*antzol* @ May 4 2008, 22:44) А по... May 5 2008, 15:22 *antzol* Спасибо.
Вас тоже с наступающим. May 6 2008, 17:59 anaconda Кто может привести 21-битные(по битам) последовате... Jul 6 2008, 08:56 SergM Цитата(anaconda @ Jul 6 2008, 11:56) Кто ... Jul 6 2008, 12:01 anaconda Да спасибо, программку я уже обнаружил. А что знач... Jul 6 2008, 12:09 anaconda Микросхему запрограммировал, а ГУН не работает. Со... Jul 10 2008, 17:56 *antzol* А ФНЧ после фазового детектора рассчитан? Jul 10 2008, 18:13 anaconda ФНЧ рассчитал, результата нет. На 14 ноге LMX 20-4... Jul 15 2008, 18:12 anaconda Может кто-нибудь посоветует, что делать??? Jul 16 2008, 19:24 anaconda Что, никто не поможет? Может быть есть схема ГУНа ... Jul 18 2008, 19:47
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|