Hallo, ich möchte an einem Atmega alle 20 Millisekunden ein Register Inkrementieren nun habe ich mir gedacht, das ich dazu einfach die Netzfrequenz nutzen kann. http://de.wikipedia.org/wiki/Netzfrequenz#Netzzeit Ich habe dazu einfach mal einen Schaltplan entwickelt, und wollte fragen ob das so Funktioniert wie ich mir das gedacht habe, denn ich habe nur wenig erfahrung mit Optokopplern. Softwaretechnisch ist das ja kein großes Problem, das läuft dann über einen Interrupt. Gruß jens
Lass doch den Optokoppler weg und schließe den AVR-Pin mit einem 100k-Widerstand direkt an die Sekundärseite des Trafos. Falls du auf den Optokoppler bestehst: Der LED im Optokoppler fehlt ein Vorwiderstand. So brennt sie dir durch.
> ich möchte an einem Atmega alle 20 Millisekunden ein Register > inkrementieren Wieso nicht einfach per Timer? Spart externe Hardware und kommt frei Haus. Die kurzfristige Genauigkeit ist wesentlich besser, erst wenns richtig(tm) langfristig laufen soll wäre das anders. > Schaltplan ..der PC817 wirds wohl nicht sehr lange machen..
Hi >denn ich habe nur wenig erfahrung mit Optokopplern. Merkt man. Der Optokoppler braucht am Eingang, wie jede Led einen Vorwiderstand. Außerdem muss eine Diode antiparallel zur LED geschaltet werden. MfG Spess
ach ich weiß nicht, 12V über nur einen Widerstand an den Controller? Und, haben die nicht interne pull ups? Wenn dann schon lieber über einen Spannungsteiler, der das auf 5/3,3V runterbricht + Diode um die negative Spannung wegzufiltern. Grüße,
Danke für eure schnellen Antworten. Ich habe den Schaltplan jetzt einmal Abgeändert und Die Diode D5 und den Widerstand R2 hinzugefügt. Spess53 schrieb: > Hi > >>denn ich habe nur wenig erfahrung mit Optokopplern. > > Merkt man. Der Optokoppler braucht am Eingang, wie jede Led einen > Vorwiderstand. Außerdem muss eine Diode antiparallel zur LED geschaltet > werden. > > MfG Spess habe ich mal gemacht. g457 schrieb: > Wieso nicht einfach per Timer? Spart externe Hardware und kommt frei > Haus. Die kurzfristige Genauigkeit ist wesentlich besser, erst wenns > richtig(tm) langfristig laufen soll wäre das anders. die kurzfristige genauigkeit ist nicht wichtig, brauche über längere Zeit eine relativ genaue Zeitbasis.
nicht "Gast" schrieb: > ach ich weiß nicht, 12V über nur einen Widerstand an den Controller? Dann guck dir mal das µC-Datenblatt und die App.Note AVR182 von Atmel an - speziell die Funktion der Dioden gegen VCC und Gnd.
Jens schrieb: > ich möchte an einem Atmega alle 20 Millisekunden ein Register > Inkrementieren nun habe ich mir gedacht, das ich dazu einfach die > Netzfrequenz nutzen kann. Das ist alles andere als einfach. Es können durchaus Perioden ausfallen oder Störimpulse beim Schalten großer Lasten entstehen. Du müßtest daher mit dem internen Timer eine Art Software-PLL programmieren, die dann fehlende Impulse einfügt bzw. Störimpulse zur falschen Zeit verwirft. Oder Du baust einen 50Hz LC-Resonanzkreis hoher Güte vor den Optokoppler. Erzähl dochmal, wozu Du das brauchst. Die einfachste Lösung ist, einen der Timer des AVR zu nehmen. Peter
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.