CRC XOR berechen , string vergleichen und ersetzen - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +--- Thema: CRC XOR berechen , string vergleichen und ersetzen (/Thread-CRC-XOR-berechen-string-vergleichen-und-ersetzen) Seiten: 1 2 |
RE: CRC XOR berechen , string vergleichen und ersetzen - GerdW - 27.07.2012 13:22 Hallo Dexter, wenn du einen Buffer-Overflow hattest, musst du den Buffer wohl öfter mal leeren... RE: CRC XOR berechen , string vergleichen und ersetzen - Lucki - 28.07.2012 12:32 (27.07.2012 13:22 )GerdW schrieb: wenn du einen Buffer-Overflow hattest, musst du den Buffer wohl öfter mal leeren...Wohl wahr, und die Schwachstellen sind ja offensichtlich. Ein typische standardmäßige Buffergröße für Visa liegt bei 1 kByte. Bei 115000 Baud wäre der Buffer voll, wenn das Pedal mehr als ca. 0,1s gedrückt gehalten wird. (Wenn es keine Pausen zwischen den Datensätzen gibt) Und wenn man den Buffer um ein Vielfaches vergrössert, lauert eine andere Gefahr: Nach 0.5 sec werden die Daten in einem VI gelesen, egal ob das Pedal noch gedrückt ist oder nicht. Fazit: Programmierung nicht gerade spitzenmäßig. RE: CRC XOR berechen , string vergleichen und ersetzen - dexter - 30.07.2012 12:39 Hallo Gerd, Hallo Lucki ich habe den Buffer geleert, sieht gut aus aber ich merke dass einige Telegramme verloren gegangen sind. irgendwie schafft mein Programm nicht alle Telegramme auszulesen und auch parallel die CRC zu berechnen! wie kann ich dieses Problem lösen? Danke für Idee so sieht jetzt meine Tabelle in Excel aus. Die 9eByte sollte eingenlich die gesend.Telegramme hochzählen, damit kann ich ein verlorene Telegramm merken AA 21 4 0 0 0 0 4 50 DB AA 21 4 0 0 0 0 4 51 DA AA 21 4 0 0 0 0 4 54 DF AA 21 4 0 0 0 0 4 55 DE AA 21 4 0 0 0 0 4 56 DD AA 21 4 0 0 0 0 4 5A D1 AA 21 4 0 0 0 0 4 5B D0 AA 21 4 0 0 0 0 4 5E D5 AA 21 4 0 0 0 0 4 5F D4 AA 21 4 0 0 0 0 4 60 EB AA 21 4 0 0 0 0 4 64 EF AA 21 4 0 0 0 0 4 65 EE AA 21 4 0 0 0 0 4 69 E2 RE: CRC XOR berechen , string vergleichen und ersetzen - GerdW - 30.07.2012 12:43 Hallo dexter, wie sieht denn deine aktuelle Programmversion aus? RE: CRC XOR berechen , string vergleichen und ersetzen - Lucki - 30.07.2012 19:01 Ganz wichtige Zusatzfrage: Hat jedes Telegramm ein Zeilenendezeichen, also so wie von Dir gepostet, oder hast Du das nur aus optischen Gründen so als schöne Tabelle dargestellt? Übrigens: Die Algorithmen der Prüfsummenbildung sind meist so beschaffen, dass, wenn man vom Telegramm inklusive angehängter Prüfsumme die Prüfsumme bildet, diese dann Null ergibt. Das vereinfacht die Prüfsummenkontrolle. Bei Dir scheint das aber nicht so zu sein. Ist kein Beinbruch, wollte das nur mal erwähnen. RE: CRC XOR berechen , string vergleichen und ersetzen - dexter - 31.07.2012 12:20 Hallo Gerd wie kann ich einen Buffer einstellen so dass er sich alle 20 s leert ? Ich verliere ab und zu Telegramme mit diesem Programmabschnitt in anhang Besten Dank [attachment=40897] Hallo Lucki die VISA resource Name wurde mit Endzeichen 0xA = LF Abschlusszeichen = F konfiguriert es wird in Excel dann aussehen wie oben. Danke RE: CRC XOR berechen , string vergleichen und ersetzen - GerdW - 31.07.2012 12:32 Hallo Dexter, Zitat:die VISA resource Name wurde mit Endzeichen 0xA = LF, Abschlusszeichen = F konfiguriert, es wird in Excel dann aussehen wie oben.- Wie es in Excel aussieht, ist uns egal. - Wichtig: Welches End-Zeichen wurde denn nun eingestellt? - Noch wichtiger: Sendet das Gerät überhaupt ein Endezeichen mit? Zitat:wie kann ich einen Buffer einstellen so dass er sich alle 20 s leert ?Von welchem Buffer redest du? Das Löschen musst du schon selbst übernehmen - das kann dann durchaus alle 20s sein... (Wobei das kaum das eigentliche Problem lösen dürfte!) RE: CRC XOR berechen , string vergleichen und ersetzen - dexter - 31.07.2012 13:24 Hallo Gerd es wurde kein End-Zeichen programmiert. Jedes Telegramm hat eine konstante länge von 10 Byte und fängt immer mit AA an. Also kein STX LEN CMD etc. |