SPI - Programmer für AVR Attiny85

OP #4530649
Hallo liebe Community,

ich bin erst neu in diesem Forum, also seht mir Anfänger- oder 
Denkfehler bitte nach.

Mein Frage ist folgende:

Ich programmiere seit längerem mit der Arduino Serie (hauptsächlich Uno) 
und bin dabei mir Grundkenntnisse in der Mikrocontroller AVR 
Programmierung in C anzueignen ( habe in C fortgeschrittene Kenntnisse), 
jetzt das eigentlich Problem um die Controller zu programmieren, 
benötige ich einen Programmer, welchen ich aber nicht habe. Da ich sehr 
gerne selber einen basteln würde (die normalen sind mir zu teuer), 
wollte ich mich hier erkundigen ob jemand derartiges schon einmal 
gebastelt hat (haben sicherlich schon viele von euch gemacht) und mir 
falls möglich Tipps zukommen lassen.

Habe schon von Projekten wie VUSB und usbtiny gehört. Zudem habe ich die 
Diskussion über den MMR - 70 hier im Forum mitverfolgt und wollte fragen 
ob man daraus vielleicht auch einen SPI - Programmer basteln könnte.

Vielen Dank für eure Ideen und Antworten schon einmal im vorhinein.

Freundliche Grüße und ein schönes Wochenende

F.
Gast #4530943
Frederik R. schrieb:
> ich vertausche die beiden Begriffe immer.

Mach dir einfach klar, für was die drei Buchstaben jeweils stehen.

Wenn man blind irgendwelche Akronym verwendet, werden sie allzu leicht 
gesichtslos. Ggf. peinliche Verwechselungen passieren dann schnell.
#4530950
Wolfgang A. schrieb:
> Wenn man blind irgendwelche Akronym verwendet, werden sie allzu leicht
> gesichtslos. Ggf. peinliche Verwechselungen passieren dann schnell.

Wie wahr! Nehmen wir das Wort: "SAU" Das kann ein weibliches Hausschwein 
sein, aber auch ein italienischer Fußballspieler:
https://de.wikipedia.org/wiki/Marco_Sau

Man sieht: Das Bestehen auf absoluter Korrektheit ist unabdingbar.

MfG Paul
(Firma: guloshop.de) #4531196
Michael U. schrieb:
> dann nimm doch einfach Deinen UNO, spiele den ISP-Sketch rauf und Du
> hast einen ISP-Programmer auch für Deinen Tiny85 nutzbar.

Kann ich so unterschreiben.

Oder du nimmst den ATtiny85, um einen Programmer zu bauen, mit dem du 
dann den ATtiny85 programmieren kannst. ;-)

Abgesehen von dem Henne-Ei-Problem ist das eine nette Bastelei.

Wiki-Link: Bierdeckel-Programmer
Angehängte Dateien:
OP #4531585
Vielen Dank Markus.
Etwas in dieser Art habe ich gesucht, schätze mal werde es in den 
nächsten Tagen mal nach basteln, ob ich das Design übernehme überlege 
ich mir noch. Ist aber auf jeden Fall ein lustiger Gag und scheint ja 
auch recht simpel zu sein.

Ein schönes Wochenende noch und liebe Grüße

Frederik
#4531804
Hallo,

das kann man so nachbauen, man kann aber auch den Arduino-Sketch nehmen.
Nachteil der Mini-Schaltung: die Software-USB-Lösungen (V-USB usw.) sind 
eigentlich nicht kompatibel zum USB-Standard. Sie funktionieren meist, 
es ist aber nichts nervender, als einen Fehler im eigenen Programm zu 
suchen UND mit dem Programmer zu diskutieren...

Das Problem hat der Uno wegen seines USB-Ser-Wandlers nicht.

Gruß aus Berlin
Michael
OP #4531829
Kann ich mit dem Arduino Uno dann auch Hex Dateien auf den Attiny85 
spielen, weil ich würde gerne die Sketches in C im Atmel Studio 
entwickeln und dann per ISP - Programmer auf den Attiny spielen, kann 
man da dann auch den Arduino nehmen? (wenn ja wie?)

