Forum: Mikrocontroller und Digitale Elektronik Bootloader für 328P ohne Arduino IDE nutzbar?


von Hendrik L. (lbd)


Lesenswert?

Hallo zusammen,

habe folgendes vor:

Möchte einen 328P mit einem Bootloader flashen, aber nicht die Arduino 
IDE für die Programmentwicklung nutzen.

Vielmehr möchte ich nach Impelemntierung des (Arduino- ???) Bootloaders 
die Programme aus Linux (Terminalfenster / Shell) in den 328P laden.

Oder geibt es andere Bootloader, die für den 328P in Verbindung mit 
Linus enpfehlenswert sind?

Danke im voraus.

Beitrag #5007798 wurde vom Autor gelöscht.
von Philipp_K59 (Gast)


Lesenswert?

Das kann man mit avrdude.

Da gibt es genügend Beispiele.

von Hendrik L. (lbd)


Lesenswert?

Ok - etwas genauer:

Ich möchte nicht über die ISP-Schnittstelle gehen, sondern Programme 
über den I2C oder UART flashen (aus Linux heraus).

Wie sieht es dann aus?

Danke im Voraus.

von Joachim B. (jar)


Lesenswert?

die IDE muss man doch nicht zur Programmentwicklung nehmen soweit ich 
hier las,

loop & setup weglassen dann soll alles wie gehabt sein, selber eine 
main() & while(1) oder for(;;) kreieren.

Die IDE kann man dann doch trotzdem nutzen um seriell zu flashen, der 
Arduino Bootloader sollt aber auf dem 328p sein und dieser den passenden 
Quarz haben 8 MHz (für 3,3V-5V Betrieb) oder 16 MHz (für 5V Betrieb)und 
auch die fuse müssen gesetzt sein und der Bootloader die richtige F_CPU 
haben damit das timing passt.

Bootloader kann man ja im Netz finden oder man liest sie aus.

Aus Linux geht auch mit der IDE, habe gerade meinen win7 und PI auf die 
IDE 1.8.2 gesetzt

: Bearbeitet durch User
von Einer K. (Gast)


Lesenswert?

Hendrik L. schrieb:
> Ich möchte nicht über die ISP-Schnittstelle gehen, sondern Programme
> über den I2C oder UART flashen (aus Linux heraus).
>
> Wie sieht es dann aus?

Die Antwort hast du schon bekommen!
Das Zauberwort heißt: avrdude

von Hendrik L. (lbd)


Lesenswert?

Arduino F. schrieb:
> Hendrik L. schrieb:
>> Ich möchte nicht über die ISP-Schnittstelle gehen, sondern Programme
>> über den I2C oder UART flashen (aus Linux heraus).
>>
>> Wie sieht es dann aus?
>
> Die Antwort hast du schon bekommen!
> Das Zauberwort heißt: avrdude

AVRdude ist mir natürlich bekannt. Ohne Arduino zu kennen (ich will mich 
auch gar nicht einarbeiten):

Ich gehe davon aus, es gibt ein "Empfangsprogramm" (von Arduino), das in 
den 328P per IDE über ISP einmalig geflashed wird (meine 328P kommen aus 
China - nicht von Arduino!).

Dann beötige ich PC-seitig (Raspberry) sicherlich noch ein 
"Master-Programm" (AVRdude ???), das das Protokoll von Arduino 
"versteht" - gehe davon aus, AVRdude tut dieses nicht - bzw. als Master 
den Ladevorgang in den 328P protokollmässig steuern kann.

Wo ist mein Gedankenfehler?

Danke und Gruß

von Einer K. (Gast)


Lesenswert?

Hendrik L. schrieb:
> Dann beötige ich PC-seitig (Raspberry) sicherlich noch ein
> "Master-Programm" (AVRdude ???), das das Protokoll von Arduino
> "versteht" - gehe davon aus, AVRdude tut dieses nicht - bzw. als Master
> den Ladevorgang in den 328P protokollmässig steuern kann.

Kannst du das mal übersetzen?

von Jan L. (ranzcopter)


Lesenswert?

Hendrik L. schrieb:
> Wo ist mein Gedankenfehler?

- das "Transferprogramm" ist der Bootloader (und der ist nicht "von 
Arduino"); z.B. Optiboot..

- die Arduino IDE benutzt selbst "intern" den avrdude, der nativen 
Support für diverse Bootloader mitbringt, um direkt per USB (oder UART) 
flashen zu können

- der Bootloader wird üblicherweise einmalig per ISP geschrieben

von Philipp_K59 (Gast)


Lesenswert?

Hendrik L. schrieb:
> das das Protokoll von Arduino
> "versteht" - gehe davon aus, AVRdude tut dieses nicht - bzw. als Master
> den Ladevorgang in den 328P protokollmässig steuern kann.

Ich antwortete auf Deine sehr spezifische Frage "Das kann man mit 
avrdude"!

Zum Beispiel mit Bootloader:

avrdude -carduino -pm328p -b56700

oder um den Bootloader selber mit einem 1€ usbasp via ISP zu brennen.

avrdude -cusbasp -pm328p -B60

So mal als Tip, nehm nen bootloader mit 115200baud.. das geht schneller.

von Lothar (Gast)


Lesenswert?

Arduino F. schrieb:
> Das Zauberwort heißt: avrdude

Unsinn: das HEX-File kann direkt an den Arduino UART Bootloader gesendet 
werden, per Terminal oder mit einem Flasher z.B.

http://www.hobbytronics.co.uk/arduino-xloader

Besser wäre natürlich der Umstieg von Arduino / AVR auf einen uC mit 
vernünftigem ROM-Bootloader ohne Startup-Delay z.B. EFM8 LPC ARM etc. 
:-)

von Joachim B. (jar)


Lesenswert?

Hendrik L. schrieb:
> Ich gehe davon aus, es gibt ein "Empfangsprogramm" (von Arduino), das in
> den 328P per IDE über ISP einmalig geflashed wird (meine 328P kommen aus
> China - nicht von Arduino!).
>
> Dann beötige ich PC-seitig (Raspberry) sicherlich noch ein
> "Master-Programm" (AVRdude ???),

und das alles hatte ich beantwortet.....


was ist daran unklar?

im 328p ein Bootloader, aus der Arduino IDE kannst du abschicken vom PI 
oder PC, du kannst sogar ohne setup und loop programmieren.

von Hotte (Gast)


Lesenswert?

Hendrik L. schrieb:
> Ich gehe davon aus, es gibt ein "Empfangsprogramm" (von Arduino), das in
> den 328P per IDE über ISP einmalig geflashed wird (meine 328P kommen aus
> China - nicht von Arduino!).

Ja, das "Empfangsprogramm", wie du es bezeichnest, heißt "Bootloader" 
und ist schon auf den Arduinos geflasht (egal ob sie aus China oder 
Italien kommen).

Hendrik L. schrieb:
> Dann beötige ich PC-seitig (Raspberry) sicherlich noch ein
> "Master-Programm" (AVRdude ???), das das Protokoll von Arduino
> "versteht" - gehe davon aus, AVRdude tut dieses nicht - bzw. als Master
> den Ladevorgang in den 328P protokollmässig steuern kann.

Gehe mal davon aus, daß AVRDude das doch tut. Es gibt Beschreibungen 
dazu wie Sand am Meer. Und ich weiß aus eigener Erfahrung, daß es 
problemlos geht. Ich habe schon Nanos und Unos programmiert damit. Und 
zwar mit AVR-Studio, wo ich einen AVRdude als externes Tool eingebunden 
habe.
Genauso geht das auch mit Luna-Avr. Dort kann man genauso den AVRdude 
einbinden und damit die Arduinos programmieren.
Fazit: Die gemeinsamen Punkte sind: Bootloader und AVRdude...

von Lothar (Gast)


Lesenswert?

Joachim B. schrieb:
> und das alles hatte ich beantwortet

Falsch beantwortet. Geht alles ganz ohne AVR Kenntnisse wie Fuses und 
CLK. Und schon gar nicht braucht man einen anderen Bootloader als den 
der schon drauf ist.

von Einer K. (Gast)


Lesenswert?

Lothar schrieb:
> Unsinn: das HEX-File kann direkt an den Arduino UART Bootloader gesendet
> werden, per Terminal oder mit einem Flasher z.B.

Leicht plemplem heute?

Sage mir doch mal, warum dein heißgeliebter XLoader averdude.exe im 
Bauch mitführt?
Nur so zum Spaß?

Hihihi ....

von Lothar (Gast)


Lesenswert?

Hotte schrieb:
> Fazit: Die gemeinsamen Punkte sind: Bootloader und AVRdude...

Bevor ich hier aufgebe: das ist falsch ...

Lothar schrieb:
> Unsinn: das HEX-File kann direkt an den Arduino UART Bootloader gesendet
> werden, per Terminal oder mit einem Flasher z.B.
>
> http://www.hobbytronics.co.uk/arduino-xloader

von Lothar (Gast)


Lesenswert?

Arduino F. schrieb:
> Sage mir doch mal, warum dein heißgeliebter XLoader averdude.exe im
> Bauch mitführt?

Der Frager muss avrdude dafür weder kennen noch die Optionen ...

von Hotte (Gast)


Lesenswert?

Lothar schrieb:
> Arduino F. schrieb:
>> Das Zauberwort heißt: avrdude
>
> Unsinn: das HEX-File kann direkt an den Arduino UART Bootloader gesendet
> werden, per Terminal oder mit einem Flasher z.B.
>
> http://www.hobbytronics.co.uk/arduino-xloader

Warum ist das "Unsinn"? Das ist genau richtig!
Du bezeichnest den AVRdude als "Unsinn" und schlägst den Xloader vor, 
der exakt das gleiche macht wie der AVRdude, nämlich das HEX-File an den 
Bootloader zu schicken.

von Joachim B. (jar)


Lesenswert?

Lothar schrieb:
> Falsch beantwortet. Geht alles ganz ohne AVR Kenntnisse wie Fuses und
> CLK. Und schon gar nicht braucht man einen anderen Bootloader als den
> der schon drauf ist.

welcher nackte ATmega328p kommt bitte mit Bootloader?
Alle die ich aus der Stange nehme nämlich nicht!

: Bearbeitet durch User
von Hotte (Gast)


Lesenswert?

Lothar schrieb:
> Hotte schrieb:
>> Fazit: Die gemeinsamen Punkte sind: Bootloader und AVRdude...
>
> Bevor ich hier aufgebe: das ist falsch ...

Wenn du meinst...
Dann habe ich mir das mit dem Programmieren eben nur eingebildet und die 
Platinchen laufen gar nicht...

von Hotte (Gast)


Lesenswert?

Joachim B. schrieb:
> welcher nackte ATmega328p kommt bitte mit Bootloader?
> Alle die ich aus der Stange nehme nämlich nicht!

Deshalb schrieb der TO ja auch, daß er einen Bootloader flashen möchte, 
dann aber nicht die Arduino IDE nutzen möchte:

Hendrik L. schrieb:
> Möchte einen 328P mit einem Bootloader flashen, aber nicht die Arduino
> IDE für die Programmentwicklung nutzen.

von batman (Gast)


Lesenswert?

Wie machst du das denn mit dem Terminalprogramm? Bei mir läuft da vor 
der eigentlichen Datenübertragung eine Synchronisation zwischen 
Bootloader und Peer ab.

von Hendrik L. (lbd)


Lesenswert?

Also - aus den vorherigen Hinweisen entnommen:

Auf dieses x-beliebige 328P Board z.B. 
https://www.banggood.com/ATmega328P-Nano-V3-Controller-Board-Compatible-Arduino-p-940937.html?rmmds=search

(zufällig vom Verkäufer mit Arduino gekennzeichnet, um Treffer zu 
generieren)

kann ich per avrdude über jede beliebige Schnittstelle (UART, USB, I2C, 
...2wire)  sofort ein Programm übertragen (von Linux per shell oder 
Termina), ohne dass ich vorher einen Bootloader aus einer IDE (z.B. 
Arduino) als Basis geflashed habe?

Wobei ich also unterstelle, dass es ein Debian-fähiges avrdude gibt.

Oder hat der Verkäufer den 328p schon mit dem Bootloader als 
Basisprogramm - ist das das allgemeine Verständnis?

Ich kenne bislang nur diese Methodik,

Beitrag "Peter Danneggers Bootloader (fastboot) für AVR-GCC-Toolchain"

die ich bei den ATMEGA256 erfolgreich angewendet habe.


Danke & Gruß

von Joachim B. (jar)


Lesenswert?

Lothar schrieb:
> Unsinn: das HEX-File kann direkt an den Arduino UART Bootloader gesendet
> werden, per Terminal oder mit einem Flasher z.B.

es ist kein "Arduino UART Bootloader" auf einem ATmega328p direkt aus 
der Stange!

