Hallo, ich habe vor ein System mit mehreren AVRs aufzubauen. Jedoch ist es mühsam nach einer Softwareänderung jeden der 4 AVRs einzeln zu flashen. Deswegen habe ich mir gedacht, ob es nicht möglich wäre, daß ein AVR beim erststart alle anderen flasht. Da ich einen Mega128 als Master benutze, welcher mit sd-card bedient werden kann, wäre es praktisch, wenn dieser diese Arbeit verrichten könnte. Die anderen AVRs sind Tiny2313er. Jetzt meine Frage, hat das von euch schonmal jemand versucht oder sogar umgesetzt? Was muß man dabei beachten? Soweit ich weiß geht das über SPI, aber ist das auch in Bascom realisierbar?
Ich hab nen eigenen SPI-Progger fürn PC und Windows und Linux geschrieben. Ist eigentlich ziemlich easy und der code müsste auch leicht auf den Mega128 protierbar sein. Du müsstest nur die IO-routinen, Datenquelle und Timings anpassen. Ein bisschen hintergrundwissen, wie SPI funktioniert, wäre nicht schlecht, ist aber auch in jedem ATMega-Dokument unter "Memory Programming" -> "Serial Downloading" beschrieben. http://www.monarch.de/Prommer.zip
Ja, es ist im Prinzip ein SPI-Interface. Ausser dem Timing gibt es wenig zu beachten, aber die Angaben finden sich im Datenblatt des zu programmierenden Controllers. Guter Einstieg ist auch die AppNote 910. Man muss bei mehreren Zielen nur sicherstellen, dass die grade nicht zu programmierenden Controller nicht auf dem "Bus" dazwischenreden. Eine Art Chip-Select kann man ueber die Reset-Anschluesse oder die Takteingaenge implementieren. Martin
Apropo Reset, muß ich mit dem auch was machen wenn ich flashen will, oder einfach nur auf high?
Im jeweiligen Datenblatt gibt es ein Kapitel zum Thema "serial downloading". Da ist alles ausführlich beschrieben, auch das mit dem Reset. ...
Danke, werd mir das mal reinziehen. Was schick ich zum flashen eigentlich, das Bin-File?
In aller Regel wird ein .hex-file generiert. Das ist eine ASCII-Datei, die beschreibt, an welcher speicherstelle welches byte stehen muss. Ein Hex-file parser ist in meinen quellen bei...
Ja, Hex-files habe ich auch. Ok, danke, werde das dann mal probieren, obs so klappt, wie ich will
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.