Anscheinend hast du diesen Schritt unter Windows mal gemacht, ansonsten hätte Windows auch blöd getan.Das extra (SVN) war wohl nötig. Jetzt hat es auch geklappt.
Tutorial Arduino programmieren,
-
- Beiträge: 6910
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Tutorial Arduino programmieren,
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
- af0815
- Lazarusforum e. V.
- Beiträge: 6770
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: Tutorial Arduino programmieren,
fpcupdeluxe kann unter Windows GIT und SVN laden, falls nicht im Pfad gefunden.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
-
- Beiträge: 6910
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Tutorial Arduino programmieren,
Heisst dies, unter Windows braucht es keine Installation von Subversion ?'fpcupdeluxe kann unter Windows GIT und SVN laden, falls nicht im Pfad gefunden.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Lazarusforum e. V.
- Beiträge: 208
- Registriert: Fr 11. Nov 2016, 14:09
- OS, Lazarus, FPC: Linux Mint 20 (WinXP VBox)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Tutorial Arduino programmieren,
Nein in Windows hab ich nix spezielles unternommen.
Good code comes from experience, experience comes from bad code.
-
- Beiträge: 6910
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Tutorial Arduino programmieren,
So wie es scheint, braucht es Subversion unter Windows nicht, ich habe fpcupdelux gerade unter Win10 gestartet und da führt er SVN-Kommandos ohne Fehler aus.Nein in Windows hab ich nix spezielles unternommen.
Nur schläft das ganze ein, das es in der VB läuft.
Das es bei dir und af0815 ohne läuft, werde ich das Tutorial anpassen.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
- af0815
- Lazarusforum e. V.
- Beiträge: 6770
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: Tutorial Arduino programmieren,
Bei WIndows wird schon seit FPCUP das so gemacht.
Siehe http://wiki.lazarus.freepascal.org/fpcup In der Wiki zu FPCUP steht eine Menge an Infos wenn man in den Einstellungen was für sich herrichten will.
Andreas
Siehe http://wiki.lazarus.freepascal.org/fpcup In der Wiki zu FPCUP steht eine Menge an Infos wenn man in den Einstellungen was für sich herrichten will.
Code: Alles auswählen
On Windows, it can also serve as a "bare metal" installer: it can download a subversion client, binutils (make.exe etc).
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
-
- Beiträge: 6910
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Tutorial Arduino programmieren,
Dann werde ich mein Tutorial bei Gelegenheit anpassen. 

Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Lazarusforum e. V.
- Beiträge: 208
- Registriert: Fr 11. Nov 2016, 14:09
- OS, Lazarus, FPC: Linux Mint 20 (WinXP VBox)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Tutorial Arduino programmieren,
Ich würde mal sagen ich bin der Ahnungsloseste hier in der Runde. Wenn es hier funktioniert, funktioniert es überall.

Dumme Frage, was in den AVR muss ist schlussendlich das erzeugte *.bin File?


Dumme Frage, was in den AVR muss ist schlussendlich das erzeugte *.bin File?
Good code comes from experience, experience comes from bad code.
-
- Beiträge: 6910
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Tutorial Arduino programmieren,
Das ist eine interessante Frage, Lazarus erzeugt eine elf, bin und hex.Dumme Frage, was in den AVR muss ist schlussendlich das erzeugte *.bin File?
An averdude übergibt man dann die hex, obwohl dies eine Zext-Datei ist.
Vielleicht kann da Timm Thaler helfen.

Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
- kupferstecher
- Beiträge: 431
- Registriert: Do 17. Nov 2016, 11:52
Re: Tutorial Arduino programmieren,
Die .hex-Datei hat im Grunde den gleichen Inhalt wie die .bin-Datei, jedoch sind die Binärdaten in Ascii codiert in hexadezimaler Schreibweise dargestellt, d.h. in einem normalen Editor lesbar. Außerdem sind noch die Datenadressen drin, so kann die .hex-Datei z.B. bei Adresse 0x80 anfangen. Die .bin-Datei ist gar nicht codiert, die Binärdaten stehen direkt hintereinander beginnend mit der niedrigsten Adresse. Einige Programmer schlucken beide Formate, normalerweise verwendet man die .hex-Datei.Marc hat geschrieben:Dumme Frage, was in den AVR muss ist schlussendlich das erzeugte *.bin File?
Zur .elf-Datei kann ich nichts sagen...
-
- Beiträge: 6910
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Tutorial Arduino programmieren,
Dies habe ich fast vermutet.Die .hex-Datei hat im Grunde den gleichen Inhalt wie die .bin-Datei, jedoch sind die Binärdaten in Ascii codiert in hexadezimaler Schreibweise dargestellt,
Das Tutorial habe ich wegen Windows und SVN noch angepasst.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Lazarusforum e. V.
- Beiträge: 208
- Registriert: Fr 11. Nov 2016, 14:09
- OS, Lazarus, FPC: Linux Mint 20 (WinXP VBox)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Tutorial Arduino programmieren,
Danke für die Bemühungen.
Ich habe mal zwei Atmega328 bestellt. Da kann ich dann mal probieren ob ich das Hex oder bin File in den AVR kriege.
Jugend forscht.
Danke auch für das Tutorial, die Zeit muss mann sich ja erst mal nehmen.
Ich habe mal zwei Atmega328 bestellt. Da kann ich dann mal probieren ob ich das Hex oder bin File in den AVR kriege.
Jugend forscht.

Danke auch für das Tutorial, die Zeit muss mann sich ja erst mal nehmen.
Good code comes from experience, experience comes from bad code.
-
- Beiträge: 6910
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Tutorial Arduino programmieren,
Denke aber daran, das die Zeile mit averdude angepasst werden muss, ein Arduino wird anders angesteuert als ein nackter Atmega328.Ich habe mal zwei Atmega328 bestellt. Da kann ich dann mal probieren ob ich das Hex oder bin File in den AVR kriege.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Beiträge: 1224
- Registriert: So 20. Mär 2016, 22:14
- OS, Lazarus, FPC: Win7-64bit Laz1.9.0 FPC3.1.1 für Win, RPi, AVR embedded
- CPU-Target: Raspberry Pi 3
Re: Tutorial Arduino programmieren,
Leicht.Mathias hat geschrieben:Das ist eine interessante Frage, Lazarus erzeugt eine elf, bin und hex.
An averdude übergibt man dann die hex, obwohl dies eine Zext-Datei ist.
Vielleicht kann da Timm Thaler helfen.

Lazarus erzeugt die gar nicht. Lazarus kompiliert die einzelnen Pascal-Dateien Deines Projektes zu Assembler-Code. Das sind die *.s-Dateien. Diese werden dann den avr-embedded-exes aus den Binutils übergeben, die einen Linker und Assembler enthalten. Erst diese erzeugen dann den Maschinencode, wie sie es auch mit jedem selbstgeschriebenen Assembler-Code machen würden* (soweit ich das verstanden habe).
Die *.bin enthält den reinen Maschinencode, so wie er später im Controller stehen wird. Der hat aber den Nachteil auch Nullzeichen (0x00) oder Steuerzeichen enthalten zu können, quasi den ganzen Zeichenraum von 0x00 bis 0xFF. Das kann bei Übertragung oder beim Dateilesen Probleme machen, deswegen nimmt man den eigentlich nicht zum Programmieren. Wenn man die *.bin nicht braucht, kann man die Erzeugung auch unterdrücken bzw. wieder löschen lassen.
Die *.elf ist ein sogenanntes production file, welches neben dem Programmcode auch noch EEPROM-Inhalt und Fusebit-Konfiguration beinhaltet. Vorteil, man hat alles zusammen, Nachteil, manche Programmer können damit nichts anfangen.
Die *.hex ist ein uraltes universelles Format, welches schon die alten Römen zum Programmieren ihrer Katapulte verwendeten: https://de.wikipedia.org/wiki/Intel_HEX Großer Vorteil, es enthält den Maschinencode in Hex-Darstellung, daher keine Steuerzeichen die Ärger machen können, und es enthält Adressen und Checksummen. Nachteil, durch die Hex-Darstellung braucht es zwei Bytes pro Flashbyte, die Datei ist doppelt so groß. Die Hex-Daten werden vom Programmer wieder in Maschinenbytes zusammengefasst. Wenn euer Opa euch erzählt, wie er früher Maschinencode programmiert hat, dann hat er solche Hex-Zahlen in das Programmiergerät getippert.
Da die *.hex eigentlich** keine EEPROM-Daten enthält, bekommt man wenn man EEPROM-Konstanten ablegt (wobei ich noch nicht probiert habe wie das in Pascal geht) noch eine *.eep-Datei. Diese muss zusätzlich zur *.hex-Datei gebrannt werden.
*) Mit avr-embedded-objdump kann man sich übrigens aus einer *.bin oder *.hex wieder Assembler-Code machen, um zu überprüfen was da zusammenkompiliert wird - oder um mal zu gucken, was andere so machen. Dazu muss man allerdings bißchen Assembler verstehen.
**) Da beim AVR der EEPROM hinter dem Flash liegt, kann man EEPROM-Daten mit in das *.hex-File schreiben und an den AVR übertragen. Allerdings können a) nicht alle Programmer damit umgehen und b) wenn man mit einem Bootloader programmiert kann es passieren, dass man in den Bootloader hineinschreibt, bis er "abstürzt" (er überschreibt sich selber bis zur Funktionsunfähigkeit) - und dann isser tot.
-
- Beiträge: 1224
- Registriert: So 20. Mär 2016, 22:14
- OS, Lazarus, FPC: Win7-64bit Laz1.9.0 FPC3.1.1 für Win, RPi, AVR embedded
- CPU-Target: Raspberry Pi 3
Re: Tutorial Arduino programmieren,
Wenn Du noch kein Programmiergerät hast, und keine Lust hast einen überteuerten Arduino mit Bootloader zu kaufen, aber noch einen Windows-PC mit richtiger Hardware-RS232 oder sogar Parallelport, dann kannst Du auch mit Ponyprog und einem einfachen selbstgebauten Programmieradapter aus ein paar Widerständen den Code in den AVR brennen: http://www.lancos.com/prog.html Und ja, es kann auch Atmega328.Marc hat geschrieben:Ich habe mal zwei Atmega328 bestellt. Da kann ich dann mal probieren ob ich das Hex oder bin File in den AVR kriege.