Forum: Mikrocontroller und Digitale Elektronik Erstes Programmieren von STM 32, irgendwas mache ich falsch.


von Jandro (Gast)


Lesenswert?

Hallo,
ich bin Anfänger und es geht um ein STM 32F407. Ich konfiguriere in 
CubeMX und übertrage den Code in System Workbench...

Nun gehe ich praktisch nach Anleitung vor, ich lasse mir von CubeMx den 
Code für mein kleines LED-Test-Projekt generieren und schreibe in der 
Workbench meinen Code in die While(1)-Schleife der main.c-Datei im 
Ordner Src.

Anschließend lasse ich über den 010-Button den Binärcode für das Board 
erstellen und dabei tritt unten schon folgende Meldung auf:

"  make: *** [Src/main.o] Error 1
Src/subdir.mk:27: recipe for target 'Src/main.o' failed "

Beim Debuggen pflanzen sich die Fehlermeldungen dann entsprechend fort. 
Was mache ich falsch?^^

Vielen Dank im Voraus

von da1l6 (Gast)


Lesenswert?

Hallo

Jandro schrieb:
> "  make: *** [Src/main.o] Error 1
> Src/subdir.mk:27: recipe for target 'Src/main.o' failed "

Das ist ein Folgefehler. Der eigentliche Fehler ist weiter oben im log.

da1l6

von Jandro (Gast)


Lesenswert?

okay dann zweiter Versuch. Das erste, was rot unterlegt wird, ist das 
hier:

c:\ac6\systemworkbench\plugins\fr.ac6.mcu.externaltools.arm-none.win32_1 
.16.0.201807130628\tools\compiler\lib\gcc\arm-none-eabi\7.2.1\include\st 
dint.h:9:16:  fatal error: stdint.h: No such file or directory

von pasi (Gast)


Lesenswert?

Scheint mit so als sei mit der Installation von SystemWorkBench 
irgendwas mau wenn er schon die Includes nicht findet.

Gruß

von Jandro (Gast)


Lesenswert?

es muss an mir liegen, denn der Fehler tritt auf zwei verschiedenen 
Rechnern auf (Hochschule und bei mir zu Hause)^^ Und an der Hochschule 
kann das Ding laufen, ich habe es mit eigenen Augen gesehen

von Dr. Sommer (Gast)


Lesenswert?

Dann zeig mal den gesamten Build-Log und auch den Source Code, sowie die 
Stelle die angemeckert wurde, und prüfe ob die stdint.h wirklich nicht 
existiert. Prüfe außerdem ob mindestens mit -std=c99 kompiliert wird.

von Jandro (Gast)


Lesenswert?

ich habe es jetzt leider gerade nicht zur Hand :(
Womöglich hat es was mit dem Speicherort zu tun, denn als der Fehler in 
der Hochschule auftrat hat ein Mitarbeiter da alles gelöscht und neu 
angelegt und meinte nur, dass ich keine Doppelklicks auf die .elf-Datei 
machen darf, da das Programm so keinen Zugriff kriegt... er war aber nur 
sehr kurz angebunden... ich habe aber auch keine Doppelklicks mehr 
gemacht außer auf dei main-Datei, damit ich dort meinen Code einfügen 
kann

von Jandro (Gast)


Lesenswert?

also muss ich generell noch etwas machen, bevor ich auf den 010-Button 
klicke? Der hat da irgenwelche Optionen im Run bzw. Debug-Menü 
eingestellt

von Dr. Sommer (Gast)


Lesenswert?

Jandro schrieb:
> und meinte nur, dass ich keine Doppelklicks auf die .elf-Datei
> machen darf, da das Programm so keinen Zugriff kriegt

Äh, was. Womit würde man die auch öffnen wollen, mit dem Hex-Editor? Bis 
zum Anlegen der .elf-Datei kommst du ja gar nicht. Selbst wenn, wäre die 
Fehlermeldung eine andere.

von Jandro (Gast)


Lesenswert?

nein, die wird dann in der Workbench im C/C++ Bildschirm angezeigt.. 
aber egal. Die .elf-Datei wird aber trotz der Fehlermeldung erstellt!

von Dr. Sommer (Gast)


Lesenswert?

Jandro schrieb:
> Die .elf-Datei wird aber trotz der Fehlermeldung erstellt!

Das kann nicht sein. Dann gehört die Fehlermeldung nicht zum 
Compiler-Lauf. Irgendwas passt da nicht zusammen.

von Mathias _. (mathias1988)


Lesenswert?

Jandro schrieb:

> c:\ac6\systemworkbench\plugins\fr.ac6.mcu.externaltools.arm-none.win32_1 
.16.0.201807130628\tools\compiler\lib\gcc\arm-none-eabi\7.2.1\include\

Geh doch mal in deinen Explorer und schau unter dem Pfad nach, ob die 
"stdint.h" in dem Ordner liegt und ob du die Datei öffnen kannst.

Wenn die Datei dort liegt, dann ist Sie zumindest in SW4STM32 schon mal 
richtig eingebunden. Wenn du Sie im Explorer mit Notpad etc. öffnen 
kannst, SW4STM32 aber keinen Zugriff hat, dann führe doch SW4STM32 mal 
mit Admin-Rechten aus...

Guten Gelingen,
Mathias

von Jandro (Gast)


Lesenswert?

aber wenn ich mein Projekt von CubeMx in einem Ordner speichere und 
SystemWorkbench beim Importieren ohne Probleme darauf zugreifen kann, 
wie kann dann etwas fehlen?
Ich verstehe das nicht -.-  Ich blicke überhaupt nicht durch

von Dr. Sommer (Gast)


Lesenswert?

Jandro schrieb:
> wie kann dann etwas fehlen?

Indem es bei System Workbench selber, außerhalb des Projekts, fehlt. 
Das ist aber etwas unwahrscheinlich. Vermutlich ist das Projekt falsch 
konfiguriert. Nur weil SW das anscheinend korrekt importiert, muss da 
noch lange nicht alles richtig eingestellt sein.

von Jandro (Gast)


Lesenswert?

Nein, der Mitarbeiter von der Uni hat nur ganz wenige Klicks gemacht und 
es leif durch -.- Und ich kann es aber nicht nachvollziehen, was er 
geamcht hat...

von Dr. Sommer (Gast)


Lesenswert?

Kann ja sein, aber solange du nicht die dir genannten Punkte überprüfst 
kann dir hier auch keiner helfen. Oder sollen wir erraten was der 
Mitarbeiter  gemacht hat?

von Jandro (Gast)


Lesenswert?

vielleicht mache ich ja grundlegend was falsch, muss ich nach dem 
Importieren und meinem Code in der Main-Datei noch etwas beachten und 
einstellen, bevor ich die .elf und .bin-Dateien erstellen lasse?

von Dr. Sommer (Gast)


Lesenswert?

Eher in den Projekt-Einstellungen.

von Jandro (Gast)


Lesenswert?

Dr. Sommer schrieb:
> Prüfe außerdem ob mindestens mit -std=c99 kompiliert wird.


Ich bin ein blutiger Anfänger und habe keine Ahnung, wovon du sprichst 
:D

von J. T. (chaoskind)


Lesenswert?

Hast du der SystemWprkbench denn auch mitgeteilt, wo deine ganzen .h 
liegen?
Unter Project->Properties. Da öffnet sich ein Fenster da klickst du auf 
c/c++ General und dann auf Path and Symbols. Da kannst du dann 
mitteilen, wo sie liegen.
Damit hatte ich am Anfang jedenfalls ganz schön zu kämpfen.

von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Lesenswert?

Jandro schrieb:
> Klicks gemacht

Ich lese hier die ganze Zeit nur, dass Du Dich reichlich naiv und 
unbeholfen durch die Gegend klickst. Wie wäre es denn, wenn Du Dich 
stattdessen endlich einmal Zeile für Zeile durch das Build-Log arbeitest 
und versuchst, jeden (JEDEN!) einzelnen Schritt nachzuvollziehen. 
Spätestens dann, wenn Du bei Deinem Programm auf irgendeinen Fehler 
stoßen solltest, der möglicherweise mit der Kompilierung selbst zu tun 
hat, benötigst Du solche Kenntnisse.

von Dr. Sommer (Gast)


Lesenswert?

J. T. schrieb:
> Hast du der SystemWprkbench denn auch mitgeteilt, wo deine ganzen .h
> liegen?

Muss man nicht. Das weiß der Compiler von selbst.

Jandro schrieb:
> Ich bin ein blutiger Anfänger und habe keine Ahnung, wovon du sprichst
> :D

Von der Kommandozeilenoption -std=c99 welche an den Compiler übergeben 
wird und welche den Sprachstandard setzt.

von Jandro (Gast)


Lesenswert?

Also in der Konfiguration habe ich ja nicht viel zu tun. Ich habe für 
mein kleines LED Projekt gerade mal 2 Pins als GPIO-Output konfiguriert, 
low und no pull up/down... und im Projektmanager habe ich für 
Toolchain/IDE SW4STM32 und "Generate under root" eingestellt... ich bin 
praktisch nach Anleitung vorgegangen.. in der Clock Configuration habe 
ich gar nichts angerührt... das war alles, was ich in CubeMx gemacht 
habe

von J. T. (chaoskind)


Lesenswert?

Dr. Sommer schrieb:
> J. T. schrieb:
>> Hast du der SystemWprkbench denn auch mitgeteilt, wo deine ganzen .h
>> liegen?
>
> Muss man nicht. Das weiß der Compiler von selbst.

Aber nur bei den ganzen Standardgeschichten die bei C dabei sind. CubeMX 
schmeißt da dann noch den HAL-krams dazu. Alles weitere musst du, je 
nach Ablageort händisch angeben.

Desweiteren hab ich es auch schon einige Male gehabt, dass er mir auch 
nicht kompilieren wollte, nachdem ich dann explizit angeben hab, wo die 
Files liegen, ging es dann.

von Jandro (Gast)


Angehängte Dateien:

Lesenswert?

Also hier ist der gesamte Durchlauf

von J. T. (chaoskind)


Lesenswert?

Was steht am Ende der roten Zeile? Das ist auf dem Bild nicht zu sehen

von Jandro (Gast)


Lesenswert?

ich habe es ja eigentlich schon geschrieben

include\stdint.h:9:16: fatal error: stdint.h: No such file or directory

von Dr. Sommer (Gast)


Lesenswert?

Jandro schrieb:
> Also in der Konfiguration habe ich ja nicht viel zu tun.

Da wird aber einiges automatisch angelegt. Bei Embedded-Projekten muss 
immer einiges konfiguriert werden. Da kann einiges falsch sein.

J. T. schrieb:
> Aber nur bei den ganzen Standardgeschichten die bei C dabei sind.

Um die geht es ja (stdint.h).

Jandro schrieb:
> Also hier ist der gesamte Durchlauf

Da sind 3 Zeilen abgeschnitten. Zeige es doch mal als Text. Wieso gibt 
es eigentlich seit ein paar Jahren den Trend, Programme und 
Fehlermeldungen als Screenshot zu zeigen?

von J. T. (chaoskind)


Angehängte Dateien:

Lesenswert?

Wie sieht das denn bei dir in den includes aus? Wie man da hinkommt, hab 
ich n paar Beiträge weiter oben beschrieben.

Die "gelben" Ordner sind von Anfang an mit eingebunden bei mir, und die 
"lila" Ordner sind von mir hinzugefügt.

Du solltest eigentlich mindestens den Inc Ordner haben, da müssten die 
ganzen Sachen wie stdint.h und stdio.h usw weiter drin sein.

von Dr. Sommer (Gast)


Lesenswert?

J. T. schrieb:
> Du solltest eigentlich mindestens den Inc Ordner haben, da müssten die
> ganzen Sachen wie stdint.h und stdio.h usw weiter drin sein.

Nein, die müssten in der Compiler-Installation selbst sein. Den Pfad 
muss man nirgendwo angeben, das macht der Compiler von selbst.

von Jandro (Gast)


Lesenswert?

12:26:24 **** Incremental Build of configuration Debug for project 
Blink_LED ****
make all
Building file: ../startup/startup_stm32f407xx.s
Invoking: MCU GCC Assembler
C:\Users\**\Desktop\Testprojekte\Blink_LED\Debug
arm-none-eabi-as -mcpu=cortex-m4 -mthumb -mfloat-abi=hard 
-mfpu=fpv4-sp-d16 -I"C:/Users/**/Desktop/Testprojekte/Blink_LED" -g -o 
"startup/startup_stm32f407xx.o" "../startup/startup_stm32f407xx.s"
Finished building: ../startup/startup_stm32f407xx.s

Building file: ../Src/main.c
Invoking: MCU GCC Compiler
C:\Users\**\Desktop\Testprojekte\Blink_LED\Debug
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -mfloat-abi=hard 
-mfpu=fpv4-sp-d16 '-D__weak=__attribute__((weak))' 
'-D__packed=__attribute__((_packed_))' -DUSE_HAL_DRIVER -DSTM32F407xx 
-I"C:/Users/**/Desktop/Testprojekte/Blink_LED/Inc" 
-I"C:/Users/**/Desktop/Testprojekte/Blink_LED/Drivers/STM32F4xx_HAL_Driv 
er/Inc" 
-I"C:/Users/**/Desktop/Testprojekte/Blink_LED/Drivers/STM32F4xx_HAL_Driv 
er/Inc/Legacy" 
-I"C:/Users/**/Desktop/Testprojekte/Blink_LED/Drivers/CMSIS/Device/ST/ST 
M32F4xx/Include" 
-I"C:/Users/**/Desktop/Testprojekte/Blink_LED/Drivers/CMSIS/Include" 
-Og -g3 -Wall -fmessage-length=0 -ffunction-sections -c 
-fmessage-length=0 -MMD -MP -MF"Src/main.d" -MT"Src/main.o" -o 
"Src/main.o" "../Src/main.c"
In file included from 
C:/Users/**/Desktop/Testprojekte/Blink_LED/Drivers/CMSIS/Include/core_cm 
4.h:44:0,
                 from 
C:/Users/**Desktop/Testprojekte/Blink_LED/Drivers/CMSIS/Device/ST/STM32F 
4xx/Include/stm32f407xx.h:183,
                 from 
C:/Users/**/Desktop/Testprojekte/Blink_LED/Drivers/CMSIS/Device/ST/STM32 
F4xx/Include/stm32f4xx.h:149,
                 from 
C:/Users/**/Desktop/Testprojekte/Blink_LED/Drivers/STM32F4xx_HAL_Driver/ 
Inc/stm32f4xx_hal_def.h:46,
                 from 
C:/Users/**/Desktop/Testprojekte/Blink_LED/Drivers/STM32F4xx_HAL_Driver/ 
Inc/stm32f4xx_hal_rcc.h:45,
                 from 
C:/Users/**/Desktop/Testprojekte/Blink_LED/Inc/stm32f4xx_hal_conf.h:244,
                 from 
C:/Users/**/Desktop/Testprojekte/Blink_LED/Drivers/STM32F4xx_HAL_Driver/ 
Inc/stm32f4xx_hal.h:46,
                 from 
C:/Users/**/Desktop/Testprojekte/Blink_LED/Inc/main.h:51,
                 from ../Src/main.c:42:
c:\ac6\systemworkbench\plugins\fr.ac6.mcu.externaltools.arm-none.win32_1 
.16.0.201807130628\tools\compiler\lib\gcc\arm-none-eabi\7.2.1\include\st 
dint.h:9:16:  fatal error: stdint.h: No such file or directory
 # include_next <stdint.h>
                ^~~~~~~~~~
compilation terminated.
Src/subdir.mk:27: recipe for target 'Src/main.o' failed
make: *** [Src/main.o] Error 1

12:26:26 Build Finished (took 2s.649ms)

von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Lesenswert?

Wahrscheinlich ist der Compiler unter einem ganz anderen Pfad 
installiert als der, für den er selbst generiert wurde. Dann erwartet er 
trotzdem, dass sich die zugehörigen Bibliotheken sowie die 
Standardbibliotheken an dem ursprünglichen Pfad befinden. Ggf. muss man 
die entsprechenden Pfade für Header und Bibliotheken explizit übergeben.

Beim GCC lassen sich die Bibliothekspfade mittels "gcc 
-print-search-dirs" anzeigen. Nein, es gibt keinen Button mit dieser 
Bezeichnung, auf den man einfach klicken kann. Hier ein Teil des 
Hilfetextes von GCC 4.8:
1
  -dumpspecs               Alle eingebauten Spezifikationszeichenketten anzeigen
2
  -dumpversion             Compilerversion anzeigen
3
  -dumpmachine             Zielprozessor des Compilers anzeigen
4
  -print-search-dirs       Verzeichnisse im Suchpfad des Compilers anzeigen
5
  -print-libgcc-file-name  Name der Begleitbibliothek des Compilers anzeigen
6
  -print-file-name=<lib>   Vollen Pfad zur Bibliothek <lib> anzeigen
7
  -print-prog-name=<prog>  Vollen Pfad zur Compilerkomponente <prog> anzeigen
8
  -print-multiarch         Normalisiertes GNU-Tripel für das Ziel anzeigen,
9
                           als Komponente im Bibliothekspfad verwendet
10
  -print-multi-directory   Wurzelverzeichnis für Versionen von libgcc anzeigen
11
  -print-multi-lib         Abbildung zwischen Kommandozeilenoptionen und
12
                           mehreren Suchverzeichnissen für Bibliotheken anzeigen
13
  -print-multi-os-directory Relativen Pfad zu Betriebssystembibliotheken
14
                            anzeigen
15
  -print-sysroot           Verzeichnis der Ziel-Bibliotheken anzeigen
16
  -print-sysroot-headers-suffix Den für Headersuche verwendeten sysroot-Suffix anzeigen

Ggf. sind also auch noch einige andere eingestellten Pfade zu 
kontrollieren.

von Amateur (Gast)


Lesenswert?

Ich würde vor allem erst mal die abhängig generierten Dateien löschen.
Andernfalls kannst Du Dich natürlich auch durch die Datumsangaben der 
Dateien hangeln. Nach Datum sortieren...

Es ist nämlich immer wieder toll, wenn die Zieldatei existiert obwohl 
der Erstellungsprozess schiefgelaufen ist.

Üblicherweise löschen die Make-Prozesse keine Dateien, sondern ersetzen 
sie nur dann, wenn es was Neues gibt.

von Dr. Sommer (Gast)


Lesenswert?

Such doch mal nach allen "stdint.h" in C:\ac6 (Windows-Suche) . Ggf. 
einfach mal System Workbench neu installieren.

von Jandro (Gast)


Lesenswert?

wie gesagt kam das selbe am Rechner der Uni + Hier auf meinem privaten 
Rechner zu Hause^^.. das ist einfach verrückt... ich habe übrigens mal 
nur importiert ohne einen eigenen Code in der main-Datei einzufügen.. es 
bleibt bei den selben Fehlermeldungen...

Der Mitarbeiter hat gestern irgendetwas in den Run-Configurations 
eingestellt und dann ging es plätzlich ohne Probleme..

von Jim M. (turboj)


Lesenswert?

Jandro schrieb:
> fatal error: stdint.h: No such file or directory

Suche mal auf dem PC nach weiteren "stdint.h" unterhalb vom Ordner 
"c:\ac6\systemworkbench\plugins\fr.ac6.mcu.externaltools.arm-none.win32_ 
1
.16.0.201807130628\tools"

Die oben angegebene Datei ist ein stub, der auf eine andere Datei 
verweisen soll - die leider auch "stdint.h" heisst (aber in einem 
anderen Verzeichnis steht).

Ich habe hier auch einen arm-gcc 7.2.1, den benutzt NXP im aktuellen 
MCUXpresso.

von Harry L. (mysth)


Lesenswert?

Ich vermute, du hast das Projekt zunächst mit der falschen Einstellung 
für die Toolchain in CubeMX generiert, dann den Fehler bemerkt, 
umgestellt und nochmal generiert.

Das geht in die Hose.

Also nochmal durchstarten - alle Einstellungen in CubeMX kontrollieren, 
das bisherige Projekt-Verz. vollst. löschen und neu generieren.

von Jandro (Gast)


Lesenswert?

ich habe von Anfang an Toolchain auf STM gestellt, weil ich es nach 
Anleitung gemacht habe... den Ordner habe ich nun bereits 5 mal gelöscht 
und neu generiert. Egal was ich mache, ohne weitere Enstellungen in der 
Bench kommt immer wieder die gleiche Fehlermeldung, wenn ich die 
Binärdatei erstellen will

von Harry L. (mysth)


Lesenswert?

Jandro schrieb:
> ich habe von Anfang an Toolchain auf STM gestellt

Es gibt keine "STM-Toolchain"!
Entweder SW4STM32 oder TrueStudio.

Irgend etwas hast du eben nicht richtig eingestellt, da sowohl die 
Workbench wie auch TrueStudio bei korrekten Einstellungen out-of-the-box 
läuft.

von J. T. (chaoskind)


Lesenswert?

Suche mal nach irgendeiner stdint.h auf deiner Festplatte. Dann gehst in 
die Pfadeinstellungen und gibst diese stdint.h dort dann mal explizit 
an.
Auf add klicken, dann bei allen drei Kästchen das Häckchen machen, auf 
Workspace klicken, den Pfad angeben, ok klicken, nochmal versuchen zu 
kompilieren.

von Harry L. (mysth)


Lesenswert?

J. T. schrieb:
> Suche mal nach irgendeiner stdint.h auf deiner Festplatte. Dann gehst in
> die Pfadeinstellungen und gibst diese stdint.h dort dann mal explizit
> an.
> Auf add klicken, dann bei allen drei Kästchen das Häckchen machen, auf
> Workspace klicken, den Pfad angeben, ok klicken, nochmal versuchen zu
> kompilieren.

Das ist auch nur rumdoktern an den Symptomen....
Wird mit hoher Wahrscheinlichkeit auch nicht funktionieren.
Der Fehler ist bereits viel früher gemacht worden.

von Dr. Sommer (Gast)


Lesenswert?

Nochmal: Die Pfade zu Standard-C-Headern wie stdint.h muss man nicht 
in den Projekt-oder Compilereinstellungen angeben. Die findet der 
Compiler selbst. Wenn er das nicht tut, ist wahrscheinlich die 
Compiler-Installation kaputt. Einfach mal den Compiler neuinstallieren 
und sicherstellen dass man nicht mehrere GCC's und mehrere stdint.h auf 
dem Rechner hat.

von Jandro (Gast)


Lesenswert?

also auf dem Rechner ist unter dem angegebenen Pfad eine stdint.h. und 
eine stdint-gcc.h. -Datei

Habe die stdint.h.-Datei mit Visual Studio geöffnet, da steht folgendes:

#ifndef _GCC_WRAP_STDINT_H
#if _STDC_HOSTED_
# if defined __cplusplus && __cplusplus >= 201103L
#  undef __STDC_LIMIT_MACROS
#  define __STDC_LIMIT_MACROS
#  undef __STDC_CONSTANT_MACROS
#  define __STDC_CONSTANT_MACROS
# endif
# include_next <stdint.h>
#else
# include "stdint-gcc.h"
#endif
#define _GCC_WRAP_STDINT_H
#endif

von Harry L. (mysth)


Lesenswert?

Es liegt garantiert nicht an der Toolchain und der Installation!

Sowohl SW4STM32 wie auch TrueStudio bringen ihre eigene Toolchain mit, 
und installieren die auch korrekt.

Dabei ist es auch egal, ob auf dem PC weitere Toolchains für die selbe 
Architektur bereits installiert sind.

von Dr. Sommer (Gast)


Lesenswert?

Harry L. schrieb:
> Es liegt garantiert nicht an der Toolchain und der Installation!

Und woran dann sonst? Es wird ein Element der Toolchain nicht gefunden! 
Vielleicht ist bei der Installation etwas schief gelaufen. So etwas wie 
-nostdinc sehe ich auch nicht.

Mal alle stdint.h auf dem Rechner suchen.

von Harry L. (mysth)


Lesenswert?

Dr. Sommer schrieb:
> Und woran dann sonst?

Falsche Konfiguration bereits im CubeMX.

Dr. Sommer schrieb:

> Mal alle stdint.h auf dem Rechner suchen.

Bringt gar nix.
Das ist nur eine Folge der falschen Einstellungen.

Dr. Sommer schrieb:
> Vielleicht ist bei der Installation etwas schief gelaufen.

Möglich, aber dennoch eher unwahrscheinlich.

von Jandro (Gast)


Lesenswert?

ich werde hier nur noch weiter verwirrt, bringt mir nichts

von Harry L. (mysth)


Lesenswert?

Jandro schrieb:
> ich werde hier nur noch weiter verwirrt, bringt mir nichts

...weil du nicht systematisch vorgehst.

von Dr. Sommer (Gast)


Lesenswert?

Harry L. schrieb:
> Falsche Konfiguration bereits im CubeMX.

Die relevante Ausgabe von CubeMX beschränkt sich hier auf die generierte 
Kommandozeile. Die sieht aber gut aus. Durch Fehlkonfiguration von 
Peripherie & Co kann man da nichts falsch machen. Das würde sich nur 
durch Fehlverhalten beim Ausführen äußern, aber nicht beim kompilieren.

von Jandro (Gast)


Lesenswert?

das würde ich gerne, aber mir fehlt das Wissen. Nichts von dem was ich 
in meinem E-Technik-Studium gelernt habe, kann ich hier anwenden, ich 
arbeite zum ersten Mal mit einem Microcontroller. Der Arduino konnte die 
Anforderungen leider nicht erfüllen, mit dem habe ich mich schon gut 
angefreundet...
ich weiß nicht womit ich hier anfangen soll

von Dr. Sommer (Gast)


Lesenswert?

Jandro schrieb:
> ich weiß nicht womit ich hier anfangen soll

Windowstaste + F drücken, nach stdint.h suchen, Ergebnis zeigen. Sagen 
ob du noch andere GCC-Installationen auf dem Rechner hast.

von Harry L. (mysth)


Lesenswert?

Dr. Sommer schrieb:
> Harry L. schrieb:
>> Falsche Konfiguration bereits im CubeMX.
>
> Die relevante Ausgabe von CubeMX beschränkt sich hier auf die generierte
> Kommandozeile. Die sieht aber gut aus. Durch Fehlkonfiguration von
> Peripherie & Co kann man da nichts falsch machen. Das würde sich nur
> durch Fehlverhalten beim Ausführen äußern, aber nicht beim kompilieren.

Eher in den Grundeistellungen zur Code-Generierung.

Böse Falle dabei:

Wenn man hier etwas ändert, ist es eine gute Idee, den bisher 
generierten Code vor dem nächsten Generieren zunächst vollst. zu 
löschen.

Wenn die Einstellungen korrekt sind, genügt ein Doppelklick im Explorer 
auf .cproject um das Projekt zu öffnen, und das Compilieren (Strg-B) 
läuft fehlerfrei ohne jede weitere Einstellung in SW4STM32 oder 
TrueStudio.

Wenn das nicht so läuft, hat man es bereits im CubeMX vermurkst und jede 
weitere Fehlersuche im Projekt selbst ist sinnlos.

: Bearbeitet durch User
von Dr. Sommer (Gast)


Lesenswert?

Harry L. schrieb:
> Eher in den Grundeistellungen zur Code-Generierung.

Der generierte Code beeinflusst nicht die Suchpfade des Compilers.

von Jandro (Gast)


Lesenswert?

wenn ich im Suchfeld stdint.h eingebe, werden mir 282 h.-Dateien 
angezeigt, die aber einen anderen Namen haben...

von Harry L. (mysth)


Lesenswert?

Dr. Sommer schrieb:
> Harry L. schrieb:
>> Eher in den Grundeistellungen zur Code-Generierung.
>
> Der generierte Code beeinflusst nicht die Suchpfade des Compilers.

Der Code selbst nicht, aber die Einstellungen im Project-File,und der 
Code selbst und die Directory-Struktur unterscheidet sich teilweise 
auch.

Kannst du mir ruhig glauben!
Ich hatte das ähnlich gedacht wie du, und bin am Anfang in die selbe 
Falle getappt.

: Bearbeitet durch User
von Dr. Sommer (Gast)


Lesenswert?

Gib mal "name:stdint.h" ins Suchfeld ein.

von Dr. Sommer (Gast)


Lesenswert?

Harry L. schrieb:
> Der Code selbst nicht, aber die Einstellungen im Project-File,und der
> Code selbst und die Directory-Struktur unterscheidet sich teilweise
> auch.

Die Einstellungen beeinflussen aber nur die Kommandozeile, und die 
beeinflusst den Suchpfad. Die Kommandozeile sieht aber ok aus. Es gibt 
keinen weiteren geheimen Kanal wie die Einstellungen den Compiler 
beeinflussen können.

von Jandro (Gast)


Lesenswert?

da findet er gar nichts, obwohl ich eine Datei mit dem Namen selbst 
geöffnet habe...-.- Ich habe keine Lust mehr

von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Lesenswert?

Jandro schrieb:
> das würde ich gerne, aber mir fehlt das Wissen. Nichts von dem was ich
> in meinem E-Technik-Studium gelernt habe, kann ich hier anwenden, ich
> arbeite zum ersten Mal mit einem Microcontroller.

Dann musst Du Dir eben selbst die Grundlagen erarbeiten, so wie es hier 
fast alle Fachkundigen selbst getan haben. Irgendwo "draufzuklicken" 
vermittelt nicht das notwendige Wissen.

> Der Arduino konnte die
> Anforderungen leider nicht erfüllen, mit dem habe ich mich schon gut
> angefreundet...

Damit hättest Du dann ein einfaches Hobby-Niveau erreicht, aber nicht 
das, was man von einem Ingenieur einer entsprechenden Disziplin erwarten 
kann.

Ich habe Dir bereits oben schon in aller Deutlichkeit geschrieben, wie 
beim GCC, der ja Deiner Toolchain zugrundeliegt, die entsprechenden 
vorkompilierten Pfadeinstellungen herauszufinden sind. Die Tatsache, das 
so etwas nicht durch einfaches "Draufklicken" geht, bedeutet nicht, dass 
es nicht geht, sondern Du selbst einen Weg finden musst, diese 
Information auf der Kommandozeile dem GCC zu entlocken.

> ich weiß nicht womit ich hier anfangen soll

Frag Mutti, während sie Dir die Schuhe zubindet.

von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Lesenswert?

Jandro schrieb:
> da findet er gar nichts, obwohl ich eine Datei mit dem Namen selbst
> geöffnet habe...-.- Ich habe keine Lust mehr

Dann brich Dein Studium an und gehe Ponys streicheln. Wenn Deine 
Frustrationsgrenze so niedrig liegt, bist Du völlig fehl am Platze für 
eine anspruchsvolle technische Aufgabe.

von Harry L. (mysth)


Lesenswert?

Ich hab dir mal ein Beispielprojekt gezipped:
https://cloud.it-livetalk.de/index.php/s/FyiM6f5AWtAkwsw

Wenn das fehlerfrei compiliert, weist du, daß dein SW4STM32 korrekt 
installiert wurde.

Öffnen durch Doppelklick im Explorer auf .cproject.

von Jim M. (turboj)


Lesenswert?

Jandro schrieb:
> also auf dem Rechner ist unter dem angegebenen Pfad eine stdint.h

Ist das die einzige stdint.h auf Deinem PC?

Dann hast Du leider vergessen die LibC mit zu installieren. Sollte 
irgendwas mit "newlib" oder "redlib" heissen.

Deren stdint.h sollte dann allderdings in einem anderen Ordner zu finden 
sein.

: Bearbeitet durch User
von Harry L. (mysth)


Lesenswert?

Hört auf, euch an der stdint.h aufzureiben!!!

Das ist ein Symptom und nicht die Ursache der Probleme.

Das führt so zu nichts.

von Jandro (Gast)


Lesenswert?

ich habe mit Sicherheit keine niedrige Frustrationsgrenze, ich habe mich 
in meinem Studium richtig reingehängt. Meine Stärken liegen allerdings 
eher in Bereich Mathematik und Hardware. Hier allerdings frage ich mich 
gerade ernsthaft, ob es sinnvoll ist, so viel neues Wissen anzueignen, 
wo man noch nicht mal weiß, wie weit man genau in die Materie (und das 
hier ist wirklich ein komplettes komplexes und abgeschlossenes eigenes 
Universum) gehen muss, um die angeforderten Aufgaben zu erledigen und ob 
das überhaupt was bringt...

von Bernd K. (prof7bit)


Lesenswert?

Jandro schrieb:
> Hier allerdings frage ich mich
> gerade ernsthaft, ob es sinnvoll ist, so viel neues Wissen anzueignen,
> wo man noch nicht mal weiß, wie weit man genau in die Materie (und das
> hier ist wirklich ein komplettes komplexes und abgeschlossenes eigenes
> Universum) gehen muss, um die angeforderten Aufgaben zu erledigen und ob
> das überhaupt was bringt...

Dann lass es doch jemand anderen machen wenn Du denkst daß das nicht zu 
Deinen Aufgaben gehört.

von Harry L. (mysth)


Lesenswert?

Jandro schrieb:
> ich habe mit Sicherheit keine niedrige Frustrationsgrenze, ich habe mich
> in meinem Studium richtig reingehängt. Meine Stärken liegen allerdings
> eher in Bereich Mathematik und Hardware. Hier allerdings frage ich mich
> gerade ernsthaft, ob es sinnvoll ist, so viel neues Wissen anzueignen,
> wo man noch nicht mal weiß, wie weit man genau in die Materie (und das
> hier ist wirklich ein komplettes komplexes und abgeschlossenes eigenes
> Universum) gehen muss, um die angeforderten Aufgaben zu erledigen und ob
> das überhaupt was bringt...

* falsches Studienfach!
* falsche Einstellung!

Mach lieber ne klassische Ausbildung!

Studieren bedeutet, sich sein Wissen zu erarbeiten.

von pegel (Gast)


Lesenswert?

Definition Ingenieur (2019) -> bezeichnet eine Person, die eine Aufgabe 
unter Zuhilfenahme von Internetanleitungen in angemessener Zeit +25% 
teilweise löst.

Für einen Hobbyisten würde ich sagen, hänge einfach deine .ioc CubeMX 
Projektdatei an, dann sehen wir uns die mal an.

von Jandro (Gast)


Lesenswert?

die Ausbildung habe ich bereits abgeschlossen und meine ganzen Scheine 
habe ich in Regelstudienzeit und eigentlich auch mit einem recht 
souveränen Notenbild geholt... nun bekomme ich in dieser Projektarbeit 
aber dennoch erstmals eine Krise.. und zwar richtig.

von Jandro (Gast)


Lesenswert?

Das Passwort wäre noch ganz nett für das Testprojekt auf der Cloud

von Harry L. (mysth)


Lesenswert?

Jandro schrieb:
> nun bekomme ich in dieser Projektarbeit
> aber dennoch erstmals eine Krise.. und zwar richtig.

Das wundert mich nicht.
Du hast bisher keinen einzigen Tip, den du hier bekommen hast umgesetzt.

Statt dessen nutzt du das hier, um dich auszukotzen.

Das Beispielprojekt von mir hast du auch nicht ausprobiert - sonst wärst 
du nämlich bereits einen Schritt weiter, und hättest den Fehler 
eindeutig auf SW4STM32 oder deine CubeMX-Config eingrenzen können.

Systematisches Vorgehen geht anders...

Ich bin an dem Punkt raus....sinnlos.

von pegel (Gast)


Lesenswert?

Ich habe kein Windows, deshalb die Frage:
hast du AC6 und auch CubeMX in die vorgeschlagenen Verzeichnisse 
installiert?

Andernfalls könnte es zu Pfadproblemen kommen.

von Harry L. (mysth)


Lesenswert?

Jandro schrieb:
> Das Passwort wäre noch ganz nett für das Testprojekt auf der Cloud

Oops...sorry, hatte ich übersehen.
Jetzt geht das.

von Jandro (Gast)


Lesenswert?

und warum soll das E-Technik-Studium bei meinen Stärken Mathematik und 
Hardware denn das falsche Studienfach sein? Ich studiere doch keine 
Informatik, wobei mir natürlich klar ist, dass die Software heute einen 
höheren Stellenwert einnimmt... dennoch sind die Elektroings ja primär 
immer noch für die Hardware zuständig, oder nicht?

von Bernd K. (prof7bit)


Lesenswert?

Generation IDE.

Lässt die Fachkräfte alter Schule wie mächtige Zauberer mit 
übernatürlichen Fähigkeiten erscheinen die mit einer flüchtigen 
Handbewegung Blitz und Donner kontrollieren. Mir solls recht sein.

von Jandro (Gast)


Lesenswert?

also, ich habe jetzt versucht dein Beispielprojekt zu komoilieren. Auch 
dort kommt es zu der gleichen Fehlermeldung. Also liegt es nicht an der 
Konfiguration in CubeMX.
Also wohl doch irgendwo im Dschungel der Workbench, durch die ich mich 
erst mal richtig durchkämpfen muss. Ich weißbisher noch zu wenig über 
die ganzen Vorgänge, die darin stattfinden

von pegel (Gast)


Lesenswert?

siehe meine Frage von 15:24

von Jandro (Gast)


Lesenswert?

ja, ich habe an der Angabe der Installationsverzeichnisse nichts 
geändert und sie sind auch beide dort installiert

von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Lesenswert?

Jandro schrieb:
> und warum soll das E-Technik-Studium bei meinen Stärken Mathematik und
> Hardware denn das falsche Studienfach sein? Ich studiere doch keine
> Informatik, wobei mir natürlich klar ist, dass die Software heute einen
> höheren Stellenwert einnimmt... dennoch sind die Elektroings ja primär
> immer noch für die Hardware zuständig, oder nicht?

Ein Großteil aller heutigen elektronischen Schaltungen enthält 
mindestens einen Microcontroller. Und zumindest die Grundfunktionen 
sollte JEDER Hardwareentwicklung programmieren können, um die Hardware 
überhaupt in Betrieb nehmen zu können. Wenn Du im Berufsleben bei jeder 
Kleinigkeit rufst: "Mimimi, da muss mir jemand helfen!", dann wirst Du 
völlig zu recht ausgezählt und entsorgt. So einfach ist das.

Du scheiterst auf Grund Deiner Unselbstständigkeit aber nicht erst an 
der Programmierung, sondern bei viel, viel grundlegenderen Themen. Und 
da helfen Dir Deine gute Studiumsnoten gar nichts.

Aber offenbar mangelt es Dir auch am Textverständnis. Wo sind denn nun 
die Suchpfadinformationen zu Deinem GCC?

von pegel (Gast)


Lesenswert?

In früheren Versionen kam es zu Problemen wenn ac6 im Projektnamen 
vorkam, weiss nicht ob das noch so ist.

Steht im geschwärzten Teil ac6?

von Bernd K. (prof7bit)


Lesenswert?

Jandro schrieb:
> Ich weißbisher noch zu wenig über
> die ganzen Vorgänge, die darin stattfinden

Dann wird es jetzt Zeit alle Termine für die nächsten paar Wochen 
abzusagen und mal ein C-Tutorial von Anfang bis Ende durchzuarbeiten, 
eins von der Sorte bei denen man am Anfang Compiler und/oder Linker noch 
von Hand an der Kommandozeile aufruft und sich mal damit vertraut macht 
was für Vorgänge beim Übersetzen eines C-Programms stattzufinden haben 
und wann und in welcher Reihenfolge dies geschieht und was das für das 
Verständnis der Sprache selbst, ihrer Struktur und ihren Eigenarten für 
Auswirkungen hat.

IDE kommt erst ganz zum Schluß, dann wenn man weiß welche 
Arbeitsschritte die IDE zu leisten hat und warum die stattfinden.

Aber ich fürchte es ist bereits zu spät und der eingeschlagene Kurs soll 
fortgesetzt werden, auch wenn keiner weiß wie man das Schiff steuert. 
Eisberg voraus!

: Bearbeitet durch User
von pegel (Gast)


Lesenswert?

Neben ac6 sind auch Leerzeichen im Projektpfad ein beliebtes Problem.

von Robert S. (robert_s68)


Lesenswert?

Jandro schrieb:
> arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -mfloat-abi=hard
> -mfpu=fpv4-sp-d16 '-D__weak=__attribute__((weak))'
> '-D__packed=__attribute__((packed))' -DUSE_HAL_DRIVER -DSTM32F407xx
> -I"C:/Users/**/Desktop/Testprojekte/Blink_LED/Inc"
> -I"C:/Users/**/Desktop/Testprojekte/Blink_LED/Drivers/STM32F4xx_HAL_Driv
> er/Inc"
> -I"C:/Users/**/Desktop/Testprojekte/Blink_LED/Drivers/STM32F4xx_HAL_Driv
> er/Inc/Legacy"
> -I"C:/Users/**/Desktop/Testprojekte/Blink_LED/Drivers/CMSIS/Device/ST/ST
> M32F4xx/Include"
> -I"C:/Users/**/Desktop/Testprojekte/Blink_LED/Drivers/CMSIS/Include"
> -Og -g3 -Wall -fmessage-length=0 -ffunction-sections -c
> -fmessage-length=0 -MMD -MP -MF"Src/main.d" -MT"Src/main.o" -o
> "Src/main.o" "../Src/main.c"

Such die Projekteinstellungen durch, suche nach C-Standard, Stelle dort 
auf C99. Im (zitierten) Compiler-Aufruf muss dann -std=c99 auftauchen.

von Jandro (Gast)


Lesenswert?

Hier in diesem Forum wird mir verkauft, dass jeder Ingenieur "von Werk 
aus" einen Microcontroller programmieren muss. Wenn dem so ist, warum 
wurden dann die Controller geschweige denn deren Programmierung im Laufe 
meines ganzen Studiums (und ich habe bereits alle Prüfungen absolviert) 
noch nie ansatzweise thematisiert? Ich habe im 2. Semester 
Grundkenntnisse in C++ erworben, des weiteren kenne ich mich 
mittlerweile sehr gut mit MatLab und Simulink aus, was ich besonders für 
regelungstechnische Anwendungen verwendet habe. Zu meinem Schwerpunkt 
gehört aber nicht nur die Regelungs-sondern auch die Messtechnik, somit 
wollte ich zumindest ein vorzeigbares Projekt in meinem Studium haben, 
das sich auch auf dieses Gebiet bezieht.
Und da bin ich nun hier und brauche diese Programmierung sekundär für 
meine Sensorauswertung, den (eigentlich größeren) physikalischen Teil 
des Projektes habe ich bereits erledigt. Um so mehr frustet mich das 
ganze gerade sehr... ich habe leider gar nicht die Zeit, mich zu sehr 
mit den Grundlagen hinter der IDE zu beschäftigen...

von Jandro (Gast)


Lesenswert?

Hier in diesem Forum wird mir verkauft, dass jeder Ingenieur "von Werk 
aus" einen Microcontroller programmieren können muss. Wenn dem so ist, 
warum wurden dann die Controller geschweige denn deren Programmierung im 
Laufe meines ganzen Studiums (und ich habe bereits alle Prüfungen 
absolviert) noch nie ansatzweise thematisiert? Ich habe im 2. Semester 
Grundkenntnisse in C++ erworben, des weiteren kenne ich mich 
mittlerweile sehr gut mit MatLab und Simulink aus, was ich besonders für 
regelungstechnische Anwendungen verwendet habe. Zu meinem Schwerpunkt 
gehört aber nicht nur die Regelungs-sondern auch die Messtechnik, somit 
wollte ich zumindest ein vorzeigbares Projekt in meinem Studium haben, 
das sich auch auf dieses Gebiet bezieht.
Und da bin ich nun hier und brauche diese Programmierung sekundär für 
meine Sensorauswertung, den (eigentlich größeren) physikalischen Teil 
des Projektes habe ich bereits erledigt. Um so mehr frustet mich das 
ganze gerade sehr... ich habe leider gar nicht die Zeit, mich zu sehr 
mit den Grundlagen hinter der IDE zu beschäftigen...

von pegel (Gast)


Lesenswert?

Schön viel Text.

Hast du inzwischen die Pfade kontrolliert?

Der einfachste Fall:

-lege direkt einen Ordner c:\workspace an
-wähle diesen in AC6 als workspace aus
-erstelle ein Minimal Projekt mit AC6
-compiliere dieses
-berichte

von Bernd N. (_bn_)


Lesenswert?

Versuchs mal hiermit https://www.embitz.org/

von pegel (Gast)


Lesenswert?

@  Bernd N.

Gute Idee!
Irgend ein Glücksklick wird schon passen. ;)

Macht mal, ich bin weg.

von Jandro (Gast)


Lesenswert?

ich habe jetzt alles in einen Ordner workspace auf c gelegt und es geht 
immer noch nicht....

von Bernd W. (Gast)


Lesenswert?

Wofür steht MHV?


[pre]
- AVR GCC ATmel (MHV windows toolchain detection)
[/pre


https://www.embitz.org/feature-list/]

von Markus M. (adrock)


Lesenswert?

EmBitz kann man wohl als tot ansehen.

von Bernd N. (_bn_)


Lesenswert?

>> EmBitz kann man wohl als tot ansehen.
Für das was er machen will funktioniert es. Die IDE ist einfach und 
funktioniert out of the box.

von Lukas (Gast)


Lesenswert?

Lass dich nicht ärgern, jeder fängt mal an..

Normalerweise sollte das auch out of the box laufen.
Also entweder fehlt dir ein Teil der Installation (z.B. newlib..) oder 
der gcc ist nicht korrekt auf deine Umgebung angepasst

von Bernd W. (Gast)


Lesenswert?

> Wofür steht MHV?

MHV == MakeHackVoid

von Mitmischer (Gast)


Lesenswert?

Bernd N. schrieb:
> Für das was er machen will funktioniert es. Die IDE ist einfach und
> funktioniert out of the box.

Yeah!

Und gegenüber den lahmen Java-Tools ist das Ding affengeil schnell.

Nur beim CubeMX und HAL fangen für den Anfänger die Probleme
gleich wieder an.

Wäre aber ein Argument nicht mit HAL sondern mit SPL anzufangen.

von Stefan F. (Gast)


Lesenswert?

Jandro schrieb:
> also auf dem Rechner ist unter dem angegebenen Pfad eine stdint.h. und
> eine stdint-gcc.h. -Datei
> Habe die stdint.h.-Datei mit Visual Studio geöffnet

Dass heisst, die Datei

c:\ac6\systemworkbench\plugins\fr.ac6.mcu.externaltools.arm-none.win32_1
.16.0.201807130628\tools\compiler\lib\gcc\arm-none-eabi\7.2.1\include\st
dint.h

existiert und kann geöffnet werden. In der reklamierten Zeile steht:

#include_next <stdint.h>

Und diese Datei findet er nicht. Die Frage sollte daher lauten, welche 
Datei sucht er dort eigentlich? Das steht in der Fehlermeldung leider 
nicht konkret drin (der Pfad fehlt).

Aber nach "include_next <stdint.h>" kann man googeln, und dann findet 
man zum Beispiel diesen Beitrag, der sehr ähnlich aussieht:
https://stackoverflow.com/questions/23973971/no-stdint-h-file-on-debian

Die Lösung dort war: "I got past this problem by installing 
libnewlib-arm-none-eabi: sudo apt-get install libnewlib-arm-none-eabi". 
Auch andere ähnliche Problemberichte enden stets damit, die newlib 
Library zu installieren.

Das hat der Jim in Beitrag "Re: Erstes Programmieren von STM 32, irgendwas mache ich falsch." 
bereits angesprochen. Ich denke, du solltest in diese Richtung weiter 
forschen.

Du könntest auch versuchen, allen Benutzern Leserechte auf das 
Verzeichnis c:\ac6 incl. Unterverzeichnissen zu geben.

von Jandro (Gast)


Lesenswert?

Danke, ich habe es installiert, aber das Problem besteht weiterhin. Wie 
soll es auch anders sein

von c-hater (Gast)


Lesenswert?

Jandro schrieb:

> Danke, ich habe es installiert, aber das Problem besteht weiterhin. Wie
> soll es auch anders sein

Tja, lebe damit: Dir ist es nicht gegeben, Programmierer zu werden. 
Einen Programmierer, der es nicht einmal schafft, ein IDE zum Laufen zu 
bringen, den braucht echt niemand.

von Stefan F. (Gast)


Lesenswert?

Jandro schrieb:
> Danke, ich habe es installiert, aber das Problem besteht weiterhin. Wie
> soll es auch anders sein

Ich würde vorschlagen, dass du mal ganz genau beschreibst, was du wie 
installiert hat. Zeige uns auch alle deine Umgebungsvariablen. Und lade 
hier ein minimales Projekt hoch, mit dem dann das Problem 
nachvollziehbar ist.

von Jandro (Gast)


Lesenswert?

Ich bin E-Techniker und kein Programmierer

von Jandro (Gast)


Lesenswert?

da fragt man hier in einem Forum um Hilfe für ein ERST-Projekt und wird 
auf übelste Weise runtergemacht. Es ist mir klar, dass das für euch 
einfach ist und vielleicht verdient ihr damit eure Brötchen, aber für 
mich ist das das erste Mal und ihr könnt nicht von mir verlangen, dass 
ich das alles von Anfang an drauf habe

von Stefan F. (Gast)


Lesenswert?

Du solltest Dir ein dickeres Fell zulegen. Niemand macht dich übel 
herunter. Anstatt Dich auf solche Gefühle zu konzentrieren, kümmere dich 
lieber auf deine Aufgabe und beantworte meinen vorherigen Beitrag.

Ich bin durchaus bereit, extra für Dich eine frische Windows 
Installation zu machen um Dir zu helfen. Aber damit das Sinn ergibt, 
brauche ich Infos von Dir.

von Jandro (Gast)


Angehängte Dateien:

Lesenswert?

Also ich generiere für den Test mittlerweile nur noch über CubeMX einen 
Code, der einen GPIO_Output konfiguriert, ich füge noch nicht mal 
eigenen Benutzercode hinzu.

Das Projekt wird von CubeMX mit Toolchain "SW4STM32" angelegt und beim 
Importieren wird das Projekt auch sofort erkannt.
Nun mache ich in der Workbench nichts anderes, als für übertragene 
Projekt die Binärdatei erstellen zu lassen..dabei ändere ich nichts an 
den Einstellungen in der Workbench.

von Joachim B. (jar)


Lesenswert?

Jandro schrieb:
> Ich bin E-Techniker und kein Programmierer

sorry das finde ich etwas billig, ich glaube die meisten User im 
wordclock Thread sind keine Programmierer
Beitrag "WordClock mit WS2812"
https://www.mikrocontroller.net/articles/WordClock_mit_WS2812

und trotzdem schaffen es offensichtlich etliche, auch Nichtstudierte.

vielleicht kann Frank. M. Moderator oder jemand aus dem Thread dir 
helfen für die ersten Schritte mit dem STM32?

von Jandro (Gast)


Lesenswert?

naja aber es wird ja so getan, als ob ich das bei meiner Qualifikation 
zwingend können muss, aber dem ist nicht so. Wie gesagt wurde es nicht 
ansatzweise gelehrt, nur grundlegende Programmierkenntnisse.. aber es 
ist ja jetzt auch völlig egal. Ich muss das jetzt irgendwie 
draufbekommen und fürchte, es wird ein hartes Wochenende ;)

