Stimmt schon das man das einschalten muss soweit hatte ich das auch schon angenommen. Aber wie man das macht ist mir nicht klar. Das mbed hat so einen eigenen config Prozess aber wie wurde der für Platformio umgesetzt.
Stimmt schon das man das einschalten muss soweit hatte ich das auch schon angenommen. Aber wie man das macht ist mir nicht klar. Das mbed hat so einen eigenen config Prozess aber wie wurde der für Platformio umgesetzt.
Ich kenne das nicht.
Mal ein Link zu der platformio.ini: https://docs.platformio.org/en/latest/projectconf.html
Es gibt aber eine Platformio Community, dort vielleicht mal melden und nachfragen?
Ich habe jetzt eine Weile gesucht, aber nichts brauchbares gefunden, was Dein Problem beschreibt oder erklärt.
MfG
Geändert von Moppi (15.10.2018 um 14:55 Uhr)
Versucht habe ich jetzt mal in der platformio.ini die nötigen Makros zu definieren
Dann kommt es nicht mehr zu der oben genannten Fehlermeldung. Leider geht es deshalb immer noch nicht. Er möchte dann im Beispiel Programm die Werte für SSID und Passwort gesetzt haben. Das habe ich mal so versucht.Code:build_flags = -DPIO_FRAMEWORK_MBED_RTOS_PRESENT -DMBED_CONF_LWIP_IPV4_ENABLED -DMBED_CONF_LWIP_IP_VER_PREF=4
Da bin ich mir aber nicht sicher das diese -D Optionen für den GCC so funktionieren.Code:-DMBED_CONF_APP_WIFI_SSID="ssid" -DMBED_CONF_APP_WIFI_PASSWORD="passwort"
Fehlermeldungen:
ssid und passwort sind Platzhalter für meine echten Werte.Code:src/NoTimeForRevolution.cpp: In function 'int main()': <command-line>:0:25: error: 'ssid' was not declared in this scope src/NoTimeForRevolution.cpp:149:39: note: in expansion of macro 'MBED_CONF_APP_WIFI_SSID' printf("\nConnecting to %s...\n", MBED_CONF_APP_WIFI_SSID); ^~~~~~~~~~~~~~~~~~~~~~~ <command-line>:0:29: error: 'passwort' was not declared in this scope src/NoTimeForRevolution.cpp:150:54: note: in expansion of macro 'MBED_CONF_APP_WIFI_PASSWORD' int ret = wifi->connect(MBED_CONF_APP_WIFI_SSID, MBED_CONF_APP_WIFI_PASSWORD, NSAPI_SECURITY_WPA_WPA2);
Kennt ihr vielleicht irgendeine Alternative die leichter zu benutzen ist als das mbed auf diesem oben genannten STM32 Platinchen?
wenn er Arduino-kompatibel ist: Arduino IDE.
Wenn nicht: es ist ja auch "nur" ein ARM Cortex M4...
dann alternativ ein anderer STM 32, für den es Arduino board cores gibt
NUCLEO-F334R8 soll angeblich mit Arduino funktionieren, bin mir aber nicht sicher,
evt auch andere möglich wie https://www.amazon.de/STM32F4-DISCOV.../dp/B00NYBD9NW
Oder Adafruit M4, die funktionieren sicher mit der Arduino IDE:
ein Adafruit Feather M4
oder ein Adafruit Itsybitsy M4
oder ein Adafruit Metro M4
Das war jetzt wohl nicht so ganz eindeutig was ich oben geschrieben hatte. Ich meinte mehr eine Alternative für das mbed die Hardware wollte ich eigentlich weiter benutzen. Stimmt schon das es nur ein Cortex-M4 ist aber wenn man immer alles an Software von Grund auf neu schreiben muss ist es Mühsam voran zu kommen. Arduino kompatibel ist er glaube ich nicht. Zumindest bekam ich von platformio die Fehlermeldung das er es nicht ist. Das war bei dem Versuch eine zwar für STM32 aber Arduino WLAN Bibliothek zu benutzen.
da habe ich deine "Alternativen-Suche" tatsächlich etwas zu weitgreifend verstanden
Was deine Versuche mit einer Arduino-Lib angeht (WLAN):
Das ist nicht das Entscheidende, denn die funktionieren von sich aus nicht unbedingt aus dem Stand mit anderen Frameworks (wegen Serial(), Wire() u.a. Basis-Libs) - sondern ob du einen core findest, den du über den Arduino-Boardmanager laden kannst. M4 cores gibt es ja etliche, nicht nur zu Adafruit M4, sondern auch Teensy mit M4 u.v.a., von daher halte ich es für nicht ausgeschlossen, welche für deinen STM32L4 zu finden und zu laden.
Aber ohne mich jetzt darauf versteifen zu wollen:
wenn es sich heraus stellt, dass es weder cores für den STM32L4 gibt noch dass du mit deinem mbed Framework u.ä. weiterkommst, dann wäre IMO ein Wechsel zu einem anderen M4 Board kein Weltuntergang wegen der nötigen 20 EUR (oder weniger) Investition für kompatible Adafruits oder Teensys oder STM32s.
Das Arduino IDE/API ist aber ja auch auf C++11 aufgebaut, von daher wirst du auch nicht so viel Code neu schreiben müssen, und es ist zukunftssicher, da die Libs und Codes auch künftig für andere, noch neuere und noch leistungsfähigere Boards passen werden.
Aber wie auch immer: viel Erfolg bei deiner Suche und für deine entsprechende Entscheidung!![]()
Also was Du mit dem Core meinst kann ich mir zwar etwa vorstellen. Genau weiß ich das aber nicht. Ich würde mal vermuten das sind dann die Definitionen mit den Registern, Portnamen und vielleicht Memorymapping oder so ähnlich. Vielleicht auch ein paar Grundlegende Programmteile.
Ich finde das ganze egal ob nun mit Arduino oder mbed sehr unübersichtlich es gibt alle möglichen Programmmodule die dann wieder nur mit bestimmten anderen zusammen funktionieren. Aber es wird nicht wirklich angegeben welche das genau sind und es gibt auch oft mehrere die den gleichen Namen haben. Auch bei Header Files habe ich oft das Problem das es nicht gefunden wird. Eine Suche zeigt dann es gibt 5 verschiedene Programmbibliotheken mit dem Filenamen ... welcher ist dann der richtige?
Das Platinchen habe ich im Rahmen dieser "Elektor Board Games" bekommen deshalb muss ich das da verwenden. Es heißt ja eigentlich das man da auch Support dazu bekommt aber bei der genannten Mailadresse und bei der Elektor bekommt man keine Antwort auf Fragen... aber bis Ende des Monats soll man fertig sein
... die Platine ist vor einer Woche bei mir angekommen.
Das Beispiel oben geht nach dem was ich gefunden habe nicht mit diesem Platinchen. Das liegt daran das die von ST gemachte Unterstützung scheinbar für das verwendete WLAN Module die (was auch immer) WiFiInterface nicht implementiert. Nach längerem suchen habe ich ein Beispiel für einen WebServer gefunden: https://os.mbed.com/teams/ST/code/DISCO_L475VG_IOT01-wifi_http_server/
Irgendwie fehlt beiden Projekten ... Arduino und mbed ... eine Instanz die die Entwicklung koordiniert und dafür sorgt das die Dinge kompatibel sind. Würde man den Linux Kernel genauso Planlos entwickeln gäbe es einen Kernel der zwar viele schöne Teile hat aber nichts passt wirklich zum anderen.
Lesezeichen