Hotte schrieb:
> Deshalb schrieb der TO ja auch, daß er einen Bootloader flashen möchte,
> dann aber nicht die Arduino IDE nutzen möchte:

kann er doch, per ISP oder per Arduino, wenigstens 1x muss man das auf 
jeden ATmega328p frisch aus der Verpackung

> Hendrik L. schrieb:
>> Möchte einen 328P mit einem Bootloader flashen, aber nicht die Arduino
>> IDE für die Programmentwicklung nutzen.

Ich lese nur das er die Arduino IDE nicht als Programmentwicklung nehmen 
möchte, muss er auch nicht.

Ich gestehe aber ich habe mich dran gewöhnt und wüsste gerade nicht wie 
ich HEX Files aus dem AVR Studio an den Bootloader bekomme.

von Hotte (Gast)


Lesenswert?

Joachim B. schrieb:
> Ich gestehe aber ich habe mich dran gewöhnt und wüsste gerade nicht wie
> ich HEX Files aus dem AVR Studio an den Bootloader bekomme.

Hier mal eine kleine Beschreibung, wie du den AVRdude ins AvrStudio 
einbindest:
https://cutmywire.wordpress.com/2013/07/21/arduino-und-co-mit-atmel-studio-nutzen/

von Hendrik L. (lbd)


Lesenswert?

Damit noch einmal unmissverständlich klar ist, was ich möchte:

Ich will die Arduino Bootloader Technik  nutzen, weil ich davon ausgehe, 
dass sie beim 328p nahezu industriemässig oft erprobt ist.

Ich will aber nicht in die Arduino Welt einsteigen.

Will lediglich den "Arduino-Bootloader" aus AVR-Studio über die 
ISP-Schnittstelle auf das 328p Board bringen und dann mit dem Gegenpart 
(auf dem Raspberry unter Linux - avrdude???) beliebig oft Hex-Programme 
aus dem Filesystem des Raspberry (mit avrdude?) laden.

Die HEX-programme habe ich mir aus einer GNU Toolchain oder AVRstudio4 
oder AVRstudio7  vorher erstellt und auf dem Raspberry in seinem 
Filesystem abgelegt.

Gruesse

von Jan L. (ranzcopter)


Lesenswert?

Hendrik L. schrieb:
> Also - aus den vorherigen Hinweisen entnommen:
>
> Auf dieses x-beliebige 328P Board z.B.
> 
https://www.banggood.com/ATmega328P-Nano-V3-Controller-Board-Compatible-Arduino-p-940937.html?rmmds=search
>
> (zufällig vom Verkäufer mit Arduino gekennzeichnet, um Treffer zu
> generieren)

dieses Board hat zu 99,99% einen "Arduino" Bootloader drauf

>
> kann ich per avrdude über jede beliebige Schnittstelle (UART, USB, I2C,

UART, USB - Rest streichen

> ...2wire)  sofort ein Programm übertragen (von Linux per shell oder
> Termina), ohne dass ich vorher einen Bootloader aus einer IDE (z.B.
> Arduino) als Basis geflashed habe?

s.o., Bootloader wird dieses Board drauf haben. Und selbst wenn nicht, 
ist zum "brennen" des Bootloaders die Arduino IDE nicht zwingend 
erforderlich (bootloaderXY.hex runterladen, per avrdude brennen - geht 
auch)

von Hendrik L. (lbd)


Lesenswert?

Jan L. schrieb:
> Hendrik L. schrieb:
>> Also - aus den vorherigen Hinweisen entnommen:
>>
>> Auf dieses x-beliebige 328P Board z.B.
>>
> 
https://www.banggood.com/ATmega328P-Nano-V3-Controller-Board-Compatible-Arduino-p-940937.html?rmmds=search
>>
>> (zufällig vom Verkäufer mit Arduino gekennzeichnet, um Treffer zu
>> generieren)
>
> dieses Board hat zu 99,99% einen "Arduino" Bootloader drauf
>
>>
>> kann ich per avrdude über jede beliebige Schnittstelle (UART, USB, I2C,
>
> UART, USB - Rest streichen
>
>> ...2wire)  sofort ein Programm übertragen (von Linux per shell oder
>> Termina), ohne dass ich vorher einen Bootloader aus einer IDE (z.B.
>> Arduino) als Basis geflashed habe?
>
> s.o., Bootloader wird dieses Board drauf haben. Und selbst wenn nicht,
> ist zum "brennen" des Bootloaders die Arduino IDE nicht zwingend
> erforderlich (bootloaderXY.hex runterladen, per avrdude brennen - geht
> auch)

