Jednoduchý programátor PLL syntezátorů se sériovým vstupem
Úvod
Občas potřebuji vyrobit zdroje kmitočtu v gigahertzových pásmech. Komu by
se však chtělo vyrábět násobiče nebo objednávat krystaly přesných hodnot,
když existují napětím řízené oscilátory a programovatelné děličky. V
zásobě mám několik ks velice levného a
dostupného typu MB15E07. Obvod
obsahuje obvody oscilátoru (lze přivádět i kmitočet z normálu),
několik programovatelných čítačů (pulse swallow funkce je v datasheetu na
str. 8) a programovatelný obvod fázového závěsu. Předdělič (prescaler) funguje do 2.5 GHz,
což znamená, že na jeho vstup lze přivádět frekvence z VCO až do tohoto
kmitočtu. Všechno se programuje sériově, po třech
drátech. Do uvedeného syntezátoru je třeba poslat 2 krát 19 bitů a tím se
nastaví všechny parametry. Jak se to dělá, je popsáno v datasheetu hned za
swallow funkcionalitou. V dalších článcích uvedu některé aplikace s tímto
obvodem, teď
je to nad rámec článku jednoduchého programátoru.
Realizace
Realizace prvního programátoru byla vidlácká. Nakonec to tak skončí vždy,
když tomu nechcete věnovat příliš času. Sáhl jsem do krabiček po
jednoduché součástce - procesoru PICAXE 08M2. Procesor vyžaduje minimum
vnějších součástek a lze ho programovat přímo ze sériového portu (USB to
Serial konvertoru). Výrobci dodávají k programování několik vývojových
prostředků, včetně kompilátoru jazyka Basic. Basic je velice jednoduchý a
umožňuje práci s jednoduchým nastavením logické úrovně na pinu součástky.
Např. instrukce high C.1 nastaví na pinu C.1 úroveň "high" nebo low C.0
nastaví na pinu C.0 úroveň "low", atd. Proto mě před léty napadla ta
zrůdná myšlenka, proč se psát s programem na komunikaci do programátoru a
programovat programátor, abych potom s tím vším programoval PLL. Prostě
jsem nasypal těch 2 x 19 bitů přímo do programu procesoru 08M2. Po
připojení k napájecímu napětí se procesor spustí. Po spuštění 6 sekund nic
nedělá (naprogramoval jsem tam pausu). Svítí LED, což znamená, že signál
LE je high. Potom procesor řídí podle programu bity na třech výstupech (LE,
data, clock) a tím nasype do PLL těch potřebných 2 x 19 bitů. Nakonec LED
dioda zabliká a zase svítí trvale. V tom okamžiku je PLL naprogramovaná.
Poznámky:
1. Čip MB15E07 se programuje zapájený a
napájený v pracovním zapojení. Po odpojení napájení se obsah smaže. Aby se
tak nestalo, používám u čipu malou Lion baterii s napětím 3V, zapájenou
přímo do desky.
2. Program v PICAXE 08M2 se po odpojení napájecího napětí nesmaže. Po
připojení napájecího napětí se spustí. Pokud dáme procesor přímo na desku
s čipem MB15E07, procesor nám naprogramuje PLL při každém připojení
napájecího napětí a není třeba použít backup baterii.
3. Pokud zhotovujeme generátor proměnného kmitočtu, používáme procesor
jako kontrolér obvodu PLL. Na vstupy procesoru přivedeme řídící tlačítka
(pokud nastavujeme několik konkrétních kmitočtů) nebo použijeme AD
vestavěného převodníku a potenciometrem můžeme ladit kmitočty. Takový
program sice nenapíšeme za 20 minut (jako u programátoru PLL), padne na to
možná celý večer (já nejsem programátor a tak mi to trvá déle), ale
dokážeme se v tom orientovat po několika minutách studia, jak se to dělá.
Schéma

Vlevo na schématu je konektor Canon DB9
female, který se strká do výstupu z USB to Serial převodníku. Používají se
signály na špičkách 2, 3 a 5, tj. RxD, TxD a GND. Procesor má v
dokumentaci doporučené zapojení 2 rezistorů (10k a 22k). Napájení jsem
zablokoval pomocí keramických MLCC kondenzátorů 10n a 47M/6.3V. Na
výstupní pin C.0 (signál LE a současně serout při zavádění programu) jsem
pověsil LED diodu, abych viděl, v jakém stavu se nachází programátor.
Fotografie

Udělátko napájím 5 V z tzv. power banky.
Když tu hračku programujeme, nasadím samici Canon na USB to Serial
konvertor přímo na notebooku, bez jakéhokoliv kabelu. Když s tím
programuji přístroje, které obsahují PLL syntezátor, PC nepotřebuji. Na
výstupech LE, data, clock a GND je napájen plochý kabel se špičkami k
desce PLL (zrovna není na fotografii). Po propojení zapnutého PLL a
programátoru připojím power banku. Za cca 6 sekund začne udělátko
programovat. Po dokončení (sekundy) zabliká zelená LED a trvale se
rozsvítí. Odpojím powerbanku, odpojím PLL a je hotovo.
Deska
 |
 |
|
|
Plošný spoj
je jednostranný. Dvě zemní plochy jsou propojené jednou drát
propojkou. Je vidět na fotce u konektoru RS-232. Deska je prostrčena
mezi řadami špiček konektorů Canon. Použité špičky jsou připájené. Je
to vidlácké, ale funkční, jednoduché a rychlé.
Deska není vrtaná. To šetří čas. Protože jsem neměl SMD provedení
procesoru (vyrábí se), jednoduše jsem mu uštípl tenké části pinů a
přiletoval ho jako SMD součástku na měď. Také vidlácké. Nikde jsem nic
nevrtal. Programátor byl vyroben za jeden večer, včetně návrhu desky,
osvícení kuprextitu, vyvolání, vyleptání osazení, zapájení, napsání
programu, naprogramování a vyzkoušení.
Související témata
Popsaný vidlácký programátor bylo první udělátko, se
kterým jsem programoval první čip PLL. V druhém případě jsem už vše
zde popsané zmenšil a namaloval a osadil přímo na desku zařízení. A
vyvedl jen konektor k PC. V dalším případě jsem potřeboval nastavovat
a přepínat víc kmitočtů. Vyvedl jsem z procesoru dva piny. Do PLL se
posílá nastavení děliček, které odpovídá požadovaným kmitočtům. Ale to
až zase jindy.... .
Ale neodpustil jsem si pár
kverulantských řečí a názorů kolem používání mikropočítačů v rolích
kontrolérů amatérských konstrukcí. |
|