Hallo Leute, ich besitze eine Licht- und Effektesteuerung namens „Railux“ welche leider vor ca. 10 Jahren eingestellt wurde. Es gibt keinerlei Support mehr. Ich kann damit per PWM 32 Ausgänge ansteuern und diese mittels sogenannten Triggern fast grenzenlos nach eigenem Geschmack konfigurieren (bei mir teilweise komplex u.a. brennende Fabrik (Rauchgenerator mehr/weniger Rauch bzw. Luftzufuhr, alles zeitl. gesteuert)) Mein Problem: Meine vorhandenen Prozessoren für den sogenannten "RLD Decoder" –freundlicherweise von einem Modellbahnkollegen für mich gebrannt- scheinen einen Fehler zu haben: Diese speichern geschriebene, also geänderte Daten nicht ab. Die Steuerung funktioniert also nur, so lange die Stromversorgung nicht abgeschaltet wurde. Schalte ich auch nur für einige Sekunden ab, hat das System alle Daten vergessen :-( Das darf natürlich nicht sein. Ich als Modellbauer habe keine Kenntnisse bzgl. Prozessoren brennen und traue mir das auch nicht zu. Meine Frage daher: 1.) Kann mir jemand preisgünstig (natürlich gg. angemessene Aufwandserstattung) die benötigten Prozessoren besorgen und „Programmieren/brennen“, pro Platine werden je 1 Stück ATMEGA32-16PU (DIL40) / ATMEGA8-16PU (DIL28-3) benötigt. 1.1.) Kann man die vorhandenen Prozessoren verwenden und „drüberbrennen“ oder besser gleich neue nehmen? 2.) Erstmal nur 1 Satz zum prüfen bei mir, wenn OK benötige ich je 14 Stück 3.) Man müsste prüfen, ob die Angaben der „Fuses“ richtig sind, möglicherweise hat sich hier ein Fehler eingeschlichen Die Programmdateien (Hex u. eep-Dateien), Schaltpläne, Platinenlayouts und Bauteillisten wurden vom Hersteller veröffentlicht (nur zum priv. Gebrauch versteht sich). Benötigt werden zum brennen wohl nur hex & eep oder? Angabe zu „Fuses“ bereits vorab sh. Anhang. Freue mich über Rückantworten Markus
:
Bearbeitet durch User
Das „Brennen“ selber ist kein Problem. Aber den Fehler kann man ohne die originalen Sourcen (Assembler, C und was weiss ich) nicht beheben...
Markus O. schrieb: > scheinen einen Fehler zu haben: Diese speichern geschriebene, also > geänderte Daten nicht ab. Die Steuerung funktioniert also nur, so lange > die Stromversorgung nicht abgeschaltet wurde. Werden die Daten denn im ATMega gespeichert, oder ist da noch ein externer EEPROM oder Flash auf der Platine? Es könnte sein, dass der Speicher schon seine Schreibzyklen erreicht hat, dann bringt ein neuer Controller auch nichts.
Markus O. schrieb: > 3.) Man müsste prüfen, ob die Angaben der „Fuses“ richtig sind, > möglicherweise hat sich hier ein Fehler eingeschlichen Das dürfte mit einiger Wahrscheinlichkeit das eigentliche Problem sein. Vermutlich ist der BrownOut-Detektor nicht oder nicht korrekt konfiguriert und deswegen wird entweder bei Verlust der Versorgung oder bei deren Wiederkehr der EEPROM-Inhalt korrumpiert. Es müssten also wohl nur die BOD-Fuses korrekt gesetzt werden und maximal sicherheitshalber noch der Inhalt der originalen *.eep-Datei erneut in den Controller "gebrannt" werden, um im EEPROM für einen definierten initialen Inhalt zu sorgen (gute Programme sollten den selber herstellen, wenn sie einen korrupten Inhalt erkennen, vermutlich passiert bei dir auch genau das).
Hallo Markus, in welcher Region bist du? Wenn du wirklich AVRs in mehreren Fuhren programmiert haben willst, amortisiert sich ein einfacher AVR-Programmer wie der USB-ASP (einfach auf eBay suchen, mit Versand aus Deutschland tw. unter 5 Euro) bereits aufgrund der Hin- und Zurück-Versandkosten. Ich glaube, nur wenn jemand hier im Forum quasi vor deiner Haustür wohnt, lohnt sich "Fremdflashen" so richtig. Die Frage nach dem Root-Cause (warum das Speichern nicht geht) ist sicherlich auch interessant. HTH Chris
Du brauchst wahrscheinlich einen Parallelprogrammer, wie den STK500. GIB UNS den CODE. Denke mit CodeVisionAVR von www.hpinfotech.ro Products/Downloads und Evaluation Version würde ich übersetzen und programmieren.
max123 schrieb: > Denke mit CodeVisionAVR von > www.hpinfotech.ro > Products/Downloads und Evaluation Version > würde ich übersetzen und programmieren. So wie ich das verstanden habe, hat er doch gar keine Quellen - oder? Was noch zu klären wäre: - hat der TO einen funktionierenden Prozessor? Wenn ja, dann müsste dieser als Quelle herhalten, daraus den *.elf mit allen Inhalten (z.B. mit STK500) und auf neue / neuwertige Prozessoren brennen. Das geht in einem Rutsch. - werden die NV-Daten im Prozessor (EEPROM) abgelegt oder extern? Die Frage gab es schon. - müssen EE-Daten überhaupt mit initialen Daten gefüllt werden oder wird da nur was abgelegt, wenn der Nutzer seine Einstellungen ändert? Falls ersteres zutrifft, dann wird bei jedem Programmieren des Codes auch das EEPROM gelöscht; man muss entweder die Reihenfolge einhalten (EE als zweites Brennen) oder zumindest die EESAVE-Fuse setzen, nachdem das EE befüllt worden ist. Markus O. schrieb: > Meine Frage daher: > 1.) Kann mir jemand preisgünstig (natürlich gg. angemessene > Aufwandserstattung) die benötigten Prozessoren besorgen und > „Programmieren/brennen“, pro Platine werden je 1 Stück ATMEGA32-16PU > (DIL40) / ATMEGA8-16PU (DIL28-3) benötigt. Das ist viel verlangt: Es wäre deine Aufgabe, das Rohmaterial zu besorgen und zur Verfügung zu stellen. > 1.1.) Kann man die vorhandenen Prozessoren verwenden und „drüberbrennen“ > oder besser gleich neue nehmen? Das wäre definitiv mein erster Versuch! > 3.) Man müsste prüfen, ob die Angaben der „Fuses“ richtig sind, > möglicherweise hat sich hier ein Fehler eingeschlichen Sieht eigentlich richtig aus, bis auf die genannte Problematik mit EESAVE.
HildeK schrieb: > daraus den *.elf mit > allen Inhalten (z.B. mit STK500) und auf neue / neuwertige Prozessoren > brennen. Das geht in einem Rutsch. Kleine Korrektur: daraus den *.elf mit allen Inhalten (z.B. mit STK500) *erstellen und abspeichern* und auf neue / neuwertige Prozessoren brennen. Das geht mit dem ELF-File in einem Rutsch.
Ich versuche mal die Fragen zu beantworten. Bitte habt dafür Verständnis, dass ich die hier zwischen Euch genannten Fachbegriffe nicht verstehe. > - hat der TO einen funktionierenden Prozessor? Ja, einen Satz funktionierende IC’s habe ich da (falls man damit die Daten quasi kopieren könnte) > - werden die NV-Daten im Prozessor (EEPROM) abgelegt oder extern? Kein externer Speicher, nur der Haupt(ATMEGA32)- und Subprozessor (ATMEGA8) Deswegen macht es aus meiner Sicht auch nur Sinn, diese immer gemeinsam als einen Satz zu betrachten. Wie die 2 IC’s miteinander zusammenarbeiten, entzieht sich meiner Kenntnis. (Bauteil/Bestückungsplan sh. Anlage) > - müssen EE-Daten überhaupt mit initialen Daten gefüllt werden[...] Das kann ich mangels Kenntnis leider nicht beantworten, aus der vom Hersteller zur Verfügung gestellten Programmieranleitung (sh. Anlage) ergibt sich eine solche Vorgehensweise ("doppeltes brennen") für mich nicht. Programmiert wurde seinerzeit wohl mit einem Profiwerkzeug (E-Lab) in Pascal und Assembler Sofern ein "Überbrennen" der Prozessoren möglich ist, dann natürlich gleich alle auf einmal ;-( Bzgl. Rohmaterialien besorgen: Jemand von Fach wäre mir 1000x lieber, weil z.B bei Rei* gibt es keinen ATMEGA32-16PU, nur welche mit anderer Bezeichnung als in der Hersteller-Stückliste. Da bestell ich evtl. was total falsches weil ich mich nicht auskenne. Hoffe, ich habe keine Frage vergessen PS: Es geht mir nicht darum, den letzten Euro zu sparen, DHL kostet nur € 7,00 aber selber programmieren- echt nicht, weil in englisch & keine Ahnung von der Materie… das kann doch nicht gut gehen... Noch eine kurze Funktionsbeschreibung: Auf dem Windows PC bearbeitet man die Ausgänge/Eingänge/Modellbahnuhr usw im sogenannten „RLX-Explorer“ (z.B. Ausg. 1 soll PWM 204 für 3 Sek, dann PWM 255 für 1 Sek, Rücksprung zu Schritt 1). Die Daten schickt man dann per RS232 Kabel an eine sogenannte „RLI-Zentrale“ welche diese dann zum entsprechenden „RLD-Decoder Nr.xx“ schickt. Dort reagiert dann eine Led am Ausgang 1 entspechend. PC & Explorer sind nur zum ändern erforderlich, der Decoder arbeitet quasi autark.
Markus O. schrieb: > Bzgl. Rohmaterialien besorgen: > Jemand von Fach wäre mir 1000x lieber, weil z.B bei Rei* gibt es keinen > ATMEGA32-16PU, nur welche mit anderer Bezeichnung als in der Die Best-Nr. "ATMEGA 32-16 DIP" ist der ATMEGA32-16PU. Sieht man unter dem Punkt "Artikelnummer des Herstellers" (Das "P" steht z.B. für DIP) > Hersteller-Stückliste. Da bestell ich evtl. was total falsches weil ich > mich nicht auskenne. > > PS: > Es geht mir nicht darum, den letzten Euro zu sparen, DHL kostet nur € > 7,00 aber selber programmieren- echt nicht, weil in englisch & keine > Ahnung von der Materie… das kann doch nicht gut gehen... Ich kann Dir das machen. Gerne auch mit den vorhandenen Prozessoren. Alles weitere per PM/eMail. Andreas
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.