Jump to content
ELFORUM - Forumul electronistilor

O alta varianta de frecventmetru


Recommended Posts

Salut,

Astazi va propun o schema de frecventmetru care are ca particularitate eliminarea incertitudinii +/-1 count, prezenta la majoritatea schemelor de frecventmetre - cu PIC sau Atmel - vehiculate pe net si care are intervalul de masura cuprins intre 1Hz si 80MHz. Microcontrollerul folosit este ATMega48 si foloseste un oscilator extern SMD cu frecventa de 20MHz, alimentat la 5V su cu stabilitate cu temperatura de 50ppm. Nu folositi oscilatoare necompensate termic in capsula metalica, se comporta ciudat in functie de temperatura.

Principial, frecventmetrul functioneaza astfel:

TIMER1 este setat sa functioneze in modul CTC si genereaza pe pinul GATE (in schema PC4) un impuls pozitiv cu durata de 1 secunda. In acest interval de timp, poarta formata din 1/2 74HC74 si 1/3 74AC11 va permite trecerea numarului exact de impulsuri aferent frecventei de masurat catre numaratorul 74HC393, care activeaza si ca prescaler.

La sfarsitul perioadei de timp de 1 secunda poarta de mai sus se inchide si nu mai permite trecerea impulsurilor catre numarator, iar continutul numaratorului este citit de microcontroller. Tot acum este oprit si TIMER0 (care functioneaza in regim de intreruperi) si se citeste continutul sau si al numarului de intreruperi inregistrate in subrutina de overflow.

Toate aceste valori se insumeaza si rezulta valoarea frecventei de masurat.

Cu ocazia experimentelor am constatat ca solutia de masurare a frecventei bazata pe generarea de intreruperi succesive a TIMER1 (sau TIMER0) pentru obtinerea intervalului de masura de 1 secunda introduce erori neacceptabile. Aceste erori sunt cauzate de numarul de impusuri de tact consumate pentru tratarea intreruperilor, care variaza intre minim 4 si maxim 7. Daca, spre exemplu, o schema foloseste un microcontroller cu oscilator de "referinta" de 8MHz si cineva seteaza TIMER0 cu prescaler 256 vizand perioada intreruperilor de 4ms, atunci vor avea loc 249 de inreruperi pentru intervalul de 1 secunda, ceea ce inseamna o "lungire" a intervalului de masurare cu 875us. Daca la 100kHz eroarea poate nu pare importanta (875Hz in plus), la frecvente mai mari se vor resimti aceste erori.

In schema de mai jos nu este prezentat si dispozitivul de afisare, care poate fi LCD 16x2, modulul cu 8 afisoare cu 7 digiti bazat pe TM1638 (disponibil pe Ebay), sau un afisor LCD bazat pe HT1621 (asa cum am folosit eu in proiectul anexat in integralitate).

La cerere, va pot pune la dispozitie si varianta cu LCD 16x2, sau va puteti modifica proiectul adaugand libraria LCD cea mai adecvata pentru ceea ce aveti la dispozitie.

In fotografie este prezentata masurarea unui oscilator in capsul metalica DIP-8 cu frecventa de 20.000MHz.

 

L.E.: Aveti si simularea modului in care functioneaza poarta. Pentru exemplificare am ales ca Fx sa fie 10Hz.

 

 

 

ATMega48_FCV.jpg

ATMega48_FCV.pdf ATMega48_FCV.zip

Gate_sim.png

Edited by nico_2010
Link to comment
  • Replies 0
  • Created
  • Last Reply

Top Posters In This Topic

Popular Days

Top Posters In This Topic

Posted Images

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.Terms of Use si Guidelines