Hallo, wie auch so manch anderer hier in dem Forum habe ich mir das Trex C1 Board zugelegt. Heute wollte ich was mit dem onboard Flash gemacht und habe dabei festgestellt, dass dieses nicht zu funktionieren scheint. Ich habe LAB3 hinauf geladen und das USB Control Panel gestartet. Im Flash TAB habe ich eine Adresse und einen Wert bei wDATA eingegeben, danach write gedrückt und dann read. Unter der Wert im Feld rDATA ist eigentlich immer ungleich wDATA. Bsp: Adress: 0 wDATA: aa -> pressed Write -> pressed Read in rDATA: "65" appeared, which is not AA For 55 written i got E6 For 00 written i got 00 For FF written i got 64 Habe das Ganze vorher dem Support geschrieben. Meine Frage ist euch das auch schon aufgefallen oder mache ich da einen Fehler? Tobias
Hi Tobias, ich habs gerad ma ausprobiert. Ist bei mir auch so. Allerdings habe ich auch eine Erklärung dafür. Es gibt zwei Möglichkeiten bei einem Flash ein Bit zu verändern: 1. von 1 auf 0 durch programmieren, 2. von 0 auf 1 durch Löschen eines Blocks. Steht z.B. an einer Speicherzelle FF läßt sich jedes beliebige Byte schreiben. Steht an der Speicherzelle ein Werte ungleich FF lassen sich nur Werte schreiben, bei denen keine Bits von 0 auf 1 geändert werden müssen. Die Ausgabe von E6 ober 64 könnten Fehlercodeausgaben vom Flasher sein. Der tatsächliche Wert im Flash läßt sich erst wieder nach Aus- und Einschalten des Boards lesen. Normalerweise lassen sich einzelne Sectoren eines Flashs löschen. Das ist bei dem Controlpanel nicht vorgesehen - es muß also immer der gesammtes Flash gelöscht werden. Viele Grüße TobiFlex
Ich war eigendlich der Meinung das handelt das Board / Software selber da die Software ja diese Funktionalität bietet. Aber wahrscheinlich wird dem so sein, wie du sagst. Danke auf alle Fälle.
Habe gerade rumprobiert und nachdem ich das Flash gelöscht habe, stimmen die Werte. Jedoch habe ich dabei ein weiters Problem erkannt. Wenn ich mich nicht wieder täusche, ist das Flash (29LV800) ein 8MBit bzw 1Mbyte Speicher. Wenn ich den Speicher lösche, und dann über Sequential Write im Control Panel eine 0.4 MByte große Datei reinschreibe, dann steht ab Adresse 0x263AA nur noch 0xFF im Speicher. Jedesmal ab dieser Adresse. Also ich kann löschen & schreiben so oft wiederholen wie ich will, jedesmal ab der selben Adresse nur noch 0xFF im Speicher. Kannst du dir das erklären, TobiFlex?
Dafür gibt es eigentlich nur 2 Erklärungen: 1. Beim Flashen trat ein Fehler auf => STOP 2. Die Datei enthält bereits ab 0x26AA nur noch 0xFF. Werde es nachher mal mit meinem Board testen.
glaub 1. glaub ich nicht, da es immer genau an dieser Stelle passiert. Werde aber nachher mal eine andere Datei testen. zu 2. die Datei enthält dort Daten und keine 0xFF's.
So! Ich kann den Fehler bestätigen. Bei meinem Board ist bei 0x33aa Schluss. Danach nur noch 0xFF. Ich habe mir mal den Spaß gemacht und den Flash 2x ausgelesen. In dem hintern Bereich treten dann mit einem mal Blöcke mit 0x00 auf. Beim nochmaligen Lesen waren diese 0x00 Blöcke an anderen Stellen. Sehr merkwürdig...
Kann ich auch bestätigen... Intressant wäre was wirklich im Speicher steht.Vielleicht ists ja ein Fehler der auslese Routine. Mal schauen. Werde auf jeden Fall noch ein Paar Tests machen. Bei einer anderen Datei lag der Fehler bei mir viel weiter hinten. Habe das File 5thelement_1Mbyte genommen und dort lag der Fehler bei 0x822A9. Deshalb glaube ich, dass es ein Fehler der schreib / lese Routine des Panels ist. Timing kann meiner Meinung nach wegen der Reproduzierbarkeit (selbes File, selbe Stelle) nicht sein. Vielleicht verwendet die Trex Software ja irgendwelche Control Zeichen im Datenstrom und wenn diese im File auftreten gibts Murks (glaube aber nicht daran, dass das gemacht wird).
Meine Experimente mit dem RS232 Controllpanel sind leider auch negativ. Zwar wird der Flash komplett beschrieben, dafür sind hier aber immer mal wieder einzelne Bytes falsch. Auch schon wieder sehr merkwürdig...
Heute habe ich weitere Versuche angestellt. Mit dem RS232 Controll Panel scheint der Flash richtig programmiert zu werden. Das dauert aber sehr viel länger als über USB. Die falschen Bytes müssen beim Lesen entstehen. Der SDRAM läßt sich über USB und RS232 richtig beschreiben aber auch hier gibt es Lesefehler. Viele Grüße TobiFlex
Auf der Seite von Terasic gibt es inzwischen eine neue Version des Controlpanels(v 1.02). Damit lassen sich Flash und SDRAM ohne Fehler über USB beschreiben. Beim Lesen treten jedoch weiterhin ab und zu Fehler auf. Viele Grüße TobiFlex
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.