von J. T. (chaoskind)


Lesenswert?

https://www.youtube.com/watch?v=u_TVAudWabI&t=66s

Evtl hilft dir das weiter, es geht zwar nicht direkt um deine Hardware, 
sondern um das F7-Discoboard, aber bevor ich mir das angesehen hab, 
hatte ich auch immer ewige Probleme mit irgendwelchen includes und 
hinundher-Verweisen.

Der macht da einige Einstellungen in der Workbench, und nachdem ich die 
auch gemacht hatte, ging es dann plötzlich. Ich war auch schon am 
Verzweifeln ;-)

Und nach und nach kristallisiert sich langsam so etwas wie eine Ahnung 
von Sinn heraus, was man mit den ganzen Einstellungen so macht.

von Jandro (Gast)


Lesenswert?

vielen Danl für deine Antwort. Das werde ich mir auf jeden Fall ansehen

von J. T. (chaoskind)


Lesenswert?

Sorry das ist das falsche Video, da macht er mit Keil rum. Ich schau 
mal, ob ich noch das Video für die Workbench finde...

von J. T. (chaoskind)


Lesenswert?

https://www.youtube.com/watch?v=Mkrrt_EgjHs

So gefunden. Das hier ist es. Der hat sogar irgendwelche hilfreichen 
Files zum Download verlinkt. Davon hab ich dann aber am Ende nur die 
.txt die er auch im Video einblendet benutzt. Und wie gesagt es ist 
nicht direkt für deine Hardware, aber ich hoffe dass es dir weiterhilft.

