INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Zwei Zeitkritische Interrupts gleich verarbeiten
06.01.2014, 21:11
Beitrag #9
RE: Zwei Zeitkritische Interrupts gleich verarbeiten
Hallo subseven,

oben sprichst du von 24000 Impulsen pro Minute (das war mein Ausgangswert). Das wären nach meiner Rechnung 800 Impulse pro Sekunde (*2 schon drin) -> 1,25 ms Laufzeit für die Timer, wobei du sagtest dass dies bereits die Gesamtzahl der Impule (Spule + Düse) wären. Also würde sich der Wert der Laufzeit für die beiden Timer jeweils nochmal vergrößern, oder?
Zitat:Davon abgesehen verstehe ich auch nicht, wieso es nicht tragisch ist max jede zweite Pegeländerung zu sehen. Wie soll ich mit solchen Werten dann rechnen?
Ich sagte
Zitat:So würde zwar bestenfalls nur jede zweite Messung eine Pegeländerung sehen
ich sagte nicht, dass nur jede zweite Pegeländerung gesehen wird!
Rechnen müsste man dann über die Anzahl der Timerdurchläufe, die gebraucht werden um zB. von Pegel HIGH wieder zu Pegel HIGH am Pin zu gelangen.

Grüße Ricardo

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
06.01.2014, 21:53
Beitrag #10
RE: Zwei Zeitkritische Interrupts gleich verarbeiten
Ach jetzt verstehe ich den Denkansatz.
Das wuerde fuer die Drehzahl funktionieren und mir fallen dann auch gleich ein paar andere Einsatzmoeglichkeiten ein.

Schonmal vielen Dank fuer die Erleuchtung Idea

Bei der Einspritzduese wird das vermutlich nicht ausreichen, weil auch noch garnicht weis wielange die Duese einspritzt.
Das werde ich ersteinmal rausbekommen muessen, denke ich.

Die 24000Impulse sind 12000 fuer Zuendung und 12000 fuer den Einspritzvorgang.
Allerdings muss man die getrennt von einander betrachten. Das habe ich oben nicht sonderlich gut beschrieben.

Also fuer die Drehzahl dann 2,5ms.


Je kuerzer die Timerzeiten, desto weniger Zeit fuer andere Berechnungen bleibt mir oder?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
06.01.2014, 22:51
Beitrag #11
RE: Zwei Zeitkritische Interrupts gleich verarbeiten
Zitat:Je kuerzer die Timerzeiten, desto weniger Zeit fuer andere Berechnungen bleibt mir oder?
Ich sage mal entschieden "Jain" Huh ist die Frage wie du die Timer realisierst.
Ich nehme für sowas immer eine Startzeit ,eine Laufzeit und prüfe ob aktuelle Zeit > Startzeit + Laufzeit -1 ist. Meine Erfahrung ist, dass damit sehr kurze Laufzeiten gut zu prüfen sind. Vorteil ist auch, dass man das gut in Loop() einbauen kann. In deinem Fall würde ich mit micros() arbeiten, nicht millis(), da sich hier 2.5 ms nicht darstellen lassen. Allerdings wird micros() nach etwa 70 Minuten wieder bei 0 anfangen. Das musst du dann abfangen.
Performance:
- delay() (und Verwandte) vermeiden
- keine verschachtelten If-Anweisungen, lieber getrennte If-Anweisungen hintereinander
- bei festen Werten lieber #define anstatt const benutzen
- String - Klasse vermeiden

grüße Ricardo

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
09.01.2014, 12:03
Beitrag #12
RE: Zwei Zeitkritische Interrupts gleich verarbeiten
Wäre es nicht sinnvoll die Abfrage beider Ports in einen Timer zu packen und dem entsprechend einen ausreichend kurzen Intervall zu geben?

Was sind Stringklassen? Werden die beim "Print" nach Seriel bzw. beim Print auf ein LCD verwendent?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
09.01.2014, 19:17
Beitrag #13
RE: Zwei Zeitkritische Interrupts gleich verarbeiten
Zitat:Wäre es nicht sinnvoll die Abfrage beider Ports in einen Timer zu packen und dem entsprechend einen ausreichend kurzen Intervall zu geben?
Dann musst du die Portabfragen aber in getrennte If-Statements setzen und kannst nicht nach dem Motto "if PortA = LOW | PortB = Low" arbeiten.
Und blos nicht IF-Statements verschachteln.
Zitat:Was sind Stringklassen? Werden die beim "Print" nach Seriel bzw. beim Print auf ein LCD verwendent?
Stringklassen werden meist benutzt wenn du in einem print-Befehl sowohl Text als auch Integer bzw. Float ausgeben möchtest. Dadurch werden alle Anteile der auszugebenden Werte in Strings gewandelt und dann in einem Rutsch ausgegeben.
Besser ist es dann, die print Befehle (egal ob auf seriell oder LCD) aufzuteilen.
Alternativ kannst du auch sowas benutzen: http://www.arduinoforum.de/arduino-Threa...nem-Aufruf

Grüße Ricardo

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Statt 1 SMS gleich unendliche bergfrei 7 172 17.10.2016 18:49
Letzter Beitrag: bergfrei
  Daten über USB verarbeiten Felix91 10 326 12.10.2016 13:00
Letzter Beitrag: Tommy56
  Zwei ident Feuchtesensoren an Arduino Uno R4 Karli 5 355 24.07.2016 23:36
Letzter Beitrag: SkobyMobil
Bug Mit zwei Ultraschallsensoren die Drehbewegung eines Servos steuern Poet 5 562 21.02.2016 18:37
Letzter Beitrag: Carlo
  Webserver erzeugt zwei Durchläufe. favicon.ico?!? WOHER??? BERND87 6 1.575 04.02.2016 13:56
Letzter Beitrag: Pit
  Zahlenformat bei Kommunikation mit zwei Arduinos Matthias_Arduino 5 634 07.01.2016 22:40
Letzter Beitrag: Bitklopfer
  Mit dem Pin 8 und 9 vom Yun werden zwei LED wechselseitig blinken über http arduinofan 1 551 08.12.2015 15:03
Letzter Beitrag: arduinofan
  Interrupts mit Arduino Due chhec 34 3.782 16.11.2015 08:42
Letzter Beitrag: chhec
  I2P mit zwei Microcontroller diode1990 2 556 26.10.2015 20:07
Letzter Beitrag: Bitklopfer
Photo Daten verarbeiten binderj1 0 435 13.10.2015 08:40
Letzter Beitrag: binderj1

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste