03-26-2022, 09:42 PM
I rešenje sa optičkim enkoderom + potenciometrom moze da se fino barata i sa mHz, dodaću umesto 7 stanja na pot (7 dekada) dodaću još 3 dekade, kao opciju pa neka bira kako ko voli.
---
Samo mali podsetnik oko Si5351 kako on radi,
1) Od XO ulaza (27MHz) se interno diže clock na nekih 800MHz
2) Postoji PLL (3x za 3 kanala) koji deli tu frekvenciju, deli sa odnosom A/B, gde su A i B parametri celobrojne vrednosti
3) Ima dodatne delitelje i množače posle toga, opet celobrojne vrednosti
Glavni trik je oko 2. tačke, tu postoji mnogo kombinacija da se dobiju tačno željene ili "vrlo bliske" frekvencije.
Caka je u kombinacijama, recimo da treba da podelimo onih 800MHz sa 8, dakle može parametar A i B da budu 8/1, 2400/300, 8000/1000 i tako bezbroj kombinacija za isti rezultat.
Stvar se drastično komplikuje kada treba neceobrojna vrednost deljenja, treba mi lupam odnos deljenja 10,041002 i automatski proizilazi pitanje koja to dva broja za A i B daju tačno taj rezultat??
To je malo zaludna matematika, ne može prosto da se izračuna, postojaće greška kod računa ako "nasumice" izaberemo A ili B a drugi računamo matemetički, docicemo u situaciju da taj drugi opet mora da bude decimalni broj a ne može da bude, mora celobrojna vrednost da se upiše u PLL ...
I tako se dolazi do algoritma za racionalnu aproksimaciju koji radi taj račun u 100+ iteracija da bi našao rezultat za A i B koji daje najmanju grešku za željenu izlaznu frekvenciju. Što više iteracija to se dobije tačniji rezultat.
---
Samo mali podsetnik oko Si5351 kako on radi,
1) Od XO ulaza (27MHz) se interno diže clock na nekih 800MHz
2) Postoji PLL (3x za 3 kanala) koji deli tu frekvenciju, deli sa odnosom A/B, gde su A i B parametri celobrojne vrednosti
3) Ima dodatne delitelje i množače posle toga, opet celobrojne vrednosti
Glavni trik je oko 2. tačke, tu postoji mnogo kombinacija da se dobiju tačno željene ili "vrlo bliske" frekvencije.
Caka je u kombinacijama, recimo da treba da podelimo onih 800MHz sa 8, dakle može parametar A i B da budu 8/1, 2400/300, 8000/1000 i tako bezbroj kombinacija za isti rezultat.
Stvar se drastično komplikuje kada treba neceobrojna vrednost deljenja, treba mi lupam odnos deljenja 10,041002 i automatski proizilazi pitanje koja to dva broja za A i B daju tačno taj rezultat??
To je malo zaludna matematika, ne može prosto da se izračuna, postojaće greška kod računa ako "nasumice" izaberemo A ili B a drugi računamo matemetički, docicemo u situaciju da taj drugi opet mora da bude decimalni broj a ne može da bude, mora celobrojna vrednost da se upiše u PLL ...
I tako se dolazi do algoritma za racionalnu aproksimaciju koji radi taj račun u 100+ iteracija da bi našao rezultat za A i B koji daje najmanju grešku za željenu izlaznu frekvenciju. Što više iteracija to se dobije tačniji rezultat.