Hallo Zusammen, eine Frage, wie würdet Ihr am elegantesten eine Zeitmessung gestalten zwischen einer positiven und einer negativen Flanke an ein und demselben Pin??? (Atmel 90S2313, ich kann auch 2 Pins opfern)... Danke schon mal, bluemole
Timer laufen lassen und den Pin pollen. Bei Pin=1: Timer löschen Bei Pin=0: Timer auslesen MfG formtapez
Danke formtapez, der polling mode ist immer ein bißchen gefährlich. Man weiß ja nie wo sich der programm counter pc befindet. Ich habe mir gerade noch mal die externen Interrupts angesehen. Die kann man aber nur auf die positive oder auf die negative Flanke scharf machen :-(. Bin dankbar für jede weitere Idee....
"Ich habe mir gerade noch mal die externen Interrupts angesehen. Die kann man aber nur auf die positive oder auf die negative Flanke scharf machen :-(" Wenn die Zeit ausreicht könntest Du es doch umschalten. Ansonsten das Signal mit Transistor invertieren und auf einen zweiten Eingang legen. So hättest Du dann zwei Interrupts. MfG formtapez
Das mit dem Umschalten der Flanken ist eine coole Idee. Der Meßbereich liegt bei ca. 200us. Die Genauigkeit ist sollte besser 10% sein. Ich bekomme ein Datenstrom rein, den ich decodieren will... ==> Interrupt umschalten wäre locker drin :-) Danke. Bin aber immer noch gespannt auf weitere Möglichkeiten....
Hi, ohne zu pollen geht es auch mit dem ICP Pin. Auf "High" Flanke triggern, in der ISR auf "low" triggern. Dann nur noch ein bischen Grundschulmathematik und fertig ist es. Mfg Dirk
Mal noch Fragen. Timer/Counter1 Input Capture Register ist ein read only register, was bringt mir das wenn ich es nicht immer wieder schön auf null setzen kann??? Da muss ich mir ja immer den alten Wert merken, oder??? bluemole.
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.