ATtiny2313 und fpcupdelux

Timm Thaler
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: ATtiny2313 und fpcupdelux

Beitrag von Timm Thaler »

Gibt es inzwischen eine Lösung für mehrere Subarchs?

Ich muss mal wieder bißchen programmieren und hab mir mit fpcupdeluxe das Laz 1.9 mit FPC 3.1.1 neu aufgesetzt und den Crosscompiler für AVR embedded installiert. Der installiert aber standardmäßig nur Subarch AVR5.

Nun würde ich auch gern einige ATtinys (AVR25) oder den ATmega8 (AVR4) programmieren. Allerdings sind dafür die Sourcen nicht kompiliert. Der Kompiler meckert "Can't find unit ATMEGA8" und in fpcsrc\embedded\avr ist zwar die atmega8.pp, in fpc\units\avr-embedded\rtl zwar die atmega328p.o und viele andere, aber keine atmega8.o, also nur die die zum Subarch AVR5 gehören drin.

Mathias
Beiträge: 6160
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: ATtiny2313 und fpcupdelux

Beitrag von Mathias »

Gibt es inzwischen eine Lösung für mehrere Subarchs?

Hast du mal den Entwickler von fpcupdelux gefragt ?
Im englischen Forum hat er extra ein Thread dafür. http://forum.lazarus.freepascal.org/ind ... #msg275206
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Timm Thaler
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: ATtiny2313 und fpcupdelux

Beitrag von Timm Thaler »

Ich hab jetzt einfach nochmal ein Install Crosscompiler mit CrossBuildOptions=-Cpavr4, CrossSubArch=avr4 drübergebügelt. Jetzt habe ich sowohl die kompilierten Units für ATmega8 als auch ATmega328p im Verzeichnis. Und anscheinend kann ich auch für beide Controller kompilieren, wenn in den Kompilereinstellungen passend AVR4 bzw. AVR5 angegeben ist.

Ich hab das momentan nur an einem "leeren" Programm getestet, aber wenn das funktioniert wäre das absolut problemlos: Einmal den AVR Crosscompiler für jede nötige Subarch ausführen. Kann natürlich auch sein, dass das an der geringen Differenz zwischen Mega8 und Mega328 liegt, und bei Tinys mehr Probleme macht. Ich bleib da dran.

Mathias
Beiträge: 6160
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: ATtiny2313 und fpcupdelux

Beitrag von Mathias »

Kann natürlich auch sein, dass das an der geringen Differenz zwischen Mega8 und Mega328 liegt, und bei Tinys mehr Probleme macht.

Ja das macht es leider immer noch, habe es gerade probiert.

Aber es wäre schon einen grossen Vorteil wen dieser Fehler nicht mehr wäre.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Benutzeravatar
kupferstecher
Beiträge: 418
Registriert: Do 17. Nov 2016, 11:52

Re: ATtiny2313 und fpcupdelux

Beitrag von kupferstecher »

Timm Thaler hat geschrieben:Gibt es inzwischen eine Lösung für mehrere Subarchs?

Dazu gab es eine Diskussion in den Mailing-Listen:
http://free-pascal-general.1045716.n5.n ... l#a5730328

Mathias
Beiträge: 6160
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: ATtiny2313 und fpcupdelux

Beitrag von Mathias »

kupferstecher hat geschrieben:
Timm Thaler hat geschrieben:Gibt es inzwischen eine Lösung für mehrere Subarchs?

Dazu gab es eine Diskussion in den Mailing-Listen:
http://free-pascal-general.1045716.n5.n ... l#a5730328

Meinst du, die Chancen bestehen, das dies in ferner Zukunft funktioniert ?
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Benutzeravatar
kupferstecher
Beiträge: 418
Registriert: Do 17. Nov 2016, 11:52

Re: ATtiny2313 und fpcupdelux

Beitrag von kupferstecher »

Tät ich schon sagen. Es betrifft ja nicht nur AVR, sondern auch ARM, d.h. so viel ich weiß z.B auch Raspberry und Konsorten.
Per Gebastel scheint es ja auch schon zu funktionieren, also mit Anlegen einer Pfadstruktur und Anpassen der fpc.cfg-Datei.

Antworten