|
Kategorie: Diplomové, bakalářské práce |
Tento dokument chci!
Diplomová práce se zabývá návrhem a realizací obvodu potrebných pro sestavení vysílace DRM pro krátkovlnná radioamatérská pásma. Je popsán standard DRM a je upozorneno narozdíly mezi standardem pro rozhlasové vysílání a radioamatérské použití. Uveden je návrh vstupních audio obvodu, modulátoru, smešovace, místního generátoru, zesilovace a filtru. Použitý SSB modulátor je založen na fázové metode, casto nazývané Tayloeuv modulátor. Tento princip je podrobne rozebrán včetně odvozeného matematického popisu. Vysílač je možné rídit pomocí programu na pocítaci, komunikace probíhá pres sbernici USB. Vytvorení komunikace je v práci také popsáno.
vztahu (11. Nezávisle výsledku dělení RFREQ vynásobeno dvěma, stejně jako DCO.
DCO (unsigned long int)N1_final_value (unsigned long int)HS_DIV_final_value *
(unsigned long int)frequency;
RFREQ DCO/F_XTAL;
Nejprve vypočítána hodnota fDCO, která následně podělena hodnotou kmitočtu vnitřní
krystalové reference. Pro zjištění zlomkové části je
postup obdobný jako při ručním dělení čísel [26]. Příkaz freeze provádí zapsáním jedničky na
. tom
okamžiku dojde změně výstupní frekvence.
Posledním potřebným krokem výpočet 38bitového čísla RFREQ. krát pak odečten od
dělitele.
DCO (RFREQ*F_XTAL);
RFREQ RFREQ 1;
DCO DCO 1;
Od dělitele odečtena hodnota získáná násobením průběžného výsledku dělencem.
Sběrnice I2
C
Postup zápisu obvodu generátoru uveden [33]. Zpětným násobením zjištěna pseudohodnota fDCO (pro výpočet skutečné fDCO
by bylo potřeba tuto hodnotu ještě násobit požadovaným výstupním kmitočtem) nakonec je
vybrána vhodná dvojice HS_DIV, reprezentovaná proměnnými N1_final_value
a HS_DIV_final_value. Nejdříve nutné poslat příkaz freeze,
následně zapsat vypočítané hodnoty násobičky děliček poslat příkaz unfreeze. Po
skončení dělení proveden jeden posun jeden bit doprava, protože poslední násobení
dvěma již navíc:
RFREQ RFREQ 1;
Výsledné hodnoty jsou pak odeslány sběrnici I2C obvodu Si570. Výpočet zlomkové části probíhá cyklu [26]:
for(i 28; i++)
{
if(DCO F_XTAL)
{
RFREQ++;
DCO F_XTAL;
}
RFREQ RFREQ 1;
DCO DCO 1;
}
Výsledkem dělení může být vždy jen nebo případě, výsledek tato cifra
uložena pozici nejnižšího bitu. Výhodné je, násobení dvakrát odpovídá
bitovému posuvu jeden bit doleva, čímž proměnné RFREQ zároveň uvolní místo pro
zápis první číslice zlomkové části. Tím získána celočíselná část RFREQ. RFREQ
i DCO jsou následně vynásobeny dvakrát.70
Přípustné hodnoty HS_DIV jsou uloženy poli HS_DIV_values[6]. Dělenec násobený výsledkem (tj.1) lze
vyjádřit, jak RFREQ vypočítat. Pomocí vydělení celkové
násobičky příslušnou hodnotou HS_DIV určena hodnota N1, která musí být podle své
definice sudá