Bygga frekvensräknare

Elektronikrelaterade (på komponentnivå) frågor och funderingar.
Användarvisningsbild
marvin
Inlägg: 214
Blev medlem: 30 maj 2003, 22:24:57
Ort: Göteborg
Kontakt:

Bygga frekvensräknare

Inlägg av marvin »

Hur svårt är det att bygga en frekvensräknare?
Helst skulle den fungera till 2m, men det kanske är lite overkill :(
Mest en framtida fundering
cyr
Inlägg: 2712
Blev medlem: 27 maj 2003, 16:02:39
Ort: linköping
Kontakt:

Inlägg av cyr »

Ganska enkelt, med en PIC (16F628 eller likn.)

Upp till c:a 50MHz, utan nån prescaler.

Allt som behövs förutom själva PICen är en liten ingångsförstärkare (en JFET-transistor), en display och lite småsaker. Om alla signaler man vill mäta är vanliga logiksignaler så behövs inte förstärkaren heller.

Håller på att bygga en själv, med lite extrafunktioner. Delarna ligger i en hög, får ta tag i det nån gång snart... :)
Användarvisningsbild
Illuwatar
Inlägg: 2256
Blev medlem: 10 november 2003, 14:44:27
Skype: illuwatar70
Ort: Haninge
Kontakt:

Inlägg av Illuwatar »

Till detta behövs en slags algoritm för att mäta och beräkna frekvensen. Det brukar finnas två metoder som inte är så komplicerade:

1. Man räknar antalet pulser man får in under en förutbestämd tid. Denna tid brukar kallas gate-tid om du tittar på fabriksgjorda räknare. Hur lång gate-tiden måste vara beror på den frekvens man vill mäta - lägre frekvens kräver längre tid för att få en bra upplösning. Låga frekvenser kan bli jobbiga att mäta på detta sätt eftersom mycket långa tider behövs för att få ett bra resultat. Denna metod kan genom vettigt valda gate-tider bli relativt enkel att arbeta med. Väljer man multiplar av 10 på tiderna blir det enkelt att räkna ut frekvensen. Man får se till att ha någon form att gate-tidsväljare för att kunna välja en lämplig tid utifrån frekvensen man vill mäta.

2. Man räknar ett fast antal pulser och mäter hur lång tid det tog. Denna metod är nog bättre vid låga frekvenser men ger krångligare matematik att arbeta med (för en MCU). Tiden för de mätta pulserna kan sluta med tider som inte är jämna multiplar av 10, vilket kräver bra flyttalsoperationer vid programmeringen.
Användarvisningsbild
karlstedt
EF Sponsor
Inlägg: 966
Blev medlem: 14 oktober 2003, 16:55:23
Ort: Lund
Kontakt:

Inlägg av karlstedt »

cyr
Inlägg: 2712
Blev medlem: 27 maj 2003, 16:02:39
Ort: linköping
Kontakt:

Inlägg av cyr »

Verkar lite onödigt att ha externa räknare *och* en MCU.

Ett exempel på en PIC-baserad räknare:

http://www.piclist.com/techref/piclist/weedfreq.htm

Min räknare kommer att vara liknande, men ha två mätmetoder (ungefär som Illuwatar beskrivit). Dels ska den mäta frekvensen genom att räkna pulser med Timer0 (som kan gå upp till c:a 50MHz med extern klocka), dels ska den kunna mäta pulsbredd och pulsavstånd med hjälp av CCP-modulen (som kan ge en precision på 200ns). Med CCP-modulen kan man även mäta tiden för 4 eller 16 pulser med samma precision, vilket kanske vore en bra metod att mäta låga frekvenser.
Användarvisningsbild
marvin
Inlägg: 214
Blev medlem: 30 maj 2003, 22:24:57
Ort: Göteborg
Kontakt:

Inlägg av marvin »

vill inte vara jobbig nu, men om man vill över 50MHz, som sagt mest en fundering.
Kollade lite på AVR-räknaren, kan man bygga på experimentkort?
Blir inte det konstigt vid höga frekvenser?
cyr
Inlägg: 2712
Blev medlem: 27 maj 2003, 16:02:39
Ort: linköping
Kontakt:

Inlägg av cyr »

Ska man komma mycket högre än 50MHz, antingen med PIC eller vanliga logikchip, så får man nog sätta dit en prescaler. En sån delar ner frekvensen med en viss faktor (t.ex. 10, eller 64) och kan ta 1GHz eller mer in.
Användarvisningsbild
marvin
Inlägg: 214
Blev medlem: 30 maj 2003, 22:24:57
Ort: Göteborg
Kontakt:

Inlägg av marvin »

Finns det färdiga kretsar som fungerar som prescaler?
Johnson-räknare eller binärräknare klarar väl inte av frekvenserna. Finns kanske specialvarianter?
Igen, går det att använda sig av experimentkort? Är det bara när man bygger radiosändare som det kan bli konstigt?
Användarvisningsbild
mrmike
Inlägg: 301
Blev medlem: 29 oktober 2003, 20:40:12

Inlägg av mrmike »

Har för mig att jag läst att det finns användbara prescalers i vissa TV-apparater.
göcke
Inlägg: 86
Blev medlem: 21 oktober 2003, 16:00:48

Inlägg av göcke »

kan denna länk hjälpa till
http://www.qsl.net/zl1bpu/micro/CNTR/Prescaler.htm
bör inte köras på experimentboard , bygg efter HF grunder så funkar det best.
Skriv svar