Jau - jetzt sind wir beieinander. Und wenn nun der Arduino Bootloader 
auf dem 328P drauf ist, was verwende ich als Gegenpart auf dem Raspberry 
unter Debian zur Steuerung des Ladevorgangs und wo bekomme ich dieses 
Programm her?

Danke!!!

von Oliver S. (oliverso)


Lesenswert?

Hendrik L. schrieb:
> Auf dieses x-beliebige 328P Board z.B.
> 
https://www.banggood.com/ATmega328P-Nano-V3-Controller-Board-Compatible-Arduino-p-940937.html?rmmds=search
>
> (zufällig vom Verkäufer mit Arduino gekennzeichnet, um Treffer zu
> generieren)

Das Board ist nicht zufällig mit Arduino gekennzeichnet, das soll 
tatsächlich ein Nachbau-Arduino sein. Daher stehen die Chancen nicht 
schlecht, das da der Arduino-Bootloader im Prozessor steckt.

Wenn nicht, dann den halt einmal per ISP dort hinflashen, und alles 
andere macht avrdude. Das steht aber schon oben.

Oliver

von Hotte (Gast)


Lesenswert?

Hendrik L. schrieb:
> Damit noch einmal unmissverständlich klar ist, was ich möchte:

Ja, das ist schon klar. Deshalb habe ich es ja auch beschrieben. Wenn du 
ein Board mit Arduino-Bootloader hast, wirst du mit AVRdude glücklich.
Und weil das ja auch unter Linux läuft, ist es also kein Problem.

@Lothar: Läuft eigentlich XLoader auch unter Linux?
Ich kenne es nur als Windows-Programm...

von Hendrik L. (lbd)


Lesenswert?

Super - sorry for confusion!

Dann ist meine Frage beantwortet

Danke an Alle!

Gruesse

von Joachim B. (jar)


Lesenswert?


Beitrag #5008529 wurde vom Autor gelöscht.
von Hendrik L. (lbd)


Lesenswert?

Joachim B. schrieb:
> Hendrik L. schrieb:
>> sorry for confusion!
>
> woran das wohl lag?
>
> zuerst
> Hendrik L. schrieb:
>> Möchte einen 328P mit einem Bootloader flashen
>
> 
https://upload.wikimedia.org/wikipedia/commons/thumb/0/0c/ATMEGA328P-PU.jpg/1200px-ATMEGA328P-PU.jpg
>
> ist ja wohl was anderes als
>
> das
> Hendrik L. schrieb:
>> Auf dieses x-beliebige 328P Board z.B.
>>
> 
https://www.banggood.com/ATmega328P-Nano-V3-Controller-Board-Compatible-Arduino-p-940937.html?rmmds=search
>
> https://img1.banggood.com/thumb/large/upload/2014/08/SKU157951/SKU157951aa.jpg


Den Nachsatz verstehe ich nun auch wieder nicht - schliesslich wird ja 
der Bootloader nicht auf dem Board "verankert" sondern wird in den 
Prozessor geflashed.

Und beim Prozessor spielt wohl der Footprint keine Rolle ... - oder ich 
habe die Produktphilosophie vom Atmel (Mikrochip) nicht verstanden!

Gruesse

von Joachim B. (jar)


Lesenswert?

Hendrik L. schrieb:
> Den Nachsatz verstehe ich nun auch wieder nicht - schliesslich wird ja
> der Bootloader nicht auf dem Board "verankert" sondern wird in den
> Prozessor geflashed.

deswegen ja, wenn du nach 328p fragst ist das erst mal ein nackter Chip, 
egal welche Bauform, der wird auch als SMD verkauft
https://roboindia.com/store/image/cache/catalog/Category/IC/MCU/328%203%20small-500x500.jpg

der aber dann bestückt auf einem Arduino (clone) mit Bootloader 
ausgeliefert wird.

Aber ein (arduino ähnliches) Board mit 328P bestückt ist ja kein 
"nackter Chip" mehr, da ist es kein Wunder das der den Bootloader schon 
ab Werk hat, alles anderes würde die Zielgruppe überfordern.

