STM32 Discovery Entwicklungsumgebung

OP #2931524
Lesenswert?

Hallo,

ich habe schon etwas länger ein STM32 Discovery Board, hatte aber keine 
Zeit mich damit zu beschäftigen. Jetzt möchte ich gerne ein bisschen 
damit arbeiten. Zur Zeit verwende ich für meine AVR´s Atmel Studio 6 und 
so etwas ähnliches suche ich auch für die STM32´s. CooCox habe ich schon 
gefunden, wollte aber fragen ob es noch bessere gibt.

Gruß
Felix
OP #2931749
Lesenswert?

1
#include "stm32f10x_conf.h"
2
 
3
int main(void)
4
{
5
  GPIO_InitTypeDef GPIO_InitStructure;
6
 
7
  SystemInit();
8
 
9
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
10
 
11
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
12
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;
13
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
14
  GPIO_Init(GPIOC, &GPIO_InitStructure);
15
 
16
  GPIO_WriteBit(GPIOC, GPIO_Pin_9, Bit_SET);
17
 
18
  while(1)
19
  {
20
  }
21
}
OP #2931774
Lesenswert?

Dieses Programm soll nur die LED anschalten.

Ich habe hier noch einen einfachen Code, dieser lässt sich aber nicht 
compilieren:
1
#include "stm32f10x.h"
2

3
int main(void)
4
{
5
do{
6
}while(1);
7
}

Fehlermeldung:
D:\Programme\Keil\ARM\Inc\ST\STM32F10x\stm32f10x.h(96): error:  #35: 
#error directive: "Please select first the target STM32F10x device used 
in your application (in stm32f10x.h file)"

Target not created

Gruß
Gast #2931793
Lesenswert?

Haperts am Englisch oder wo ist das Problem?

"Please select first the target STM32F10x device used
in your application (in stm32f10x.h file)"

Bitte wählen Sie zuerst das Ziel STM32F10x processor der in Ihrer 
Anwendung benutzt wird (im stm32f10x.h file)
Gast #2931806
Lesenswert?

>ich habe schon in der stm32f10x.h gesucht, finde aber den stm32f100rb
>nicht.

Schön. Hättest Du das gleich geschrieben, hätten wir uns eine Nachfrage 
gespart.

Und nun die nächste. Was steht denn drin?
Denke daran das Suffixe oft nur noch mit der Gehäuseform zu tun haben, 
sich aber die Prozessorstruktur nicht mehr unterscheidet.
Gast #2931835
Lesenswert?

Seufz.
>Jetzt kommt folgender Fehler:
Was heisst: "Jetzt"? Nach der Änderung der Mondphase, oder was?

Was heisst "gefehlt"? Wo und warum hat sie gefehlt.

Programmieren ist halt nicht wie Plastikfutter in der Mikrowelle 
warmmachen. Da muss man schon mal die Gehinrwindungen in Tätigkeit 
setzen.

Führe uns hier nicht am Nasenring herum wie n'nen Bär. Gib uns, ohne das 
wir erst Nachfragen müssen, alle Informationen die auch Du hast.
OP #2931839
Lesenswert?

Hmm schrieb:
> Seufz.
>>Jetzt kommt folgender Fehler:
> Was heisst: "Jetzt"? Nach der Änderung der Mondphase, oder was?
>
> Was heisst "gefehlt"? Wo und warum hat sie gefehlt.
>
> Programmieren ist halt nicht wie Plastikfutter in der Mikrowelle
> warmmachen. Da muss man schon mal die Gehinrwindungen in Tätigkeit
> setzen.
>
> Führe uns hier nicht am Nasenring herum wie n'nen Bär. Gib uns, ohne das
> wir erst Nachfragen müssen, alle Informationen die auch Du hast.

Ich habe in der .h folgendes auskommentiert:
1
#define STM32F10X_MD_VL */  /*!< STM32F10X_MD_VL: STM32 Medium density Value Line devices */
OP #2931874
Lesenswert?

Ich habe bisher die ganze Zeit mit Atmel Studio 6 programmiert. Es ist 
doch klar, dass es bei einem komplett anderen Programm fragen gibt. Bei 
Atmel Studio bestimmt man beim anlegen eines neuen Projekts den 
Prozesson, genau so wie bei Keil. Aber bei Atmel Studio muss man nicht 
nich eine include "Prozessor" machen. Das ist das was mich irritiert.
In der stm32f10x.h gibt es viele verschiedene Prozessortypen. In einem 
Tutorial im Internet habe ich gelesen, dass man den #define 
STM32F10X_MD_VL nehmen muss. Das mit der Value Line verstehe ich, aber 
das MD nicht.

Gruß
Gast #2931905
Lesenswert?

Lade dir doch die Discovery Software von ST runter.
Dort ist ein Projekt für KEIL dabei.
Einfach öffnen und loslegen.

Ich bin auf CooCox umgestiegen da es keine Codebegrenzung besitzt.
Dort lief alles problemlos.
Außerdem sind viiiiele Beispiele dabei!
OP #2931910
Lesenswert?

Bastler schrieb:
> Ich bin auf CooCox umgestiegen da es keine Codebegrenzung besitzt.
> Dort lief alles problemlos.
> Außerdem sind viiiiele Beispiele dabei

Hallo,

ich habe auch schon CooCox versucht, aber dort bekomme ich auch immer 
Fehlermeldungen:

BUILD FAILED
Could not launch D:\Programme\CooCox\CoIDE\gcc\bin\arm-none-eabi-gcc: 
java.io.IOException: Cannot run program 
"D:\Programme\CooCox\CoIDE\gcc\bin\arm-none-eabi-gcc" (in directory 
"D:\Programme\CooCox\CoIDE\workspace\Blink\Debug\obj"): CreateProcess 
error=2, Das System kann die angegebene Datei nicht finden
Total time: 0 seconds

Ist das ein Java Fehler?

Ich denke dass ich die 32k bei Keil nicht so schnell voll bekomme :D
Gast #2931924
Lesenswert?

>Could not launch D:\Programme\CooCox\CoIDE\gcc\bin\arm-none-eabi-gcc:

Stimmt der Pfad?
Ist ARM-Gcc installiert?


Das einzige was ich einstellen musste war:

- Coocox installiert
- Arm GCC installiert
- Pfad für Arm Gcc angepasst
- Debugschnittstelle auf SWD eingestellt und Rate runtergestellt
- Neues Projekt erstellt (mit Beispiel von Coocox, z.B.: GPIO)
- Losgelegt..
Gast #2931932
Lesenswert?

Wie man CooCox richtig installiert und in Betrieb nimmt ist auf deren 
Seite wunderbar beschrieben.
Das hatte ich gelesen und entsprechend hat alles zu 100.00% 
funktioniert.

Wenn ich das nicht gemacht hätte, wären bei mir genau die gleichen 
Probleme aufgetaucht.
Sind sie aber nicht.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren