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
"Ringspeicher" - hab keine Idee, bitte Hilfe...
14.05.2015, 11:05 (Dieser Beitrag wurde zuletzt bearbeitet: 14.05.2015 11:07 von HaWe.)
Beitrag #9
RE: "Ringspeicher" - hab keine Idee, bitte Hilfe...
hi,
ich bin mir nicht ganz sicher, aber ich glaube fast, Skobys Code ist ein FiFo-Puffer, kein Ringpuffer.
Hier wird immer erst per Umkopieren weitergeschoben, dann neu eingefügt.
Das Kopieren kostet natürlich Zeit.
Ein Ringpuffer schiebt nicht, er setzt einfach an der ältesten Stelle den neuen Wert ein und stellt den Index einfach weiter.
Beides funktioniert aber, wie die anderen schon gezeigt haben.
Bei kleinen arrays macht es auch kaum einen Geschwindigkeits-Unterschied, je länger die arrays aber sind, desto schneller ist der Ringpuffer.
Ich selber benutze bei 3- max. 5 array-Elementen noch einen FIFO, ab dann einen Ringpuffer.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
14.05.2015, 11:52
Beitrag #10
RE: "Ringspeicher" - hab keine Idee, bitte Hilfe...
Hallo,
ein richtig progammierter Ringbuffer ist das nicht. Ich schiebe den Wert einer
Variable nur einer anderen zu.
Wenn man mit den Werten nichts zeitkritisches vor hat, dann ist das völlig
ausreichend. Bei 48 Werten (xx,x) ist das schnell genug um ein grafisches
Diagramm mit diesen 48 Werten abzubilden. Das geschieht in "Echtzeit"
Es ist aufwändiger zu programmieren aber übersichtlicher, weil man die
"echten" Variablen im Code "sieht". Auch kann man sofort darauf zugreifen-
z.B. einen bestimmten Wert sich anzeigen lassen.

Die anderen hier vorgeschlagenen Lösungen mögen vielleicht funktionieren,
nützen dem Anfänger aber nichts. Zum einem, weil er mit kryptischen
Beizeichnungen (buffer, [pointer], BUFLEN und value) nichts anfangen kann, zum
anderem, weil nichts richtig erklärt ist.
Und wie er einen bestimmten Wert (nehmen wir mal den 4. von 7 Werten) wieder
"sichtbar" macht- wird überhaupt nicht erklärt.

Gruß und Spaß
Andreas
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
14.05.2015, 12:36
Beitrag #11
RE: "Ringspeicher" - hab keine Idee, bitte Hilfe...
Stimmt, mein etwa vierzeiliger Code ist sehr schwer zu verstehen. Auch diese kryptischen (für mich zwar einfache englische) Wörter sind nahezu nicht zu entziffern...
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
14.05.2015, 17:03
Beitrag #12
RE: "Ringspeicher" - hab keine Idee, bitte Hilfe...
ein FIFO-Puffer wie bei Skoby reicht meistens aus und ist vielleicht für Anfänger auch einfacher zu verstehen, aber wer schon gut programmieren kann wird sicher auch mit dem schnelleren Ringpuffer umgehen können.
der 4. Wert in einem 8er Ringpuffer ist eben nicht einfach array[3] wie beim FIFO sondern man muss ein wenig rechnen, je nachdem wo der Index-Marker steht.
Aber ich vermute, für DL1AKP ist der FIFO schon ok.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
15.05.2015, 06:58
Beitrag #13
RE: "Ringspeicher" - hab keine Idee, bitte Hilfe...
Hallo nochmal,

ja genau, für mich ist das mit FIFO OK. Nun weiss ich auch, wie man sowas nennt.
Es ist auch NICHT zeitkritisch, und ich brauche zwischen 5 und 10 Werte, die ich abspeichern will. Es handelt sich um eine 5stellige String-Variable.
Ich will eben sehen, ob der gleiche String unter den letzten 5 bis 10 enthalten ist.

Selbst wenn das 2 Sekunden dauern würde, wäre das OK.
Habe schon angefangen, das in meinen Code einzufügen. Werde mal zum Test die Variablen auf den seriellen Port ausgeben, damit ich sehe, ob alles OK ist. Das dauert dann noch länger, aber auch das macht nichts...

Ein schönes Wochenende und vielen Dank nochmal für die Hilfe!
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Prüfung eines Drucksensors mit Hilfe des Arduino r4c3 11 234 Heute 21:51
Letzter Beitrag: ardu_arne
  Wie wird bitte der Pin EN am HC05 gesetzt ? comfan 3 231 26.09.2017 16:34
Letzter Beitrag: Alfrede
Photo Hilfe bei meinem Arduino Projekt Niklas 10 375 23.09.2017 21:05
Letzter Beitrag: Niklas
  Nextion Display führt keine gesendeten Befehle aus re.eule 12 1.799 13.07.2017 21:46
Letzter Beitrag: SkobyMobil
  Ublox Neo 6M und Nextion ! Bitte um Hilfe. b3ta 19 1.098 13.07.2017 14:52
Letzter Beitrag: Tommy56
  Anfänger sucht erfahrene Hilfe Customizer 21 1.422 11.07.2017 21:37
Letzter Beitrag: Customizer
  eine einfache Xor Bitte ? himbeersirup 1 308 08.06.2017 09:15
Letzter Beitrag: MicroBahner
  bitte, was ist "link GND" bergfrei 2 355 21.05.2017 15:14
Letzter Beitrag: bergfrei
  Bitte um Hilfe Arduino Nano-MAX7219-PIR_Sensor Opa_Klaus 35 2.042 20.05.2017 21:11
Letzter Beitrag: Opa_Klaus
  LCD geht nicht - keine Ahnung warum?? DL1AKP 12 839 15.05.2017 13:17
Letzter Beitrag: DL1AKP

Gehe zu:


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