von DL1HWO (Gast)


Lesenswert?

"Ich bin E-Techniker und kein Programmierer!"

Dann programmiere Doch nicht! Wenn ich kein Pilot bin, setzte ich mich 
auch nicht hinter das Steuer eines Flugzeugs. Will ich es doch, dann 
muss ich mich mal auf den Hosenboden setzen und die Thematik von Grund 
auf aufarbeiten. Dein Lernprozess geht über das Studium hinaus, das 
ganze Leben lang oder denkt die Generation von heute das nach dem 
Studium nichts mehr kommt und Sie die Größten in Ihrem Fachbereich sind?

"Nichts von dem was ich in meinem E-Technik-Studium gelernt habe, kann 
ich hier anwenden, ich arbeite zum ersten Mal mit einem Microcontroller. 
"

Welche Uni/FH war das denn? Nur damit man hier mal vor einem Studium an 
dieser Lokalität warnen kann! Ich habe noch keine Uni/FH gesehen, wo im 
E-Technikstudium nicht mindestens einmal eine Signalverarbeitung auf 
einem DSP oder Microcontroller durchgekaut wurde. In Theorie und Praxis!

Du hast doch oben erwähnt das das Problem bereits einmal durch einen 
Hiwi(?) o.ä. bereits gelöst wurde. Was hindert Dich daran bezüglich des 
Problems dort nochmal vorzusprechen und sich Notizen zu Problemlösung zu 
machen?

