LazPackageEmbeddedAVR: Projekt-Dialog für Target AVR

Rund um die LCL und andere Komponenten

LazPackageEmbeddedAVR: Projekt-Dialog für Target AVR

Beitragvon kupferstecher » 25. Feb 2019, 10:43 LazPackageEmbeddedAVR: Projekt-Dialog für Target AVR

Den AVR-Wizard habe ich jetzt zu einem IDE-Plugin umgebaut, sodass man in Lazarus über "Projekt/Neu" ein AVR-Projekt erstellen kann. Inklusive Kommandozeile für den Programmieradapter. Installation des Plug-ins ganz normal als Package.

Download und Installationsanleitung auf Github:
https://github.com/kupferstecher/LazPackageEmbeddedAVR

Grüße~
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
kupferstecher
 
Beiträge: 206
Registriert: 17. Nov 2016, 11:52

Beitragvon Timm Thaler » 25. Feb 2019, 19:29 Re: LazPackageEmbeddedAVR: Projekt-Dialog für Target AVR

Na hübsch!

Wie kommt denn das Plugin mit verschiedenen AVR-Subsystemen (avr25, avr4, avr5, avr51...) für die unterschiedlichen Controller (ATtiny, ATmega8, ATmega328, ATmega1284...) klar?
Timm Thaler
 
Beiträge: 897
Registriert: 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
Nach oben

Beitragvon kupferstecher » 26. Feb 2019, 12:40 Re: LazPackageEmbeddedAVR: Projekt-Dialog für Target AVR

Wie meinst du das mit den verschiedenen Subsystemen? Das Plugin erstellt nur ein Projekt, der passende Compiler muss schon (auch für die passenden Typen) installiert sein. Im Plugin ist eine Liste hinterlegt, welcher Controller welches Instruction-Set/Subsystem hat. Das Plugin trägt dann das passendene (z.B. avr4) in den Projekteinstellungen unter "Target processor (-Cp)" ein. Spezielle Bibliothekspfade für verschiedene Subsysteme werden im Projekt nicht angelegt, es wird davon ausgegangen, dass schon alles stimmt. Subsystemabhängige Bibliothekspfade kann man doch in der Compiler-Configdatei fpc.cfg festlegen?
kupferstecher
 
Beiträge: 206
Registriert: 17. Nov 2016, 11:52

Beitragvon six1 » 28. Feb 2019, 13:21 Re: LazPackageEmbeddedAVR: Projekt-Dialog für Target AVR

Hi,
ich habe Lazarus und fpc mit fpcupdeluxe erstellt. Hat soweit alles geklappt.

Danach habe ich in fpcupdeluxe "avr" und "embedded" ausgewählt und "Install cross-compiler" angeklickt.
Es gab einen neuen Ordner units/avr-embedded mit /rtl und /rtl-extra

Unter /rtl liegen die Dateien für die verschiedenen AVR's. Was jedoch fehlt ist atmega8 und atmega8a


Gleichzeitig habe ich in der Lazarus Installation den Ordner "cross/lib/avr-embedded/" mit den Sub Typen der AVR's...

Was habe ich falsch gemacht?
six1
 
Beiträge: 70
Registriert: 1. Jul 2010, 18:01

Beitragvon Timm Thaler » 28. Feb 2019, 17:45 Re: LazPackageEmbeddedAVR: Projekt-Dialog für Target AVR

six1 hat geschrieben:Unter /rtl liegen die Dateien für die verschiedenen AVR's. Was jedoch fehlt ist atmega8 und atmega8a


Es gibt verschiedene "subsystems" für die unterschiedlichen AVR-Typen (https://gcc.gnu.org/onlinedocs/gcc/AVR-Options.html). Standardmäßig installiert fpcupdeluxe das avr5-Subsystem. Der ATmega8 braucht das avr4-Subsystem.

Hier wird beschrieben, wie Du verschiedene Subsysteme parallel installierst: https://www.lazarusforum.de/viewtopic.php?f=9&t=11718&hilit=avr

Bei fpxupdeluxe findest Du die Subsysteme unter Setup+ => Custom tools musst Du avr+embedded auswählen, dann bei Cross Build -Cavr4 eintragen, bei Cross SubArch avr4, und dann Crosscompiler neu installieren. Achtung, wenn Du den rtl-Ordner vorher nicht umbenennst, wird das alte Subsystem gelöscht.
Timm Thaler
 
Beiträge: 897
Registriert: 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
Nach oben

Beitragvon six1 » 1. Mär 2019, 13:56 Re: LazPackageEmbeddedAVR: Projekt-Dialog für Target AVR

..also so ganz verstehe ich es noch nicht. Der Grund hierfür ist nicht die Geschichte mit dem Umbennen der Ordner, eher, warum ich jetzt zwei Lokationen mit den Libs habe!
/cross/lib/avr-embedded
/fpc/units/avr-embedded

Wie ist der genaue Ablauf, Lazarus mit verschiedenen Cross compilern zu erstellen?

1) Lazarus und fpc kompilieren (in meinem Fall WIN10 / 32 Bit)
- muss jetzt hierbei schon in Setup+ bereits -Cavr5 und avr5 eingetragen werden?
laz1.png


2) weitere Cross Compiler nachinstallieren
-wie ist der Ablauf hierfür?
wenn ich hier auf der Hauptseite "avr" und "embedded" einstelle, in Setup+ -Cavr4 und avr4 und "install cross-compiler" anklicke, bekomme ich Fehlermeldungen!
Code: Alles auswählen
 
Building compiler for embedded-avr (OPT: -O2 ) [CROSSOPT: -Cavr4 ] {SUBARCH: avr4}.
fpcupdeluxe: info: TAny_embedded-avr: found correct binary utilities in directory C:\LAZARUS_BASE\cross\bin\avr-embedded
fpcupdeluxe: info: TAny_embedded-avr: found correct library in directory C:\LAZARUS_BASE\cross\lib\avr-embedded\avr5
fpcupdeluxe: Start of compile error summary.
Error: Illegal parameter: -Cavr4
fpcupdeluxe: Start of compile error summary.
fpcupdeluxe: ERROR: FPCCrossInstaller (BuildModuleCustom: FPC): Running cross compiler fpc make all for avr-embedded failed with an error code.
 


Laz2.png


Irgendwie habe ich noch keinen richtigen Plan :?
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
six1
 
Beiträge: 70
Registriert: 1. Jul 2010, 18:01

Beitragvon Timm Thaler » 1. Mär 2019, 14:05 Re: LazPackageEmbeddedAVR: Projekt-Dialog für Target AVR

Muss heissen -Cpavr4
Timm Thaler
 
Beiträge: 897
Registriert: 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
Nach oben

Beitragvon six1 » 1. Mär 2019, 14:13 Re: LazPackageEmbeddedAVR: Projekt-Dialog für Target AVR

jetzt habe ich mir so Mühe gegeben, alles schön darzustellen und du beantwortest meine FRAGEN mit 3 Worten...

ok -->geht :lol: :lol:

wobei die XMega Libs kann ich nicht compilieren..

also z.B. mit -Cpavrxmega2 und xmega2 Eintrag bricht fcupdeluxe mit Fehlermeldung ab
six1
 
Beiträge: 70
Registriert: 1. Jul 2010, 18:01

Beitragvon Timm Thaler » 1. Mär 2019, 15:23 Re: LazPackageEmbeddedAVR: Projekt-Dialog für Target AVR

Sorry, mit xmega hab ich noch nichts gemacht.
Timm Thaler
 
Beiträge: 897
Registriert: 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
Nach oben

Beitragvon six1 » 2. Mär 2019, 16:14 Re: LazPackageEmbeddedAVR: Projekt-Dialog für Target AVR

Nach vielen Tests habe ich festgestellt, dass ich keine Lazarus Version zusammenschrauben kann, welche meine derzeitigen Projekt unter win32 und Linux i386 zulässt und gleichfalls die Cross-Compiler hat.
Dies liegt im Grunde daran, dass ich für die Cross-Compiler AVR die Trunc Version des fpc installieren muss (3.0.4 funktioniert nicht), ich aber an dieser Stelle Probleme mit Devart Bibliothek Probleme bekomme (SecureBridge Komponenten).
Also bleibt doch nur eine gesonderte Installation speziell für AVR.
six1
 
Beiträge: 70
Registriert: 1. Jul 2010, 18:01

Beitragvon Timm Thaler » 2. Mär 2019, 17:22 Re: LazPackageEmbeddedAVR: Projekt-Dialog für Target AVR

Ich hab momentan auch zwei Installationen: Die 3.2.x stable für Win/Linux-Projekte und die 3.3.x trunk für Tests und den AVR crosscompiler.
Timm Thaler
 
Beiträge: 897
Registriert: 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
Nach oben

• Themenende •

Zurück zu Komponenten und Packages



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 6 Gäste

porpoises-institution
accuracy-worried