deleni kmitoctu

Jiri Osoba osoba
Středa Březen 17 11:51:03 CET 2004


From: Michal Krestan <krestan@hw.cz>


> Nevite nekdo, jak by se dalo udelat generovani kmitoctu 57kHz s
odchylkou max. 6Hz na 8951, kdyz je jako krystal pouzit napr.
11.0592Mhz, nebo jiny, ktery neni celociselne delitelny 57000 ?

Vydelit to necelociselne - zda se to trochu morbidni, ale neni to az
takovy problem. Vysledek pak je takovy, ze za sekundu je tam 57000
kmitu, ale jsou casove trochu rozhazene, jakoby plavou v case. Pokud
to nevadi lze to pouzit.

Predstavte si, ze mate vygenerovat frekvenci 0/256-255/256 puvodni
frekvence (tj. puvodni frekvence *0-0.996 s krokem 0.004).

V kazdem kroku provedete pricteni pozadovaneho cisla (0-255) k
registru (8bitu) a pokud v tomto kroku dojde k preteceni daneho
registru (carry bit), vygenerujete jeden puls na vystupu.

Zda se to divne, ale velmi dobre to funguje.

Podobnym principem muzete realizovat necelociselne deleni cislem napr.
13.816, kdyz delite cislem 13 a nekde si schovavate ten necelociselny
zbytek, o ktery jste "ujeli", a kdyz je ten zbytek >1 (carry bit), tak
vygenerujete deleni 14.

Jiri.








Další informace o konferenci Hw-list