Mit welcher IDE bist Du vertraut? Du hast doch geschrieben das du
mit der Arduino-Welt klargekommen bist. Welche Werkzeuge hast Du da 
benutzt? STM32 gibt es auch in der Arduino-Welt. Reichen die Boards 
nicht für die gestellte Aufgabe aus?

Andernfalls, was zwingt Dich die AC6 einzusetzen? Gibt es nicht die 
Möglichkeit auf eine andere IDE zu wechseln die Dir vielleicht 
"sympathischer" ist.

Ich will Dich hier nicht angreifen, sondern Dir helfen. Möglicherweise 
gibt es für Dich andere Wege zum Ziel. Vielleicht finden wir diese.

von Nop (Gast)


Lesenswert?

Jandro schrieb:

> warum wurden dann die Controller geschweige denn deren Programmierung im
> Laufe meines ganzen Studiums (und ich habe bereits alle Prüfungen
> absolviert) noch nie ansatzweise thematisiert?

Weil ein Studium keine Schule ist! Dem Inschenör ist nichts zu schwör, 
weil er gelernt hat, sich selbständig in neue Problembereiche 
einzuarbeiten. Embedded sind die SW-Entwickler erheblichenteils 
E-Techniker, die schwerpunktmäßig keine Programmierung im Studium 
hatten.

Du wirst Dich nach dem Studium noch ganz schön umgucken, denn 
Regelungstechnik geht in der Realität nicht mit Matlab, sondern mit 
Mikrocontrollern. In Software, weil man das viel flexibler anpassen 
kann.

von Jandro (Gast)


Lesenswert?

Danke für die aufmunternden Worte, ich stelle hier Fragen zu einem für 
mich komplett neuem Gebiet und bekomme hier Prognosen gestellt, dass aus 
mir nichts wird... ich habe dieses Forum hier empfohlen bekommen. Ich 
fürchte, ich werde es nicht tun können

von Jandro (Gast)


Lesenswert?

Wenn die Arduino IDE (ich hatte bereits bei der Recherche kurz darüber 
gelesen) wirklich geeignet ist, wäre das wirklich super. Ich brauche für 
meine Anwendung die "Encoder"-Funktion eines Timers des Boards. Und zwar 
müssen Inkremental-Signale eines Sensors hochgezählt und ausgewertet 
werden. Das wären maximal 120.000 Signale pro Sekunde, die erfasst 
werden müssen.

von STK500-Besitzer (Gast)


Lesenswert?

Bernd N. schrieb:
> Die IDE ist einfach und funktioniert out of the box.

truestudio auch.

Jandro schrieb:
> Ich
> fürchte, ich werde es nicht tun können

Son Quatsch. Du musst doch nur die richtige stdint.h finden und ins 
richtige Verzeichnis kopieren.

von bastler (Gast)


Lesenswert?

Jandro schrieb:
> Also ich generiere für den Test mittlerweile nur noch über CubeMX
> einen
> Code, der einen GPIO_Output konfiguriert, ich füge noch nicht mal
> eigenen Benutzercode hinzu.
>
> Das Projekt wird von CubeMX mit Toolchain "SW4STM32" angelegt und beim
> Importieren wird das Projekt auch sofort erkannt.
> Nun mache ich in der Workbench nichts anderes, als für übertragene
> Projekt die Binärdatei erstellen zu lassen..dabei ändere ich nichts an
> den Einstellungen in der Workbench.


Ich habe den Thread jetzt nicht vollständig gelesen. Ich bin auch kein 
Programmierer, aber mich wundert das nicht, dass das nicht funktioniert, 
wenn du als Anfänger gleich Eclipse verwendest...
Da hatte ich schon anfangs nur das Problem rein C zu programmieren. Mit 
den Einstellungen und dem Kram gleich anfangs als Anfänger. Naja..
Das ist ein IDE und Benutzerproblem und nicht STM32.

Ich wette, wenn du Keil uVision 5 herunterlädst, die Datei im CubeMx 
entsprechend auf KeilV5 umstellst, funktioniert deine LED auf Anhieb.
Das schwöre ich dir. Das bekommt auch meine Oma hin.
Und sonst würde ich einfach mal wieder zu dem Mitarbeiter gehen anstatt 
hier wochenlang zu diskutieren.

Und vergiss beim nächsten Mal nicht einen Kugelschreiben mitzunehmen.
Wenn man sich Dinge schon nicht merken kann, notiert man es sich 
wenigstens. Vor allem im Studim.

von bastler (Gast)


Lesenswert?

c-hater schrieb:
> Jandro schrieb:
>
>> Danke, ich habe es installiert, aber das Problem besteht weiterhin. Wie
>> soll es auch anders sein
>
> Tja, lebe damit: Dir ist es nicht gegeben, Programmierer zu werden.
> Einen Programmierer, der es nicht einmal schafft, ein IDE zum Laufen zu
> bringen, den braucht echt niemand.


hahaha
:D du bist hart

von Stefan F. (Gast)


Lesenswert?

Stefanus F. schrieb:
> Ich bin durchaus bereit, extra für Dich eine frische Windows
> Installation zu machen um Dir zu helfen. Aber damit das Sinn ergibt,
> brauche ich Infos von Dir.

Darauf hast du (jandro) mit einem Screenshot geantwortet. Ist das dein 
Ernst? Soll ich jetzt nur auf Basis des Screenshots eine komplette 
Windows Installation samt IDE und deinem Quelltext vornehmen, um dein 
Problem nachzuvollziehen?

Dann mache ich garantiert mindestens 50 Sachen anders als du und dann 
wird es bei mir funktionieren.

Bei mir funktioniert das Zusammenspiel zwischen CubeMX und der System 
Workbench tadellos ohne manuelles Eingreifen. Ich kann Dir also mit 
Sicherheit bestätigen, dass die verwendete Software prinzipiell 
out-of-the-box funktioniert. Nur bei Dir nicht. Irgend etwas machst du 
anders und falsch.

Ich brauche Links zu sämtlichen Downloads mit exakt den Versionen, die 
du verwendet hast. Und ich brauche eine Auflistung jedes einzelnen 
Mausklicks bzw. Befehls. Meine Frage nach deinen Umgebungsvariablen hast 
du ausserdem ignoriert.

Dein Gejammer über mangelnde Hilfsbereitschaft ist unangemessen. Wir 
wollen Dir helfen, doch das hängt von Deiner Mitarbeit ab. Mit dem 
groben Tonfall hier musst du klar kommen, das wird sich in absehbarer 
Zeit nicht ändern Was die Berufswahl angeht: Programmierer lernen ihr 
ganzes Leben lang weiter. Es gibt ständig neue Bauteile und 
Arbeitsmittel. Es spielt keine Rolle, wie viel du dazu im Studium 
gelernt hast - im Beruf wirst du mit 99% Wahrscheinlichkeit sowieso mit 
anderen Mitteln arbeiten müssen, als du im Studium gelernt hast.

Also, hör auf zu jammern und beantworte meine Fragen, damit Dir geholfen 
werden kann. Oder suche Dir eine andere Ausbildung, von der du nach 
Abschluss den Rest des Lebens zehren kannst. Zum Beispiel Friseur oder 
Schreiner.

von Christopher C. (trihexagon)


Lesenswert?

Bevor du mit SystemWorkbench verzweifelst und aufgibst, benutze lieber 
TrueStudio. Die IDE ist ausgereifter und funktioniert meiner Erfahrung 
nach OutOfTheBox. Waren mal selbstständig und wurden dann knapp vor 
einem Jahr von ST aufgekauft. Ist also bestens mit dem ST Ökosystem 
verzahnt.

https://atollic.com/truestudio/

von Stefan F. (Gast)


Lesenswert?

Christopher C. schrieb:
> Bevor du mit SystemWorkbench verzweifelst und aufgibst, benutze lieber
> TrueStudio. Die IDE ist ausgereifter und funktioniert meiner Erfahrung
> nach OutOfTheBox.

Die IDE ist in beiden Fällen die gleiche. Beide funkti0onieren 
OutOfTheBox.

Für mich bietet die System Workbench den Vorteil, Projekte ohne 
"Firmware" (=HAL) anlegen zu können.

von Jandro (Gast)


Lesenswert?

Also ich benutze nun tatsächlich Atollic und damit klappt alles 
reibungslos, ich weiß nicht was genau los war. Aber wenigstens kann ich 
jetzt meine Aufgaben ohne Schwierigkeiten erledigen.

Stefanus F. schrieb:
> Ich bin durchaus bereit, extra für Dich eine frische Windows
> Installation zu machen um Dir zu helfen.

Ich möchte nicht, dass sich jemand so viel Mühe geben muss. Aber vielen 
Dank für das Angebot. Nun hat es scih aber wie es aussieht erledigt

von STK500-Besitzer (Gast)


Lesenswert?

Jandro schrieb:
> Also ich benutze nun tatsächlich Atollic und damit klappt alles
> reibungslos, ich weiß nicht was genau los war. Aber wenigstens kann ich
> jetzt meine Aufgaben ohne Schwierigkeiten erledigen.

Ich habe mir spasseshalber mal die Workbench installiert, und versucht, 
ein nacktes Projekt zu compilieren: Fehlermeldung...
Liegt also nicht (nur) an dir.
Seitdem STM Atollic uebernommen hat, wirde die Workbench wohl nur nocht 
von Leuten benutzt, die das Ding schon verwendet (und angepasst) haben.
Fuer Anfaenger ist das Truestudio wohl eher erste Wayhl.

von c-hater (Gast)


Lesenswert?

Nop schrieb:

> Embedded sind die SW-Entwickler erheblichenteils
> E-Techniker, die schwerpunktmäßig keine Programmierung im Studium
> hatten.

Oder die "umgekehrte" Richtung: Informatiker, die nicht schwerpunktmäßig 
E-Technik hatten. ;o)

µC-Programmierung ist nunmal an der Grenze zweier Fachgebiete 
angesiedelt. Aber: bei jedem der beiden Studiengänge kann man genug 
mitnehmen, um sich genau auf dieser Grenzlinie mit überschaubarem 
Aufwand in den angrenzenden Bereich einzuarbeiten.

Man muss es bloss wollen und man darf nicht stinkendfaul sein. Das ist 
eigentlich schon alles.

Natürlich muss man darüber hinaus bereit sein, lebenslang 
selbstständig weiter zu lernen. Das ist, was jeder Ingenieur als 
wesentliches Rüstzeug aus dem Studium mitgenommen haben sollte...

Blöd für Faule und Lernverweiger. Wenn man keinen Bock auf Lernen hat, 
sollte man lieber BWL oder sowas machen. Nur da kann man auch dann 
relativ viel Geld verdienen, wenn man von nix eine Ahnung hat und nur 
Scheisse baut.

von Stefan F. (Gast)


Angehängte Dateien:

Lesenswert?

> Ich habe mir spasseshalber mal die Workbench installiert, und versucht,
> ein nacktes Projekt zu compilieren: Fehlermeldung...

Das geht ja auch nicht. Du musst schon mindestens eine main.c schreiben. 
Und dann geht das auch.

von Stefan F. (Gast)


Angehängte Dateien:

Lesenswert?

stdint.h geht auch

von STK500-Besitzer (Gast)


Lesenswert?

Stefanus F. schrieb:
> stdint.h geht auch

Man sollte das nicht nachts um halb zwei ausprobieren.

von Nop (Gast)


Lesenswert?

c-hater schrieb:

> Man muss es bloss wollen und man darf nicht stinkendfaul sein. Das ist
> eigentlich schon alles.

Ich hab in meiner Abschlußarbeit ein größeres Projekt gehabt, das 
letztlich in Assembler auf einem Evalboard zu implementieren war. Daß 
Assembler in keiner Vorlesung drangewesen war (nur C) und ich das vorher 
noch nicht gemacht hatte, ist mir als besonderes Hindernis nichtmal 
aufgefallen. Ich hielt es für völlig normal, daß man sich selbständig 
einarbeitet.

von Stefan F. (Gast)


Lesenswert?

Wobei mein Beispiel mit "int" blöd war, ich hätte einen Typ aus der 
stdint.h nehmen sollen, z.B. uint32_t. Geht damit auch.

von Jandro (Gast)


Lesenswert?

c-hater schrieb:
> Natürlich muss man darüber hinaus bereit sein, lebenslang
> selbstständig weiter zu lernen. Das ist, was jeder Ingenieur als
> wesentliches Rüstzeug aus dem Studium mitgenommen haben sollte...

Also ich bin in jedem Fall dafür bereit mich in meinem Beruf 
weiterzubilden. Mein Studium habe ich (vielleicht abgesehen von den 
letzten Wochen vor den Klausurenphasen) mit Spaß durchgezogen.
Hier in diesem Fall muss ich eben einen Kompromiss zwischen Umfang von 
neuem Wissen und der für das Projekt vorgesehenen Zeit finden. Es ist 
nicht so, dass ich hier unebegrenzt Zeit habe um mir das komplette 
Grundwissen von Mikrocontrollern anzueignen. Von daher muss ich abwägen 
ob es wirklich sinnvoll ist all das zu machen, was hier von einigen 
Usern als notwendig empfunden wird... das ist hier ein kleines Projekt 
für die Uni und kein Lebenswerk ;)

Beitrag #5738642 wurde von einem Moderator gelöscht.
von Stefan F. (Gast)


Lesenswert?

Für ein kleines Projekt ohne grossartige Einarbeitung eignet sich 
Arduino deutlich besser. Dann musst du aber ein anderes Board verwenden, 
dass "original" von Arduino unterstützt wird.

Denn die 3rd Party Cores (wie STM32Duino) haben reichlich Potential für 
unangenehme Überraschungen.

von c-hater (Gast)


Lesenswert?

Jandro schrieb:

> Von daher muss ich abwägen
> ob es wirklich sinnvoll ist all das zu machen, was hier von einigen
> Usern als notwendig empfunden wird...

Mit welcher Kompetenz willst du das Abwägen? Du hast doch ganz 
offensichtlich absolut keine Ahnung.

> das ist hier ein kleines Projekt
> für die Uni und kein Lebenswerk ;)

Du lernst nicht für das kleine Uni-Projekt, sondern für dich selber. Das 
genau ist die Erkenntnis, die dir noch fehlt, um wirklich erwachsen zu 
werden.

von Jandro (Gast)


Lesenswert?

Mit einem Arduino Nano habe ich das Projekt tatsächlich angefangen, aber 
leider kam er für die Aufgabe von seiner Abtastfrequenz und der 
Programmlaufzeit an seine Grenzen... es wäre leider keine zuverlässige 
Sensorauswertung geworden ;)

von Stefan F. (Gast)


Lesenswert?

Also wenn ein Arduino Nano wirklich überfordert ist, dann ist das kein 
kleines Projekt mehr, sondern eine Aufgabe für Profis oder Leute die 
Profi werden wollen.

Der Arduino Nano ist fast so Leistungsfähig wie die Dektop-Computer, mit 
denen ich gross geworden bin.

von Jandro (Gast)


Lesenswert?

Naja es ist ein Zähler. Ein Drehsensor liefert pro Umdrehung 4000 
Signalechsel, die zu erfassen sind... dabei muss das ganze für 30 
Umdrehungen pro Sekunde ausgelegt werden.
Wir haben es am Oszilloskop mit einem gesetzten HIGH-Output während des 
Schleifenablaufs überprüft. Das triviale Nutzerprogramm war einfach 
langsamer als 2 aufeinanderfolgende Flanken des Signals (zumindest ab 
einer gewissen Drehgeschwindigkeit).

von Dr. Sommer (Gast)


Lesenswert?

Die Input Capture Einheit des Timers sollte das problemlos schaffen. 
Zugegebenermaßen ist die entsprechende Einheit beim STM32 
leistungsfähiger. Bei beiden ist aber die Rechenleistung des Prozessors 
egal, das ist nur Sache der Peripherie.

von Theor (Gast)


Lesenswert?

@ Jandor

Vielleicht wäre es sinnvoll, wenn Du Dir andere Maßstäbe zu dem Thema 
anschaust.

Ich stelle mal in den Raum, - und das entspricht meiner Beobachtung -, 
dass ein Hardwerker im Embedded-Bereich grob zu wissen hat, wie ein 
Compiler, ein Linker und eine IDE arbeitet und auch sonstige 
Software-Werkzeuge, wie Tabellenkalkulation etcpp. Wo 
Installationsverzeichnisse sind und was darin enthalten ist. 
Entsprechende Dokumente über Compiler und IDE muss er lesen und 
verstehen können.

