Hallo zusammen,
ich habe bei uns mehrere ARM9 Linuxsystemchen.
Bei einem ist eine Toolchain für Lazarus komplett mit der IDE (Crosscompiling Win>Linux) und allem was ich brauche dabei.
Mehrere Pandaboards hab ich auch da, aber noch nicht betriebsbereit.
Von der Fa. Moxa haben wir in unserern Anlagen einen RS232 Geräteserver für Ethernet verbaut.
Auf diesem ARM9 System läuft ebenfalls Linux und man kann dafür eine Toolchain runterladen.
Aber die ist natürlich für C/C++. Ich möchte da aber Lazarus einsetzen.
Ich möchte die serielle Schnittstellen mit Lazarus und Synaser verwenden was unter erstgenannten System
auch ohne die mitgelieferten speziellen Units für RS232 (für Lazarus) des Herstellers wunderbar funktioniert.
Jetzt hab ich folgende Frage:
Sind die verschiedenen ARM9 Systeme mit unterschiedlichen CPUs für mich und Lazarus (mit Synaser) programmtechnisch gleichwertig?
Kann ich also so einen ARM9-Deviceserver z.B. von Moxa ohne die C/C++-Toolchain nur mit Lazarus und Synaser (und mit Linux natürlich) betreiben?
Schon mal danke für die Antworten
(Es sei noch angemerkt daß ich mit Linux noch sehr wenig zu tun hatte)
Einen schönen Tag noch
NoCee
ARM9 Linux crosscompiling verschiedener CPUs
-
- Beiträge: 3444
- Registriert: Mo 11. Sep 2006, 10:24
- OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
- CPU-Target: X32 / X64 / ARMv5
- Wohnort: Krefeld
Re: ARM9 Linux crosscompiling verschiedener CPUs
NoCee hat geschrieben:Bei einem ist eine Toolchain für Lazarus komplett mit der IDE (Crosscompiling Win>Linux) und allem was ich brauche dabei.
Auch Lazarus remote-Debugging ? (Ich habe nämlich noch nie gehört, dass das jemand ans Laufen bekommen hat. ) Oder brauchst Du das nicht ?
-Michael
-
- Beiträge: 170
- Registriert: Do 3. Mär 2011, 21:34
- OS, Lazarus, FPC: WinXp/7/10 Opensuse13.2/Leap15.3 (L 2.2.0 FPC 3.2.2 )
- CPU-Target: Intel 32/64Bit, ARM9
- Wohnort: Ulm
Re: ARM9 Linux crosscompiling verschiedener CPUs
mschnell hat geschrieben:
Auch Lazarus remote-Debugging ? (Ich habe nämlich noch nie gehört, dass das jemand ans Laufen bekommen hat. ) Oder brauchst Du das nicht ?
Bei dem einen Prototypen Komplettsystem ist wohl irgend was dabei. Hab ich aber noch nie angeschaut.
http://www.mme-berlin.de/arm9-modul/index.htm
Brauchen tu ich das momentan auch nicht. Was ich da programmiere, wird vorher auf einem Win PC getestet
und wenns da läuft wirds auf das ARM System übertragen. Die Progrämchen sind auch relativ einfach. Da werden kurze serielle Strings
empfangen umgebaut und weitergeschickt (Telegrammanpassungen von Geräten und Maschinen die sich sonst nicht verstehen.
Wie zum Beispiel eine neue Paketwaage an einer alten Steuerung einer Paketfördertechnik. Thema Ersatzteilverfügbarkeit.
Wenn ich irgendwann mal die Pandaboards aufgebaut habe, soll da Lazarus direkt drauf laufen. Als OS mit Opensuse
da ich das schon hier im Betrieb habe.
Die später aktive Hardware sollte aber ein fertiges und vor allem industrietaugliches System sein das ich so längerfristig bekomme.
Und da wir solche Moxa Teile oder ähnliche schon einsetzen wären die schon mal nicht schlecht.
Panda oder RPi haben da eher Spielzeugkarakter. Das darf ich grad mal zum Üben oder Testen daherbringen.
Aber ob das mit Moxa auch so geht kann ich momentan selber nicht testen. Zum einen will ich die vorhandenen Geräte nicht schrotten
und zum andenen sollte das sicher funktionieren wenn ich relativ viel Kohle investiere wenn ich ein neues Gerät beschaffe
mit dem ich testen könnte.
Gruß
NoCee
-
- Lazarusforum e. V.
- Beiträge: 3158
- Registriert: Di 22. Jul 2008, 19:27
- OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
- CPU-Target: 32bit x86 armhf
- Wohnort: Köln
- Kontaktdaten:
Re: ARM9 Linux crosscompiling verschiedener CPUs
NoCee hat geschrieben:Jetzt hab ich folgende Frage:
Sind die verschiedenen ARM9 Systeme mit unterschiedlichen CPUs für mich und Lazarus (mit Synaser) programmtechnisch gleichwertig?
Kann ich also so einen ARM9-Deviceserver z.B. von Moxa ohne die C/C++-Toolchain nur mit Lazarus und Synaser (und mit Linux natürlich) betreiben?
Sofern es für die seriellen Schnittstellen Treiber für das Betriebssystem gibt, sollten die von Synaser unterstützt werden. Experte bin ich da aber nicht.
Für die CPUs gilt:
- Der Compiler muss die unterstützen
- Der Assembler muss die unterstützen
- Der Linker muss die unterstützen
Um zuverlässig Programme zu erstellen, solltest du noch einige Einstellungen in Erfahrung bringen. Die solltest/musst du als Compiler-Parameter angeben.
- Genaue Prozessor-Bezeichnung (ARM-Typ). Damit kannst du unter http://en.wikipedia.org/wiki/List_of_ARM_microprocessor_cores das genaue instruction set herausfinden.
- Läuft dort ein Linux armhf oder armel.
- Fließkomma-Einheit und deren instruction set (nur relevant bei armhf oder wenn du Fließkommazahlen in Hardware berechnen musst)
- Application Binary Interface (ABI) -- häufig EABI
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein