Hallo zusammen, wir haben ein Projekt, in dem eine Host-CPU (iMX6) einen Atmega88p programmieren soll. Als Hardwareschnittstelle sollte eine SPI Schnittstelle genommen werden, die an die ISP des Atmega geklemmt werden soll. Das sollte gehen. Auf dem iMX6 soll Linux laufen. 1. Gibt es ein Tool (avrdude?), womit ich den Atmega über den SPI programmieren kann? 2. Wenn nicht, hat jemand source code für so einen Fall? Danke Alex
Alexander H. schrieb: > Hallo zusammen, > wir haben ein Projekt, in dem eine Host-CPU (iMX6) einen Atmega88p > programmieren soll. Als Hardwareschnittstelle sollte eine SPI > Schnittstelle genommen werden, die an die ISP des Atmega geklemmt werden > soll. Das sollte gehen. > Auf dem iMX6 soll Linux laufen. > 1. Gibt es ein Tool (avrdude?), womit ich den Atmega über den SPI > programmieren kann? Sicher. Nur avrdude setzt natürlich auf ein Interface (aka Programmer) auf. Wie hier avrdude über deine Host-CPU einen AVR programmieren soll, kann ich mir momentan nicht so recht vorstellen. > 2. Wenn nicht, hat jemand source code für so einen Fall? avrdude ist doch open source. Da drin sollte man doch alles finden was man an Code zum flashen eines avr braucht. Außerdem wird der Programmiervorgang im Datenblatt recht gut geschildert und ist nicht gerade Raketenwissenschaft.
ich habe gerade das hier gefunden: https://www.mikrocontroller.net/articles/Raspberry_Pi_als_Universalprogrammer In der offiziellen Versiondes avrdude wird aber keine programmer-id für linuxspi angegeben. Hmmm.... Alex
Wie in dem Artikel steht ist das eine spezielle Version von avrdude: https://github.com/kcuzner/avrdude Compilier es einfach so wie in dem Artikel angegeben und dann geht es evtl. Leider ist das nicht ordentlich rebased, so dass man nicht einfach die Unterschiede sehen kann...
@ Alexander H. (alex1) >programmieren soll. Als Hardwareschnittstelle sollte eine SPI >Schnittstelle genommen werden, die an die ISP des Atmega geklemmt werden >soll. Das sollte gehen. Ja, ist aber einiges an Entwicklungsaufwand. >1. Gibt es ein Tool (avrdude?), womit ich den Atmega über den SPI >programmieren kann? Nein, AVRdude läuft über UART bzw. andere Schnittstellen. Es redet nicht mit dem Zielprozessor sondern dem Programmieradapter. Ich würde einfach einen kleinen AVR als Programmieradapter zwischenschalten. Das kostet vielleicht 1-2 Euro an Hardware, erspart aber tausende von Euro an Entwicklungskosten. Von Atmel gibt es eine App-Note, wo alles für den Programmieradapter drin ist, incl. Hex-File.
Hallo, ich werde es erst mal hiermit testen, und mich dann mal melden. Danke Alex
Hi, Alexander, > wir haben ein Projekt, in dem eine Host-CPU (iMX6) einen Atmega88p > programmieren soll. Als Hardwareschnittstelle sollte eine SPI > Schnittstelle genommen werden, die an die ISP des Atmega geklemmt werden > soll. Warum keinen Bootloader für den AtMega88 programmieren, der ab Power-On-Reset a) Seine SPI-Schnittstelle auf Empfang stellt. b) Ein paar Minuten auf ein neues Application Program vom Host wartet. c) Wenn das kommt, dies dann in seine Application Area lädt. d) Wenn nichts kommt, das alte Programm aufruft. Zur Sicherheit gegen Missbrauch kann das Bootloading über SPI mit einem Dialog zum Austausch von Kennwörtern verfeinert werden. Sogar Verschlüsselung soll gemacht worden sein. Schau im Datenblatt zum Atmega88 auf Seite 279. Im Web findest Du jede Menge Beispiele, wo das Application Program über USART geladen wird. Das lässt sich leicht umschreiben auf SPI. Ciao Wolfgang Horn
Hallo Wolfgang, ja, das ist richtig. Ich wollte jetzt erstmal ohne Zusatzaufwand weiterkommen. Einen Bootloader kann ich dann im 2. Schritt machen, wenn der Erste nicht geht. Alex
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.