Freundliche Grüße

Frederik
(Firma: guloshop.de) #4531994
Michael U. schrieb:
> das kann man so nachbauen, man kann aber auch den Arduino-Sketch nehmen.

Würde ich auch. Wenn der Arduino schon mal da ist, kann man ihn auch als 
Programmer benutzen.

> Nachteil der Mini-Schaltung: die Software-USB-Lösungen (V-USB usw.) sind
> eigentlich nicht kompatibel zum USB-Standard.

Das hab ich hier schon öfter gelesen, aber bisher noch keine Abweichung 
zum Standard gefunden. Das USB-Protokoll wird zwar per Software 
emuliert, aber es ist nach wie vor dasselbe Protokoll.

Natürlich beherrscht die Lösung nur die USB-Control-Nachrichten und ist 
daher auf Polling-Betrieb angewiesen. Auch ist sie in ihrer 
Übertragungsgeschwindigkeit eingeschränkt. Darauf kommts beim 
Programmieren für Bastelzwecke aber nicht an... denk ich.

Grüße
Markus
#4532006
Hallo,

Markus W. schrieb:
> Das hab ich hier schon öfter gelesen, aber bisher noch keine Abweichung
> zum Standard gefunden. Das USB-Protokoll wird zwar per Software
> emuliert, aber es ist nach wie vor dasselbe Protokoll.

ich weiß zugegebn nichtmal, ob das so noch zutrofft. Irgendwie ging es 
wohl darum, daß ein USB1 gemacht wird was mit den Endpoints, was 
eigentlich nach dem Standard nicht zusammengehört.

Ha ja, hab den Satz mal frech aus einem Posting kopiert:

Zitat:
CDC Devices darf es laut USB 2.0 nur als Full-Speed Device geben, weil
Bulk Endpoints bei Low Speed Devices nicht erlaubt sind. Das ist einer
von vielen Punkten. Lies den USB-Standard und vergleiche Soll und Ist.

Gruß aus Berlin
Michael
(Firma: guloshop.de) #4532025
Michael U. schrieb:
> Zitat:
> CDC Devices darf es laut USB 2.0 nur als Full-Speed Device geben, weil
> Bulk Endpoints bei Low Speed Devices nicht erlaubt sind.

Glaube ich ungeprüft.

Allerdings handelt es sich bei den VUSB-Teilen um USB-1.1-"Geräte". USB 
2.0 wird also gar nicht verwendet.

Dass man bei USB 2.0 eventuelle Bulk-Übertragungen nicht per 
Control-Message übertragen soll, liegt daran, dass man mit der 
Bandbreite haushalten will und Control-Messages zeitkritischen 
Steuerinformationen vorbehalten sein sollen.

Was aber, wenn es aber gar kein USB-Bandbreitenproblem gibt, weil 
während des Programmiervorgangs keine Geräte konkurrieren, und man 
vielleicht zudem das Programmieren als zeitkritische Anwendung und die 
paar kBytes nicht als Bulk ansieht?

Aus meiner Sicht ist VUSB zu USB 1.1 und wahrscheinlich auch zu USB 2.0 
konform...
#4532463
Frederik R. schrieb:
> Kann ich mit dem Arduino Uno dann auch Hex Dateien auf den Attiny85
> spielen, weil ich würde gerne die Sketches in C im Atmel Studio
> entwickeln und dann per ISP - Programmer auf den Attiny spielen, kann
> man da dann auch den Arduino nehmen? (wenn ja wie?)

Ja...
du musst in Atmel ein neues Externes-Tool anlegen und dort den Pfad zum 
avrdude.exe und die kommandozeile mit avrdude eintragen.
Dann kannst du dir eine Schaltfläche in der Menüleiste platzieren und 
hast per Mausklick gleich immer das flashen click-bereit.

Da ich gerade auf der Arbeit bin und die komplette Kommandozeile nicht 
auswendig weiß hier mal ein Link:
https://asensar.com/blog/2013/how-to-integrate-avrdude-with-atmel-studio/

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.