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