-         

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: Frequenz von Timer LM555CN messen

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    13.06.2006
    Beiträge
    56

    Frequenz von Timer LM555CN messen

    Anzeige

    SMARTPHONES & TABLETS-bis zu 77% RABATT-Kostenlose Lieferung-Aktuell | Cool | Unentbehrlich
    Hallo,

    ich habe ein kleine Aufgabe vor mir. Ich habe mir eine Schaltung mit einem LM555CN folgendermaßen aufgebaut: http://www.lighthugger.de/wordpress/...etter_plan.gif

    Ein Kondensator am LM555CN ist variabel (seine Kapazität wird durch den Füllstand eines Gefäßes bestimmt). Dadurch müsste sich die Frequenz mit der Kapazität ändern.

    Wie bekomme ich das nun hin, dass ich die Frequenzänderung messen kann? Leider habe ich von Timern noch keine so große Ahnung. Als Controller habe ich einen Mega32 mit 4MHz

    Gruß, Werner

  2. #2
    Benutzer Stammmitglied
    Registriert seit
    12.01.2007
    Beiträge
    93
    wenn das jetzt die 'katze' liest reist er mir wahrscheinlich wieder den popo auf aber naja

    kuck dir mal das kapitel an: 16-bit Timer/Counter1 >> Input Capture Unit

    das is ein 'hardware-feature' des timers der is geeignet um frequenzen zu messen

    das blöde ist bloss wenn ich deinen schaltplan richtig interpretiere kommts du auf PD5, für frequenzmessungen musst du auf nen ADC eingang oder input-capture pin.

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    13.06.2006
    Beiträge
    56
    Vielen Dank für die schnelle Antwort.

    Was die Ports angeht, bin ich recht flexibel. Also wäre z.B. Port 20=ICP1=Portd.6 am Mega 32 der Richtige. Bin mal gespannt, ob mein AVR so schnell zählen kann. Also bei nem 200nF-Kondensator erkennt man noch, dass die LED blinkt, bei 100nF schon nicht mehr und ich liege mit meiner Kapazität im pF- Bereich.

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    12.01.2007
    Beiträge
    93
    boah ich steh grad aufm schlauch wie magst du das messen?

    tau = R * C ?

    du könntest evtl deinen µC nehmen und nen externen quarz ranhängen mit 16MHz dann hast ne auflösung von 62,5ns.

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    13.06.2006
    Beiträge
    56
    Die Grundidee stammt eigentlich vom anderen Forum:

    http://www.mikrocontroller.net/topic/13998

    Heute hab ich meinen "Kondensator" auch schon direkt an den AVR gehängt, allerdings schwankte da der Wert nur zwischen 20 und 25. Das ist leider zu ungenau.

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    13.06.2006
    Beiträge
    56
    Hmm, also wenn ich das richtig verstanden habe, ist der erste Schritt das Setzen der Bits in TCCRB1:

    ICES1=1 und CS10 =1
    Bei ICNC1 =1 ist auch noch die Rauschunterdrückung aktiviert.

    int main(void) {

    TCCR1B=0xC1;

    sei();

    for (; {

    }}

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    12.01.2007
    Beiträge
    93
    du frägst mich vielleicht fragen dazu müsst ich das jetzt lesen.

    auf jedenfall Prescaler einstellen sonst geht nix, dann noch evtl den interrupt anschalten der bei nem logic-wechsen am inputcaputer-pin kommt damit du das register auslesen kannst und dann sei()

    würd ich mal sagen so ausm bauch.

  8. #8
    Benutzer Stammmitglied
    Registriert seit
    13.06.2006
    Beiträge
    56
    Das Problem ist, dass es überall heißt, jaaa, das macht man mit dem 16 bit Timer und ICR. Nur leider finde ich nirgendwo ein Beispiel. Das wäre für mich als Einsteiger sehr wichtig.

  9. #9
    Benutzer Stammmitglied
    Registriert seit
    12.01.2007
    Beiträge
    93
    schau mal hier: http://www.mikrocontroller.net/artic...ounter_des_AVR

    is jetzt zwar nicht dein atmega32 aber die sind immer nach dem gleichen grundprinzip aufgebaut von den registern her.

  10. #10
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    17.08.2005
    Alter
    33
    Beiträge
    685
    Hallo i-mon,

    im Wiki ist noch eine gute Seite:
    http://www.roboternetz.de/wissen/index.php/Timer/Counter_(Avr)

    Anmerkung für beide Programme:
    Frequenz: 100kHz anstatt 1MHz
    Prescaler: CS20 anstatt CS22

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •