Author
|
Topic: Hilfe beim Flashen via JLink (Read 5592 times)
|
|
DF8OE
Administrator
Offline
Posts: 6268
Stellvertr. OVV I40, Jugend / Nachwuchsreferent
|
|
Re:Hilfe beim Flashen via JLink
« Reply #30 on: 31. March 2016, 07:18:53 »
|
|
Ich finde die Diskussion sehr interessant und kann die Beweggründe für die Ansätze verstehen.
Allerdings bin ich mir fast sicher, dass bei einer größeren Vielfalt von verwendeten toolchains und Umgebungen wir uns viel öfter an weiteren Baustellen verzetteln, die erst durch diese Öffnung entstanden sind. Da verwenden einige Programmer Syntax, die erst im C99 Mode läuft (und der ist bei der 4.9 fehlerhaft) und andere Programmer, die mit der 4.9 arbeiten, müssen as entweder jedesmal umstricken oder wissen viellleicht gar nicht, was ein C99 Mode ist (zum Beispiel).
Wir müssen davon ausgehen, dass es doch einige (auch Linux!!) User gibt, die mit Umgebungsvariablen, mehreren unterschiedlichen Toolchains auf einem Gerät etc. nicht bewandert sind und damit auch nicht klarkommen.
Deswegen haben wir uns,als ich nicht mehr "Alleinunterhalter" war, auf eine toolchain geeinigt, die aus den Repos aller namhafter Distributionen zu ziehen ist und auch für Windows verfügbar ist - und das ist die 4.9. Erstellter Code muss per se unter der 4.9 zu bauen sein!
Ich sehe zum jetzigen Zeitpunkt auch keine Notwendigkeit, das wieder umzuwerfen. Die Nicklichkeiten des 4.9, die uns hier stören, sind bekannt und können leicht umgangen werden - wir haben keine wirkliche Einschränkung durch die Verwendung des 4.9
Daher würde ich vorschlagen, dass das Makefile derart umgebaut wird, dass die Funktionalität kompatibel mit dem jetzigen bleiben muss. Bedeutet: Wenn die Umgebungsvariable nicht vorher vom User gesetzt wurde, wird der auf dem System default vorhandene Compiler benutzt. In dem Fall wäre das neue Makefile ein "Goodie" für alle, die noch weiter hinaus wollen, aber führt nicht dazu, dass diejenigen, die via yum oder apt eine toolchain installiert haben und mehr auch nicht können, vor verschlossenen Türen stehen.
vy73 Andreas
|
|
Logged
|
Wenn der Wind des Wandels weht, nageln die einen Fenster und Türen zu und verbarrikadieren sich. Die anderen gehen nach draußen und bauen Windmühlen... qrz.com-Seite von DF8OE
----------------------------------------------------- >>>> Die Inhalte meiner Beiträge dürfen ohne meine explizite Erlaubnis in jedwedem Medium weiterverbreitet werden! <<<<
|
|
|
dl8mby
alter Hase
Offline
Posts: 363
Ich liebe dieses Forum!
|
|
Re:Hilfe beim Flashen via JLink
« Reply #31 on: 31. March 2016, 07:47:03 »
|
|
Danke!
Werde es heute Abend versuchen.
Markus DL8MBY
|
|
Logged
|
|
|
|
dl8mby
alter Hase
Offline
Posts: 363
Ich liebe dieses Forum!
|
|
Re:Hilfe beim Flashen via JLink
« Reply #32 on: 31. March 2016, 07:49:00 »
|
|
Hallo Andreas,
hast Du Dich nur verschrieben oder ist es wirklich 4.9, denn laut Makefile steht überall als Version 4.8, oder bringe ich da was durcheinander.
Markus DL8MBY
|
|
Logged
|
|
|
|
|
dl8mby
alter Hase
Offline
Posts: 363
Ich liebe dieses Forum!
|
|
Re:Hilfe beim Flashen via JLink
« Reply #34 on: 31. March 2016, 08:05:43 »
|
|
Hallo Andreas,
dan werde ich mal mir auch die 4.9 (bei mir 4.9.3) als Toolchain installieren und damit weiter arbeiten.
Hast Du eventuell Erfahrung mit OpenSTM32 für Linux oder der CooCox IDE unter wine auf Linux? Mit der reinen Eclipse IDE komme ich noch nicht so zu recht. Wahrscheinlich mangels entsprechender Erfahrung.
Markus DL8MBY
|
|
Logged
|
|
|
|
|
dl8mby
alter Hase
Offline
Posts: 363
Ich liebe dieses Forum!
|
|
Re:Hilfe beim Flashen via JLink
« Reply #36 on: 31. March 2016, 08:33:18 »
|
|
Hallo Andreas,
ich bin auch mehr der CLI Fan, wobei ich durchaus eine IDE schätze, wenn ich mit fremden Code zu tun habe und dieser vor allem über viele Files verteilt ist, wie bei diesem Projekt.
Was mich bei der Eclipse-Installation nervt, wahrscheinlich Mangels Erfahrung, ist die Tatsache, dass trotz bestehendem Makefile, überall Konfigurationswerte mit Pfaben und den Compiler-Tools einzutragen sind.
Weist Du, ob man das Makefile irgendwie importieren kann, um diese Werte in der Konfiguration von Eclipse automatisch gesetzt zu bekommen?
Markus DL8MBY
|
|
Logged
|
|
|
|
|
dl8mby
alter Hase
Offline
Posts: 363
Ich liebe dieses Forum!
|
|
Re:Hilfe beim Flashen via JLink
« Reply #38 on: 31. March 2016, 10:57:56 »
|
|
Hallo Andreas,
ich hoffe nicht mit meiner Fragerei zu nerven,
aber woher weiss die Eclipse IDE über meine
Installierte ToolChain bescheid.
Es müssen wohl Umgebungsvariablen richtig desetzt sein, das gcc und make gefunden werden.
Würde das bedeuten, dass ein Import der Projektsource aus
dem Git-Repository in Eclipse automatisch anhand der hinterlegten
Einstellungen im Git-Verzeichnis die richtige Konfiguration setzt.
Markus DL8MBY
|
|
Logged
|
|
|
|
DB4PLE
positron Urgestein
Offline
Posts: 1278
|
|
Re:Hilfe beim Flashen via JLink
« Reply #39 on: 31. March 2016, 11:40:02 »
|
|
Hallo Markus,
schau Dir bitte mal die Infos im Wiki an https://github.com/df8oe/mchf-github/wiki/Setting-up-Firmware-Development-Software. Dort gibt es die Infos, wie die Umgebung einzurichten ist. Für Eclipse wird hier explizit auf die Seiten des GNU ARM Eclipse Projects verwiesen. https://gnuarmeclipse.github.io/ Dort sind alle Schritte zur ordentlichen Einrichtung beschrieben. Ich habe diese Anleitung 2x (auf verschiedenen Maschinen) durchlaufen und es hat prima funktioniert.
Bei Linux ist die größte Herausforderung, dass die verschiedenen Distributionen unterschiedlich funktionieren. Das Problem wird bei der Anleitung dadurch gelöst, dass hier binäre Dateien (oder Source zum selber compilieren bereitgestellt wird). Das muss man allerdings akzeptieren. Ist nicht jedem recht, kann ich auch verstehen, aber dann ist es auch sehr schwer zu helfen, ohne selbst genau die gleiche Umgebung zu haben.
Bezüglich gcc 4.9 vs. 5.2: Unter Windows gibt es mit gcc 5.2 mit dem aktuellen Build des gccs von der GCC ARM Embedded jedenfalls absolut keine mir bekannten Probleme in Verbindung mit dem mcHF. Und dementsprechend ist das auch für Linux zu erwarten, denn wenn Cross-Compiler Chains aus den gleichen (!) Sourcen gebaut werden, verhalten sie sich in aller Regel auf allen Hostmaschine gleich, wenn es ums kompilieren geht, da die Cross-Umgebung (Header, Libraries etc.) ja identisch ist. Ein gcc 5.2 der von Suse gebaut wurde muss sich nicht wie der Ubuntu oder Debian gcc verhalten, da hier oft noch Distributionspezifsche patches eingespielt werden oder eben ein leicht anderer Softwarestand (minor version).
73 Danilo
|
|
Logged
|
|
|
|
DF8OE
Administrator
Offline
Posts: 6268
Stellvertr. OVV I40, Jugend / Nachwuchsreferent
|
|
Re:Hilfe beim Flashen via JLink
« Reply #40 on: 31. March 2016, 11:53:40 »
|
|
Hallo Danilo,
ich kann bestätigen dass Eclipse auch bei mir auf unterschiedlichen Maschinen mit verschiedenen Distris (nicht alle Debian-basiert) einwandfrei gelaufen ist.
Bezüglich der Toolchain möchte ich aber doch, dass die Toolchain, die in "Debian stable" als neuestes zu haben ist, die Basis bilden sollte, auf der sich der Code bauen lassen muss. Die Systempflege bei nicht in das Paketmanagement eingebundenen Toolchains halte ich für die Masse der User nicht für machbar.
Hier gibt es Infos über die verfügbaren Versionen für Debian: https://packages.debian.org/jessie/gcc-arm-none-eabi
Wenn man auf einem Debian-System via Eclipse das Projekt importiert, klappt alles out-of-the-box. Das dürfte auch mit allen Forks so sein.
Sollte es Distributionen geben, deren Pakete so schlecht konfiguriert sind, dass die Variablen nicht oder falsch gesetzt sind, dann ist das entweder dem Benutzer vorher schon bekannt gewesen dass er bei seiner speziellen Distri immer nochmal Hand anlegen muss wo andere schon arbeiten (dann kennt er das Problem ja bereits...) oder es wird ihm an dieser Stelle bewusst und er kann sich jetzt Gedanken machen ob er das noch öfter erleben will oder einfach flexibel ist und sich in der Welt der anderen Distris umschaut
Man könnte natürlich eine Live-CD basteln wo eine komplette Entwicklungsumgebung schon drauf ist und die das Ergebnis stets auf einem USB-Stick speicherbar macht Das ist dann aber wohl doch mit Kanonen auf Spatzen schießen...
vy 73 Andreas
|
|
Logged
|
Wenn der Wind des Wandels weht, nageln die einen Fenster und Türen zu und verbarrikadieren sich. Die anderen gehen nach draußen und bauen Windmühlen... qrz.com-Seite von DF8OE
----------------------------------------------------- >>>> Die Inhalte meiner Beiträge dürfen ohne meine explizite Erlaubnis in jedwedem Medium weiterverbreitet werden! <<<<
|
|
|
dl8mby
alter Hase
Offline
Posts: 363
Ich liebe dieses Forum!
|
|
Re:Hilfe beim Flashen via JLink
« Reply #41 on: 31. March 2016, 12:04:49 »
|
|
Danke Andreas,
für die ausführlichen Hinweise und Links.
Werde heute Abend weiter konfigurieren, und installieren.
Wobei im Augenblick ich auf der CLI Ebene erfolgreich den Code bauen kann und auch das Flashen klappt jetzt prima.
Wo ich noch dran bin, ist das Einrichten der besonderen Linker Skripte für meine MC Architektur, den 439-Typen.
Aber da Du für konstante Verhältnisse wirbst, will ich dieses Forum nicht zu sehr damit behelligen.
Ich bin vom Mainsteam bewusst abgewichen, da ich in den diversen Foren ja schon Anzeichen für eine Obergrenze des Codes festgestellt habe, die den 405/407 Chips früher oder später zusetzen wird.
Zwar stimmt es, dass durch Optimierungen im Code, die jetzt noch nicht so im Fordergrund stehen, die binäre Image Größe noch reduziert werden wird, aber dieser Vorgang hat auch seine Grenze. Mich hat auch der onchip DSP angesprochen, der auch noch viel Potential bei dem /427/429/437439 MC bietet..
Zudem ist die GUI-Platine mit dem bestehendem Code noch für viele andere Frontends nach dem DC I/Q SDR prinzip einsetzbar.
Man hat damit neben den eigentlichen mchf noch weitere Möglichkeiten in unserem Hobby.
vy73 Markus DL8MBY
|
|
Logged
|
|
|
|
|
dl8mby
alter Hase
Offline
Posts: 363
Ich liebe dieses Forum!
|
|
Re:Hilfe beim Flashen via JLink
« Reply #43 on: 31. March 2016, 14:40:39 »
|
|
Hallo Andraes,
bei meiner Suche nach Infos zu dem STM324xx
bin ich auf den folgenden Link zum Thema CCM gestoßen.
http://sigalrm.blogspot.de/2013/12/using-ccm-memory-on-stm32.html
Dort ist erklärt, wie man Funktionen/Variablen/Arrays in den 64kB großen RAM vor aufruf der main Funktion transferieren kann, um auf diese Daten sehr schnell zuzugreifen.
Der CCM ( ein schneller Speicher, der direkt an der CPU ohne Busmatrix hängt ) ist für Tabellen (LUT's) predisteniert.
Vielleicht bringt das Euch auf neue Ideen, falls nicht schon bekannt.
Markus DL8MBY
|
|
Logged
|
|
|
|
|
|
|
|