Forum: Mikrocontroller und Digitale Elektronik Programm auf Attiny13 laden


von Dominik Z. (dom_z)


Lesenswert?

Moin Leute,

bin neu hier im Forum und hoffe dass ich nicht gleich alle Fettnäpfchen 
mitnehme ;-)

Bin auf der Suche nach einer eleganten und günstigen Servo-Steuerung auf 
folgendes Video gestoßen:
https://youtu.be/G_gH4knH0uQ

Diese Steuerung ist perfekt und genialerweise gibt's den Source-Code und 
die Schaltung unter folgendem Link gratis dazu.
http://elektronik.kaibareis.de/servo_ctrl/

Also die Schaltung/Platine bekomme ich hin und grundsätzlich weiß ich 
auch wie man einen Mikrokontroller programmiert. Hab ich vor 10 Jahren 
in der Schule mal gemacht.
Aber wie bekomme ich nun den Code aus der zip-Datei auf den Attiny13(a)?

- welche Software benötigt man dafür?
- als "Programmer" schwebte mir dieses Teil vor
https://rover.ebay.com/rover/0/0/0?mpre=https%3A%2F%2Fwww.ebay.de%2Fulk%2Fitm%2F253006210246
- welche Datei in der zip-Datei ist nun das Programm und wie bekomme ich 
es auf den attiny?
- am besten Schritt für Schritt für die entsprechende Software

Falls das alles zu komplex zum Erklären ist wäre ich auch schon froh 
darüber wenn mir jemand den Source-Code auf den attiny13(a) schieben 
könnte. Natürlich für eine kleine Aufwandsentschädigung ;-). Dann müsste 
ich nur noch die Platine basteln und den attiny aufstecken.

Bin viel in Hamburg und Bremen unterwegs. Also falls es dort jemand 
fachkundiges gibt wäre ich für eine persönliche Nachhilfestunde bzw. 
Hilfe besonders dankbar.

Ich hoffe mir kann jemand helfen.
Gruß Dominik

von HildeK (Gast)


Lesenswert?

Die Dateiendung .hex enthält das compilierte Programm.
Die .eep muss man ins EEPROM laden, üblicherweise Parameter etc.
Wenn ich mich richtig erinnere, beinhaltet die .elf beides, vermutlich 
auch die Fuses. Das müsste aber noch jemand bestätigen ...

von Einer K. (Gast)


Lesenswert?

Dominik Z. schrieb:
> - welche Software benötigt man dafür?
avrdude

Dominik Z. schrieb:
> - als "Programmer" schwebte mir dieses Teil vor
> 
https://rover.ebay.com/rover/0/0/0?mpre=https%3A%2F%2Fwww.ebay.de%2Fulk%2Fitm%2F253006210246
Ein Irrtum.
Das ist kein Programmer.

Eigentlich jeder Arduino kann zu einem ISP Programmer gemacht werden.
Ansonsten, Atmel ICE, USBasp, TinyISP, uvw...
Google: "isp programmer avr"
Dutzende es gibt.

von DAVID B. (bastler-david)


Angehängte Dateien:

Lesenswert?

Ich verwende so was hier unter windows 10 64 bit.
https://www.ebay.de/itm/AVR-51-Programmer-Adapter-mit-10-Pin-Kabel-ATMega-ATTiny-USB-asp-USBISP-Neu-3290/173225987905?hash=item285512cf41:g:-tUAAOSwMURasKNX

Eine Platine zum übertragen zum attiny musste aber selber zusammen löten 
oder mit Steckbrett was aber schief gehen kann.
und zum aufspielen von hex datein nehme ich immer :eXtreme Burner - AVR
Wird zwar als Virus erkannt ist aber sauber eigentlich.

http://extremeelectronics.co.in/avr-tutorials/gui-software-for-usbasp-based-usb-avr-programmers/

: Bearbeitet durch User
von Dominik Z. (dom_z)


Lesenswert?

Hey vielen Danke die schnellen und vielen Antworten. Sogar mit Bild sehr 
cool.
Also ich hab aus den Antworten mal folgenden Stand für mich entwickelt:

-.hex .eep und .elf Dateien habe ich in der zip-Datei gefunden
- muss jetzt nur die hex Datei auf den attiny oder auch die eep? Und was 
ist die elf Datei?
- als Programmer werde ich mir einen USBasp wie David ihn empfohlen hat 
besorgen
- den attiny werde ich mit einem Breadboard und Jumperkabeln 
anschließen. (oder vllt doch ne Platine löten)
- als Software kämen jetzt avrdude oder eXtreme Burner AVR in Frage. 
Kann mir jemand zu einem der Programme eine kurze Beschreibung geben wie 
ich die richtigen Daten auf den attiny bekomme?

Vielen Dank und schönenAbend noch.
Gruß Dominik

von Einer K. (Gast)


Lesenswert?

Ich will jetzt gar nicht so ehrlich zu dir sein, wie ich gerne möchte!
Und ich bitte dich herzlichst um Verzeihung, für die Gedanken, welche 
ich gerade denke.

von DAVID B. (bastler-david)


Lesenswert?

Ja kein Problem.
Eine Anleitung hmm.
Naja Programm starten Chip auswählen.
Auf open klicken Datei wählen und hochladen lassen.

ICH würde dir zu einer Platine raten die 5 strippen sind keine Kunst 
zulösten du hast aber die Sicherheit das es auch eklektisch verbunden 
ist und du nicht stunden lang bei Google nach einen Problem sucht 
welches durch schlechte kabel haus gemacht ist.

Einen attiny13 mit deinen Programm zu beschreiben könnte dir sicher 
einer machen aber ich glaube es ist besser wenn du dich selber damit 
befasst.
Du wirst es unter garantie NICHT bei einen Projekt belassen.
Solltes du nicht zu recht kommen könnte ich dir ein kleinen video machen 
aber ich denke die 5 klicks bekommste hin!

: Bearbeitet durch User
von Dominik Z. (dom_z)


Lesenswert?

Ja ähm sorry falls meine Fragen zu dämlich waren...

Danke David. Das ist dann natürlich sehr einfach. Werd mir das mal alles 
besorgen und ausprobieren.
Und auch deinen Rat mit der Platine werde ich beherzigen.

von H.Joachim S. (crazyhorse)


Lesenswert?

Dominik Z. schrieb:
> -.hex .eep und .elf Dateien habe ich in der zip-Datei gefunden
> - muss jetzt nur die hex Datei auf den attiny oder auch die eep? Und was
> ist die elf Datei?

Im Idealfall nimmst du nur die *.elf-Datei, denn da ist auch die 
Programmierung der fuses mit drin (die selten in der werksseitigen 
Einstellung bleiben). Programmiert dir also Flash, Eeprom und fuses. Die 
Informationen für korrekte fuses sind in den anderen Dateien NICHT 
enthalten, das sind nur die Daten für Flash (hex) und Eeprom (eep).

von DAVID B. (bastler-david)


Lesenswert?

Ehm ein tipp zum ende noch erwarte NICHT das es gleich beim ersten 
versuch geht.
Das kann ich dir schon sagen wird es NICHT tuen.
Und noch was zum Anfang lass die finger von sicherungen/fuses die können 
dir deinen attiny13a schnell unbrauchbar machen.

Die treiber für dein usbasp bekommste von hier:
https://www.fischl.de/usbasp/

von Stefan F. (Gast)


Lesenswert?

> Diese Steuerung ist perfekt

Mich stört allerdings erheblich, dass der Servo Motor am selben 
Spannungsregler hängt, wie der Mikrocontroller. Das provoziert Probleme.

Modellbau Servos benötigen keine stabilisierte Spannungsversorgung. Sie 
laufen alle mindestens im Bereich 4,5 bis 6V zuverlässig. Manche sind 
noch toleranter.

von Stefan F. (Gast)


Lesenswert?

> Und noch was zum Anfang lass die finger von sicherungen/fuses

Der Ratschlag ist gut gemeint, aber für dieses konkrete Programm hat er 
keine Wahl.

von Karl B. (gustav)


Angehängte Dateien:

Lesenswert?

H.Joachim S. schrieb:
> Im Idealfall nimmst du nur die *.elf-Datei, denn da ist auch die
> Programmierung der fuses mit drin (die selten in der werksseitigen
> Einstellung bleiben).

Hi,
zur Sicherheit würde ich das noch überprüfen.

Siehe Bild.

ciao
gustav

von Dominik Z. (dom_z)


Lesenswert?

Hey mal wieder vielen Dank für die vielen Beiträge.

Der USBasp ist bestellt und kommt nächste Woche. Ich kann also erst dann 
weitere Versuche starten. In der Zwischenzeit werde ich schon mal die 
Platine zum Programmieren und für die Servosteuerung löten.

Mein Plan ist es dann die elf Datei mittels :eXtreme Burner - AVR auf 
den Attiny13 zu laden. In der elf-Datei sollen die Fuses ja gleich mit 
eingestellt werden, somit habe ich nicht vor selbst an den Fuses Hand an 
zu legen.

Ich hatte vor den Spannungsregler weg zu lassen, da ich eine 
Spannungsversorgung mittels 5V Netzteil realisieren wollte.
Oder ist ein Spannungsregler für den Mikrokontroller zwingend 
erforderlich?
Im Youtube Video ist ja auch kein Spannungsregler verbaut.

von spess53 (Gast)


Lesenswert?

Hi

>Hi, zur Sicherheit würde ich das noch überprüfen.

Das betrifft aber den 'Save'-Fall, nicht das Programmieren.

MfG Spess

von Karl B. (gustav)


Angehängte Dateien:

Lesenswert?

spess53 schrieb:
> Das betrifft aber den 'Save'-Fall, nicht das Programmieren.
>
> MfG Spess

Hi,
das heißt, wenn ich (*.elf) programmiere, lasse ich die entsprechenden 
Häkchen unten im Bild raus. bzw. brauche mich darum gar nicht zu 
kümmern.
Im Bild sieht es eher so aus, dass die Fuses und Lockbits nicht im zu 
erstellenden *.elf-File drin sind.
Hat derjenige, der das *.elf-File hier zur Verfügung stellt, das auch so 
gemacht?

ciao
gustav

P.S.:
Das elf-File wird zwar erstellt, hernach aber nicht als gültig erkannt.
Heißt im Klartext, beim "Save"-Fall müssen die Häkchen gesetzt sein.

: Bearbeitet durch User
von H.Joachim S. (crazyhorse)


Lesenswert?

Karl B. schrieb:
> Hat derjenige, der das *.elf-File hier zur Verfügung stellt, das auch so
> gemacht?

Sieht nicht so aus :-)
Wenn man schon eine elf-Datei rausgibt, sollte sie auch vollständig 
sein. Also mussst du dich selbst um die fuses kümmern.

von Stefan F. (Gast)


Lesenswert?

Der Mikrocontroller benötigt eine Spannungsversorgung. Die muss nicht 
zwingend 5V sein, es kann auch weniger sein. Sie muss aber stabil sein. 
Batterien sind geeignet, Eisenbahn-Trafos (ohne Spannungsregler) jedoch 
nicht.

Viele Programmieradapter benötigen eine Verbindung zur 
Spannungsversorgung des Mikrocontrollers, um damit ihre 
Schnittstellentreiber zu versorgen. Sie passen sich damit an die 
Spannungsversorgung der Zielschaltung an.

Anders ist das bei USBAAP. Dessen Signale haben immer 5V Pegel und 
dessen VCC Anschluss ist ausnahmsweise ein Ausgang. Das ist zwar 
praktisch, aber dennoch eine erhebliche Abweichung vom Standard die man 
besser nicht eingeführt hätte, weil sie bei Anfängern schon oft zu 
Irritationen geführt hat. Und es ist schon ziemlich entmutigend, wenn 
man sein erstes Blinki-Programm nicht übertragen kann.

Die Spannungsversorgung vom Mikrcocontroller darf maximal 0,5V von der 
Signalspannung des Programmieradapters abweichen.

Viele USBASP enthalten einen umschaltbaren 3,3V / 5V Spannungsregler, 
arbeiten aber dennoch stets mit 5V Signalen. Dort ist die 
Spannungsumschaltung unsinnig.

von Karl B. (gustav)


Angehängte Dateien:

Lesenswert?

Karl B. schrieb:
> Das elf-File wird zwar erstellt, hernach aber nicht als gültig erkannt.
> Heißt im Klartext, beim "Save"-Fall müssen die Häkchen gesetzt sein.

Siehe Bild.

ciao
gustav

von Dominik Z. (dom_z)


Lesenswert?

> Sie muss aber stabil sein.
> Batterien sind geeignet, Eisenbahn-Trafos (ohne Spannungsregler) jedoch
> nicht.

Ist ein einfaches USB-Netzteil geeignet?


> Anders ist das bei USBAAP. Dessen Signale haben immer 5V Pegel und
> dessen VCC Anschluss ist ausnahmsweise ein Ausgang.
Hatte es bisher so verstanden, dass nur der USBasp mit dem 
Mikrokontroller verbunden wird und die Spannungsversorgung für den 
attiny zum Programmieren ebenfalls vom USBasp geliefert wird.

von Einer K. (Gast)


Lesenswert?

Dominik Z. schrieb:
> Hatte es bisher so verstanden,
Was soll das "bisher" dort bedeuten?

Nein, ich kenne "bisher", weiß aber nicht, was es da soll....

von Dominik Z. (dom_z)


Lesenswert?

> Was soll das "bisher" dort bedeuten?

Ok ist schon nen Füllwort. Sollte grundsätzlich so klingen dass ich 
keine praktische Erfahrung damit habe, dass dies mein Stand ist und dass 
ich bereit bin mein Verständnis anzupassen wenn es falsch sein sollte

von Stefan F. (Gast)


Lesenswert?

> Ist ein einfaches USB-Netzteil geeignet?

Kommt sehr aufs Netzteil an. Ich hatte bisher nur eins, das nicht 
geeignet war.

Smartphone Lade-Netzteile brauchen aber eine gewisse Mindestlast um 
keine Überspannung auszugeben. Ein 220 Ohm Widerstand genügte in meinen 
Fällen als Mindestlast.

Bei den mir bekannten USBASP basierten Programmieradaptern ist der VCC 
Anschluss ein Ausgang, mit dem man die Zielschaltung versorgen kann 
(nicht muss).

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
Noch kein Account? Hier anmelden.