Die Kommandozeile sollte er bedienen können. Dateien suchen, Dateipfade 
überprüfen können. Da der PC ein Basiswerkzeug ist, sollte er auch 
dessen Grundfunktionen verstehen und verwenden können.

Das läuft darauf hinaus, zumindest für Prototypen Minimal-Programme 
erstellen zu können um etwa einfache Funktionstest durchzuführen.

Das ist vom Umfang her etwas deutlich anderes als Software zu 
entwickeln . DAS mag man vielleicht "Lebenswerk" nennen. Aber, wenn Du 
mir den Vergleich gestatten willst, Du weigerst Dich, einen PC zu 
bedienen, weil Du Hardware entwickelst.
Das wird kein Auftraggeber oder Arbeitgeber auf die Dauer hinnehmen und 
Dir einen PC-Bediener zur Seite stellen um eine Datei zu suchen.

von Stefan F. (Gast)


Lesenswert?

Jandro schrieb:
> Ein Drehsensor liefert pro Umdrehung 4000
> Signalechsel, die zu erfassen sind... dabei muss das ganze für 30
> Umdrehungen pro Sekunde ausgelegt werden.

Also 60 kHz.

> Das triviale Nutzerprogramm war einfach
> langsamer als 2 aufeinanderfolgende Flanken des Signals

Falscher Lösungsansatz, das macht man mit einem Counter.

Abgesehen davon würde ein Arduino Nano das auch mit der Polling Methode 
locker flockig schaffen:
1
uint32_t counter=0;
2
3
#define READ_SENSOR (PORTB & (1<<PB0))
4
5
for (;;) // forever
6
{
7
    while (!READ_SENSOR) {};
8
    counter++;
9
    while (READ_SENSOR) {};
10
}

Damit komme ich auf mehr als 1 MHz. Du musst etwas grob falsch gemacht 
haben.

von Jandro (Gast)


Lesenswert?

ich muss noch dazu sagen, dass ich beim Arduino noch eine 
"Encoder"-Library mit eingebunden habe. Der Drehsensor liefert nämlich 2 
Quadratur-Signale, die entsprechend zusammen ausgewertet werden müssen. 
Das STM-Board bietet diese "Encoder"- Funktion bereits für seine Timer 
unter "combined channels"

von bastler (Gast)


Lesenswert?

c-hater schrieb:
> Jandro schrieb:
>
> Von daher muss ich abwägen ob es wirklich sinnvoll ist all das zu
> machen, was hier von einigen Usern als notwendig empfunden wird...
>
> Mit welcher Kompetenz willst du das Abwägen? Du hast doch ganz
> offensichtlich absolut keine Ahnung.
>
> das ist hier ein kleines Projekt für die Uni und kein Lebenswerk ;)
>
> Du lernst nicht für das kleine Uni-Projekt, sondern für dich selber. Das
> genau ist die Erkenntnis, die dir noch fehlt, um wirklich erwachsen zu
> werden.

Du hast so recht, aber
wem erzählst du das?
er kapierts eh nicht...
und hat für alles eine Entschuldigung..

von Stefan F. (Gast)


Lesenswert?

Jandro schrieb:
> ich muss noch dazu sagen, dass ich beim Arduino noch eine
> "Encoder"-Library mit eingebunden habe

Damit fängt das Problem schon an. Solche Trivialitäten programmiert man 
vernünftigerweise selbst. Vermutlich hast du gar nicht versucht, 
herauszufinden, woran es genau scheitert, sondern einfach auf ein Pferd 
mit viel mehr Power gesetzt, richtig?

Beim STM32 wird Dir das gleiche Problem früher oder später erneut 
begegnen, das ist so sicher wie das "Amen" in der Kirche.

von Nop (Gast)


Lesenswert?

Jandro schrieb:

> nicht so, dass ich hier unebegrenzt Zeit habe um mir das komplette
> Grundwissen von Mikrocontrollern anzueignen.

Von einem Entwickler für embedded-SW würde man sogar erwarten, daß er 
den Controller ohne CubeMX und ohne HAL programmieren kann, also nach 
Datenblatt.

Daß Du hier über die vereinfachende Abkürzung mit CubeMX und HAL 
rangehst, IST bereits im Hinblick darauf, daß das nicht Dein Kerngebiet 
ist.

Woran Du gestrauchelt bist, hat außerdem gar nichts mit Mikrocontrollern 
zu tun, sondern damit, daß Du schon mit Dateipfaden auf einem PC 
überfordert warst.

Guck Dir Dein Eingangsposting doch mal an - was muß ich wo klicken? Wenn 
Du diese Mentalität nicht sehr schnell ablegst, wirst Du nach dem 
Studium keine Probezeit überstehen.

von Stefan F. (Gast)


Lesenswert?

> #define READ_SENSOR (PORTB & (1<<PB0))

Tschuldigung, es muss PINB heissen.

von Jandro (Gast)


Lesenswert?

Das liegt nicht in meiner Hand, der Boardwechsel und auch die Messung 
wurde vom Betreuer des Projektes veranlasst. Ich MUSS nun damit 
arbeiten.
Und das ist jetzt auch der Punkt, an dem ich hier Schluss mache. Das 
ursprüngliche Problem dieses Threads hat sich ja mittlerweile erledigt

von Stefan F. (Gast)


Lesenswert?

Jandro schrieb:
> Das liegt nicht in meiner Hand, der Boardwechsel und auch die Messung
> wurde vom Betreuer des Projektes veranlasst. Ich MUSS nun damit
> arbeiten.

Macht nichts, passt zum täglichen Leben eines Entwicklers. Man muss fast 
immer mit dem arbeiten, was einem vorgesetzt wird.

von STK500-Besitzer (Gast)


Lesenswert?

Stefanus F. schrieb:
> Solche Trivialitäten programmiert man vernünftigerweise selbst.

Konntest du sowas als Anfaenger schon beurteilen byw. bewerten?
Fuer Leute, die schon Erfahrung haben, ist es trivial. Jemand, der 
gerade in das Thema einsteig und womoeglich noch externe "Berater" hat, 
ist das nicht so einfach.

von Nop (Gast)


Lesenswert?

Abgesehen davon - wenn Du Arduino nimmst, dann ist das als 
Referenzprojekt problematisch. Du sagst damit nämlich auch aus, daß Du 
von der SW-Seite nicht einmal Grundkenntnisse hast und Dich auch nicht 
dafür interessierst.

Wenn es das ist, was Du einem künftigen Arbeitgeber sagen willst, ist 
das natürlich OK.

von Stefan F. (Gast)


Lesenswert?

STK500-Besitzer schrieb:
> Konntest du sowas als Anfaenger schon beurteilen byw. bewerten?

Nein, natürlich nicht. Deswegen weise ich den Anfänger darauf hin.

von Jandro (Gast)


Lesenswert?

ist wirklich okay jetzt, es gibt bei uns an der Uni ein Fachgebiet für 
intelligente eingebettete Systeme, die Studenten dort schlagen einen 
anderen Weg als wir MSR-ler ein (Mess-Steuer-Regelungstechnik). Die 
Möglichkeiten in meinem Schwerpunkt (und es sind einige) habe ich schon 
alle aufgezeigt bekommen...

Im Übrigen kenne ich keinen Ingenieur im Freundeskreis, dessen 
Arbeitgeber sich für seine Projektarbeit im Studium interessiert hat. 
Wissenschaftlich gesehen ist das sowieso kalter Kaffee

von Nop (Gast)


Lesenswert?

Jandro schrieb:

> Im Übrigen kenne ich keinen Ingenieur im Freundeskreis, dessen
> Arbeitgeber sich für seine Projektarbeit im Studium interessiert hat.

Ich hab meinen ersten Job genau wegen des Assemblerprojektes aus dem 
Studium bekommen - die Firma brauchte da Verstärkung, wollte sich aber 
finanziell keinen weiteren alten Hasen leisten. Ein Frischling mit 
Assemblerkenntnissen war für die Firma ein Volltreffer. Ach ja - ET, 
nicht Informatik.

von S. R. (svenska)


Lesenswert?

Jandro schrieb:
> Das liegt nicht in meiner Hand, der Boardwechsel und auch die Messung
> wurde vom Betreuer des Projektes veranlasst.

Meiner Erfahrung nach:
Weil du gesagt hast, es ginge nicht weil zu langsam.

von STK500-Besitzer (Gast)


Lesenswert?

Jandro schrieb:
> als wir MSR-ler ein (Mess-Steuer-Regelungstechnik). Die
> Möglichkeiten in meinem Schwerpunkt (und es sind einige) habe ich schon
> alle aufgezeigt bekommen...
Scheuklappen? MSR ist relativ abstrakt. Hast schon schon mal einen 
digitalen Regler aufgebaut&programmiert?

> Im Übrigen kenne ich keinen Ingenieur im Freundeskreis, dessen
> Arbeitgeber sich für seine Projektarbeit im Studium interessiert hat.
> Wissenschaftlich gesehen ist das sowieso kalter Kaffee
Demnach hast einen sehr kleinen Freundeskreis bzw. wenig Ingenieure 
dabei.
Studium kann fast jeder, interessant wird man fuer Arbeitgebern, wenn 
auch mal ueber den Tellerrand geguckt hat. Und begeistert von solchen 
Studienarbeiten erzaehlen kann. Wenn man sonst noch nichts (ausse gute 
Noten) vorweisen kann.

von bastler (Gast)


Lesenswert?

unglaublich, was für ein Desinteresse...

von Nop (Gast)


Lesenswert?

STK500-Besitzer schrieb:
> Wenn man sonst noch nichts (ausse gute Noten) vorweisen kann.

Gute Noten sind ja nicht schlecht (d'oh), aber sie sagen ja nur aus, daß 
man bekannte Grundlagen auf künstlich gestellte Situationen relativ 
theoretisch anwenden kann. Sie sagen wenig über die Kompetenz zur 
Problemlösung aus, was aber genau das ist, was in der Industrie gefragt 
ist.

Früher(tm) war es ja noch üblich, daß man sich mal in die Uni-Bibliothek 
gewagt hat, um eigenständig für Probleme außerhalb von Schema F zu 
recherchieren. Das dürfte wohl größtenteils dem Bologna-Prozeß zum Opfer 
gefallen sein.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.