RE: Mikrovezérlős frekvenciamérő
Cseh Róbert
R.Cseh at Richter.hu
Fri Nov 23 10:13:20 CET 2007
A HW timert használd.
első számláló a Timer1 (16 bites, túlcsordulás (HW INTerrupt), prescale=1 (órajellel jár), 65536 lépést tud. Órajel max. 40%-ig illik mérni (Nyquist foglalkozott vele...)
A túlcsordulásnál egy integert léptetsz
A Timer1-l pedig az órajelből méretsz egy 1 msec időt. Amikor ennek INTje beesik, az első lépés a stop timer1 legyen! Az INT-be belépés és a első utasítás végrehajtása közt 25 utasítás telik el, vagy Te kézzel oldod meg a regiszterek mentését.
Ilyen mérésből végezni 10-20 darabot és átlagolnám.
Utána mehet LCD-re.
Bascomból is könnyen megoldhat. ATMega48/88/168 chipek esetén 20MHz Quartz mehet rá.
Így a mérhető bejövő freki max. ~12 MHz :)
Így az 1msec idő helyett hosszabb időalap is választható... Kisebb az INT be/kilépésből származó hiba - ha elszámolod.
A szimulátorban meg tudod nézni, hogy hány utasítás és/vagy mennyi idővel kell esetleg korrigálni.
Robi
-----Original Message-----
From: "Cseri László" [mailto:Laszlo.Cseri at parlament.hu]
Sent: Thursday, November 22, 2007 5:01 PM
To: elektro at tesla.hu; elektro at tesla.hu
Subject: Mikrovezérlős frekvenciamérő
Helósztok !
Olyan gondom lenne, hogy szeretnék frekimérőt építeni, mikrovezérlővel.
Most Atmegákkal foglalkozom, úgy hogy azokból.
Tudom a PIC-ek jobbak ilyen téren, és sok jó kapcsolás is van hozzájuk, de én mégis inkább agyalok egy kicsit.
Legtöbbször beszerezhetetlen az előosztó, és +-100-200Hz nem számít.
Nálam alap lenne az 1Hz-es pontosság, és lehetőség szerint periódus idő mérés, és ebből freki számítás (kis frekiknél ). Termosztálást is építenék hozzá.
LCD kijelző, menü ...
1,1Ghz-es 10-es v 20-as előosztóm már van rendeltem MC12080-at (meg is kaptam) ingyen!
1GHz /10 vagy /20 és utána 25-26 bites számlálás , ez lenne az elv., akár csak külső számlálással is (pl HC4040)
Most éppen az a gondom, hogy a mikrovezérlővel mennyit számoltassak?
van benne egy 16 bites , utána megszakítással mehet , egy belső számláló.
Úgy tudom az órajel 40%-át tudja max megszámolni a számláló.
De nem tudom , ha fut megszakításkezelés egy mikrovezérlőn, lehet -e pontos időalapként használni.
Főleg hogy Bascommal kezelném.
Gondolkodtam pontos külső órajelen is, pl: I2C-s Óra IC 1s-os megszakítása.
Melyik a jó elv ? Ha tudtok, segítsetek.
Csak magamnak csinálom, úgy hogyha jó, készülék lenne belőle, megosztanám
a listával! :-)))
Cseri Laci
More information about the Elektro
mailing list