mikrocontroller.net

Forum: Compiler & IDEs Mehrere Codefiles bei SDCC und Code:Blocks


Autor: stm8 Frickler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich habe mir eine Entwicklungsumgebungfür STM8 mit Code:Blocks und SDCC 
gemäss der Anleitung unter:
https://web.archive.org/web/20160420063536/http://...

eingerichtet.

Als "DevBoard" kommt ein Chinaboard mit STM8S103F Board zum Einsatz.

Ein erstes "Blinkprogramm" konnte ich erfolgreich compilieren und 
flashen. Die LED blinkt wie es sein soll.

Soweit so gut, jetzt zum Problem.

Ich habe den Code des  Blinkprogramms aufgeräumt und auf mehrer .c und 
.h Dateien verteilt. DIe .h Dateien sind per include eingebunden und 
auch die .c Dateien bei "Build target files" angehakt.
Nun lässt sich das Projekt zwar noch compilieren und flashen, das 
Programm führt aber keine Funktionen aus, die in ausgelagerten Dateien 
liegen.
Woran kann das liegen? Ich werd fast verrückt.
Danke für Eure Unterstützung.

Grüsse

Autor: hochsitzcola (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast du mal in das makefile geschaut, ob die ausgelagerten dateien 
eingebunden werden?

Gruß
hochsitzcola

Autor: stm8 Frickler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo hochsitzcola,

danke für Deine Antwort. Ein Makefile hab ich nicht gefunden.
Die Ausgabe im Info Fenster sieht für mich zunächst aber gut aus.
-------------- Build: prod in firstProject (compiler: Small Device C Compiler)---------------

sdcc.exe --out-fmt-ihx -mstm8 -DSTM8S103  -DSTM8S103  --out-fmt-ihx   -I"..\STM8 static Lib\inc" -I"C:\Program Files (x86)\sdcc\include" -c firstProject.c -o .\firstProject.rel
sdcc.exe --out-fmt-ihx -mstm8 -DSTM8S103  -DSTM8S103  --out-fmt-ihx   -I"..\STM8 static Lib\inc" -I"C:\Program Files (x86)\sdcc\include" -c timer.c -o .\timer.rel
sdcc.exe --out-fmt-ihx -mstm8 -DSTM8S103  -DSTM8S103  --out-fmt-ihx   -I"..\STM8 static Lib\inc" -I"C:\Program Files (x86)\sdcc\include" -c uart.c -o .\uart.rel
sdcc.exe -L"..\STM8 static Lib\inc" -L"..\STM8 static Lib\inc" -L"C:\Program Files (x86)\sdcc\lib" -o firstProject.hex --out-fmt-ihx -mstm8 -DSTM8S103  -DSTM8S103  --out-fmt-ihx    "..\STM8 static Lib\lib\STM8S_Lib.lib" "C:\Program Files\SDCC\lib\stm8\stm8.lib" .\firstProject.rel .\timer.rel .\uart.rel
Output file is firstProject.hex with size 7.81 KB
Running target post-build steps

Danke für Deine Unterstützung-
Gruss

Autor: Carl Drexler (jcw2)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn alles Andere richtig ist, dann bleibt noch das unbekannte Programm 
;-)

: Bearbeitet durch User
Autor: stm8 Frickler (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
am Programm soll nicht liegen.

Habe zwei Projekte draus gemacht und angehängt.

Autor: hochsitzcola (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also der Linker-Befehl sieht bei mir deutlich anders aus:

sdcc -IStdPeriphLib/inc -I.  -mstm8 -Ddouble=float --std-c99 --nolospre 
--out-fmt-ihx --debug  main.c StdPeriphLib/src/stm8s_itc.rel 
StdPeriphLib/src/stm8s_clk.rel StdPeriphLib/src/stm8s_gpio.rel 
StdPeriphLib/src/stm8s_exti.rel StdPeriphLib/src/stm8s_uart2.rel 
StdPeriphLib/src/stm8s_tim1.rel StdPeriphLib/src/stm8s_tim2.rel 
StdPeriphLib/src/stm8s_adc1.rel gpio.rel utils.rel uart.rel adc.rel 
brake.rel timers.rel pwm.rel motor_controller_high_level.rel 
motor_controller_low_level.rel throttle_pas_torque_sensor_controller.rel 
communications_controller.rel

Nach anfänglichem rumprobieren u.a. mit code:blocks bin ich jetzt bei 
Eclipse und externem Batchfile zum Compilieren und Flashen gelandet, 
siehe den Nachbarthread zum Programmieren des STM8 gelandet.

Gruß
hochsitzcola

Autor: Carl Drexler (jcw2)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
stm8 Frickler schrieb:
> am Programm soll nicht liegen.
>
> Habe zwei Projekte draus gemacht und angehängt.

iPad.entzip.nicht ;-)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.