Das ist der Unterschied zwischen Reifen (Gummi pur) und Komplettrad (mit 
Ventil und Felge und ausgewuchtet)

: Bearbeitet durch User
von Loriot (Gast)


Lesenswert?

Joachim B. schrieb:
> Aber ein (arduino ähnliches) Board mit 328P bestückt ist ja kein
> "nackter Chip" mehr,

Wo in aller Welt ist denn in diesem Thread die Rede von einem "nackten 
Chip" gewesen?

von Joachim B. (jar)


Lesenswert?

ach [/Loriot], schau auf den Titel

: Bearbeitet durch User
von Loriot (Gast)


Lesenswert?

Steht sogar im Thread-Titel:
>Bootloader für 328P ohne Arduino IDE nutzbar?

Da steht nicht: "nackter Chip ohne Arduino IDE nutzbar?"

von Joachim B. (jar)


Lesenswert?

wo steht da nano? wenigstens das hätte man ja mal erwähnen können ;)

Ein 328p ist nun mal ein nackter Chip

: Bearbeitet durch User
von Einer K. (Gast)


Lesenswert?

Joachim B. schrieb:
> alles anderes würde die Zielgruppe überfordern.
Dummer Spruch....

Ob USB dran stecken, oder einen ISP Adapter, ist doch egal.
Das bekommt die "Zielgruppe" schon hin.

von Joachim B. (jar)


Lesenswert?

Arduino F. schrieb:
> Das bekommt die "Zielgruppe" schon hin.

ach komm, das weisst du auch, nicht JEDER oder denkst du Arduino dürfen 
nur die ISP-Programmer Besitzer?

: Bearbeitet durch User
von Loriot (Gast)


Lesenswert?

Joachim B. schrieb:
> wo steht da nano? wenigstens das hätte man ja mal erwähnen können
> ;)
>
> Ein 328p ist nun mal ein nackter Chip

Abgesehen davon, daß auch das kein nackter Chip ist (oder siehst du die 
Bonddrähte?), aber im Titel steht:

"Bootloader für 328"

Ob der auch ohne Arduino IDE nutzbar ist.

Also ich hab die Fragestellung schon beim Eröffnungspost verstanden. Du 
offensichtlich immer noch nicht.

von Leerling (Gast)


Lesenswert?

Hendrik L. schrieb:
> Ich will die Arduino Bootloader Technik  nutzen, weil ich davon ausgehe,
> dass sie beim 328p nahezu industriemässig oft erprobt ist.
Arduino und industriemässig passen nicht wirklich zusammen - außer in 
dem Punkt, dass die Arduinos industriell gefertigt werden.

Einen AVR in Serienprodukten wird man sicherlich nicht mit einem 
Arduino-Botloader versehen. In einer Serienfertigung werden Controller 
programmiert, bevor man sie auf die Platine lötet.

Sicherlich wird es auch Geräte geben, wo ein Softwareupdate am fertigen 
Gerät per USB gewünscht ist, sehe ich aber eher in der Minderzahl.

-------

Dein Ziel, den A*-Bootloader zu benutzen, aber nicht über die A*-IDE zu 
flashen, erscheint mir widersinnig: Du kannst die IDE auf "externen 
Editor" setzen, dann liest die eine extern bearbeitete Datei ein und 
flasht diese, bequemer kann man es wohl kaum haben.

von Manfred (Gast)


Lesenswert?

Hendrik L. schrieb:
> Auf dieses x-beliebige 328P Board z.B.
> 
https://www.banggood.com/ATmega328P-Nano-V3-Controller-Board-Compatible-Arduino-p-940937.html?rmmds=search
Ganz schön teuer!

> (zufällig vom Verkäufer mit Arduino gekennzeichnet, um Treffer zu
> generieren)
Nein, das ist ein Arduino-Clone, dank freier Lizenz darf man die ja 
nachbauen.

> kann ich per avrdude über jede beliebige Schnittstelle (UART, USB, I2C,
> ...2wire)  sofort ein Programm übertragen (von Linux per shell oder
> Termina), ohne dass ich vorher einen Bootloader aus einer IDE (z.B.
> Arduino) als Basis geflashed habe?
Über I2C ganz sicher nicht. USB und UART ist gleich, da ist lediglich 
die Umsetzung USB nach seriell in Form des CH340 bereits auf dem Board 
vorhanden. Braucht man USB nicht, lieber den A*-ProMini verwenden, 
benötigt weniger Strom.

Und ja, man kann - weil der Bootloader bereits drauf ist.

von Hendrik L. (lbd)


Lesenswert?

Ich bin zu keinem Zeitpunkt davon ausgegangen, dass das chinesische 
Board schon mit geflashtem Arduino Bootloader geliefert wird.

Steht so auch nicht in der Beschreibung - lediglich in der Überschrift. 
Ist aber auch unerheblich - denn den Bootloader kann ich selbst in den 
328P flashen.

Meine Fragestellung war nur:

1. Wo bekomme ich den Bootloader (Contoller Part) her? Hätte ich mir 
versucht aus der Arduino IDE zu extrahierern - wer suchet der findet 
...!

2. Gibt es einen linuxfähigen Gegenpart ? Das ist mir beantwortet worden 
- Ja, avrdude kann das! Danke hierfür!

Glaube ich gern, bin aber dennoch etwas verwundert, weil avrdude gab es 
schon vor Arduino (aus meiner Erinnerung), würde also bedeuten, der 
Arduino Bootloader im Controller spricht also das ISP-Protokoll ("Native 
Flashing" in der AVR Welt).

Oder wurde avrdude in der neuesten Version auf Arduino angepasst? Rein 
Interesse halber?

Danke & Gruesse

: Bearbeitet durch User
von doch (Gast)


Lesenswert?

Leerling schrieb:
> Du kannst die IDE auf "externen
> Editor" setzen, dann liest die eine extern bearbeitete Datei ein und
> flasht diese, bequemer kann man es wohl kaum haben.

doch, kann man. Wenn man nicht diese unsägliche Arduino-Umgebung 
ertragen will. Und mit einem anderen Editor kann man vielleicht besser 
editieren, die Sprache bleibt aber trotzdem. Und die Langsamheit des 
Codes auch.

Ich sehe die Arduinos als bequeme Experimentierplatinen, die man nicht 
selber zusammenlöten muß. Aber programmieren kann man sie viel besser 
mit C oder einer beliebigen anderen Sprache. Und wie das damit erzeugte 
HEX-File auf den Arduino kommt, wurde auch schon gezeigt. Bequemer kann 
man es wohl kaum haben. Das Tool seiner Wahl nehmen (ob es jetzt winavr 
ist oder AVR-Studio oder was anderes) und das erzeugte HEX-File dann auf 
die Platine bringen. Niemand hindert einen, auf den Bootloader zu 
verzichten und mit einem Programmer (z.B. AVRisp-II) das Flashen 
vorzunehmen.

von Hendrik L. (lbd)


Lesenswert?

Manfred schrieb:
> Hendrik L. schrieb:
>> Auf dieses x-beliebige 328P Board z.B.
>>
> 
https://www.banggood.com/ATmega328P-Nano-V3-Controller-Board-Compatible-Arduino-p-940937.html?rmmds=search
> Ganz schön teuer!
>

Stimmt, aber ich will den ja nicht auch nicht kaufen, sondern suche eh 
eine größere Menge ...:

https://www.banggood.com/5Pcs-Pro-Mini-ATMEGA328P-5V16M-Improved-Version-Module-For-Arduino-p-1009204.html?rmmds=search

kennt jemand noch günstigere Bezüge? Freu mich über jeden Hinweis.

Danke & Gruesse

von Hendrik L. (lbd)


Lesenswert?

doch schrieb:
> Leerling schrieb:
>> Du kannst die IDE auf "externen
>> Editor" setzen, dann liest die eine extern bearbeitete Datei ein und
>> flasht diese, bequemer kann man es wohl kaum haben.
>
> doch, kann man. Wenn man nicht diese unsägliche Arduino-Umgebung
> ertragen will. Und mit einem anderen Editor kann man vielleicht besser
> editieren, die Sprache bleibt aber trotzdem. Und die Langsamheit des
> Codes auch.
>
> Ich sehe die Arduinos als bequeme Experimentierplatinen, die man nicht
> selber zusammenlöten muß. Aber programmieren kann man sie viel besser
> mit C oder einer beliebigen anderen Sprache. Und wie das damit erzeugte
> HEX-File auf den Arduino kommt, wurde auch schon gezeigt. Bequemer kann
> man es wohl kaum haben. Das Tool seiner Wahl nehmen (ob es jetzt winavr
> ist oder AVR-Studio oder was anderes) und das erzeugte HEX-File dann auf
> die Platine bringen. Niemand hindert einen, auf den Bootloader zu
> verzichten und mit einem Programmer (z.B. AVRisp-II) das Flashen
> vorzunehmen.

Volle Zustimmung - das genau ist auch meine Ansicht und Intention!

Kann Arduino zufällig auch den ATTiny167 (per Bootloader)?

Gruesse

von Leerling (Gast)


Lesenswert?

doch schrieb:
> Leerling schrieb:
>> Du kannst die IDE auf "externen
>> Editor" setzen, dann liest die eine extern bearbeitete Datei ein und
>> flasht diese, bequemer kann man es wohl kaum haben.
>
> doch, kann man. Wenn man nicht diese unsägliche Arduino-Umgebung
> ertragen will. Und mit einem anderen Editor kann man vielleicht besser
> editieren,
Mit dem Lesen hast Du offenbar erhebliche Probleme!

Was meinte ich wohl mit "externen Editor" und "extern bearbeitete 
Datei"?

von Hendrik L. (lbd)


Lesenswert?

Wissen macht aaahhhh! Hier stehts ja:

https://www.mikrocontroller.net/articles/AVRDUDE#AVRDUDE_mit_Arduino_Bootloader_benutzen

Es gibt also eine angepasste neue Version von avrdude - auf den Arduino 
Bootloader abgestimmt.

Nun interessiert mich nur noch, welche AVR-Prozessoren von der Arduino 
Philosophie unterstützt werden?

Gruesse

von Stefan F. (Gast)


Lesenswert?

> bin aber dennoch etwas verwundert, weil avrdude gab es
> schon vor Arduino, würde also bedeuten, der
> Arduino Bootloader im Controller spricht also das
> ISP-Protokoll.

Avrdude wird seit vielen Jahren weiter entwickelt. Die Unterstützung für 
den Arduino Bootloader war gewiss nicht schon in der ersten Version 
drin.

Und nein, der Arduino Bootloader spricht 100% sicher nicht das ISP 
Protokoll. Der Bootloader ist nämlich ein Programm, das in dem Chip 
läuft. Es greift über den internen Bus auf den internen Flash Speicher 
zu. Die externe ISP Schnitttselle wird vom Arduino Bootloader nicht 
verwendet. Wie auch?

> Nun interessiert mich nur noch, welche AVR-Prozessoren von der
> Arduino Philosophie unterstützt werden?

Wie lange und wo hast du selbst nach einer Antwort auf diese Frage 
gesucht?

von Hendrik L. (lbd)


Lesenswert?

Stefan U. schrieb:
>> bin aber dennoch etwas verwundert, weil avrdude gab es
>> schon vor Arduino, würde also bedeuten, der
>> Arduino Bootloader im Controller spricht also das
>> ISP-Protokoll.
>
> Avrdude wird seit vielen Jahren weiter entwickelt. Die Unterstützung für
> den Arduino Bootloader war gewiss nicht schon in der ersten Version
> drin.
>
> Und nein, der Arduino Bootloader spricht 100% sicher nicht das ISP
> Protokoll. Der Bootloader ist nämlich ein Programm, das in dem Chip
> läuft. Es greift über den internen Bus auf den internen Flash Speicher
> zu. Die externe ISP Schnitttselle wird vom Arduino Bootloader nicht
> verwendet. Wie auch?
>
>> Nun interessiert mich nur noch, welche AVR-Prozessoren von der
>> Arduino Philosophie unterstützt werden?
>
> Wie lange und wo hast du selbst nach einer Antwort auf diese Frage
> gesucht?

:-) Danke für die nette Hilfe - 
https://de.wikipedia.org/wiki/Liste_von_Arduinoboards

Gruesse

von Manfred (Gast)


Lesenswert?

>> Ich sehe die Arduinos als bequeme Experimentierplatinen,
>> die man nicht selber zusammenlöten muß.
Ich sehe Nano und ProMini als Prozessormodule, die ich billig bekomme 
und einfach in meine Schaltung stecke.

>>Aber programmieren kann man sie viel besser
>> mit C oder einer beliebigen anderen Sprache.
Welche Sprache benutzt Aruino - Kobold, Vortrann oder was? Fragst Du das 
Löschmoderatorenlexikon mit dem "w" am Anfang, bekommst Du es erklärt.

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.