Seit ungefähr einem Jahr programmiere ich meinen PIC mit dem SDCC. Ich möchte bei dem Compiler bleiben wegen Unterstützung für viele andere Prozessoren. Auch für AVR. Jetzt bin ich nach der Suche nach einem komfortablen Editor. Gestern habe ich zwei Kandidaten downgeladen: Geany und SciTe. Vielleicht hat jemand Erfahrung mit denen. Wie kann man den SDCC an diesen Editoren anbinden? Zurzeit starte ich die Kompilierung mit einer Batchdatei mit dem Inhalt: sdcc -mpic16 -p18f258 --obanksel=2 --optimize-cmp --optimize-df can.c Für eventuelle Ratschläge wäre ich dankbar…
Ich verwende den PsPad Editor, ist zwar eher für Webseitenprogrammierung, hat aber einiges an Funktionen und gefällt mir ganz gut. Ich nutze ein einfaches Makefile, welches ich für jedes Projekt anpasse und den SDCC zum Programmieren von 8051ern. In jedem ernsthaften Editor kann man den Compiler einstellen und auch Parameter übergeben. Oder eben das Makefile aufrufen, und das macht dann den Rest. Ich empfehle Dir, mit einem Makefile zu arbeiten. Ist flexibler. Programmierst Du wirklich AVRs mit dem SDCC? Programmers Notepad ist auch noch ein netter Editor, den nutze ich für allgemeine Arbeiten...
Makefiles würden da erheblich helfen. Auch der Umgang mit der Kommandozeile ist ratsam. Ansonsten: kwrite, kate, vim, emacs.
Ich habe gerade den PsPad Editor geladen. Er sieht sehr interessant aus. Ich programmiere zurzeit nur den PIC aber denke ich auch über die AVR nach. Und das sollte auch unter den freien SDCC passieren.
Von sdccman.pdf: SDCC (Small Device C Compiler) is free open source, retargettable, optimizing ANSI-C compiler by Sandeep Dutta designed for 8 bit Microprocessors. The current version targets Intel MCS51 based Microprocessors (8031, 8032, 8051, 8052, etc.), Dallas DS80C390 variants, Freescale (formerly Motorola) HC08 and Zilog Z80 based MCUs. It can be retargeted for other microprocessors, support for Microchip PIC, Atmel AVR is under development. The entire source code for the compiler is distributed under GPL. SDCC uses ASXXXX & ASLINK, an free open source retargetable assembler & linker. SDCC has extensive language extensions suitable for utilizing various microcontrollers and underlying hardware effectively.
Und hier: http://sdcc.sourceforge.net/index.php#Download "AVR and gbz80 targets are no longer maintained."
>In jedem ernsthaften Editor kann man den Compiler einstellen und auch >Parameter übergeben. Oder eben das Makefile aufrufen, und das macht dann >den Rest. Den PsPad gefällt mir. Wie kann ich im Editor „den Compiler einstellen“? Wie kann ich das Makefile direkt vom Editor aufrufen? Ein kurzes „Kochrezept“…
... und code::blocks Unkompliziert und schnell. http://wiki.codeblocks.org/index.php?title=Using_the_Code::Blocks_IDE_with_SDCC_on_PIC_MCUs cu
>... und code::blocks Unkompliziert und schnell.
Danke für den Supertyp!
Im Vergleich zum Beispiel habe ich diverse Änderungen unternommen.
Meine ursprüngliche Batchdatei für die Komandozeile:
sdcc -mpic16 -p18f258 --obanksel=2 --optimize-cmp --optimize-df can.c
Mit der Option -p18f258 wird den Typ von meinem Prozessor festgelegt.
Dann statt (den anderen Prozessortyp bitte vergessen…):
#include <pic16/pic18f452.h>
sollte in *.c stehen:
#include <p18cxxx.h>
Der Compiler inkludiert dann automatisch die richtige Datei.
Meine Option von der Komandozeile habe ich in der Zeile
Project -> Build options->Other options:
-p18f258 --obanksel=2 --optimize-cmp --optimize-df
eingetragen.
Nach Den Beschwerden vom Linker musste ich noch in
Project -> Build options->Linker settings
C:\sdcc\lib\pic16\libc18f.lib
eintragen.
Danach ist „Build“ fehlerfrei gelaufen und die can.hex Datei wurde
generiert.
Das alles war unter „Build target: Release“
Nach dem Umschalten auf „Build target: Debug“ kam die Medung:
-------------- Build: Debug in CanProjekt ---------------
Linking stage skipped (build target has no object files to link)
Nothing to be done.
Vielleicht hat jemand eine Idee…
In: Project->Properties->Build targets->Debug bei „Build target files“ habe ich Häkchen gesetzt und jetzt läuft Build bei „Build target: Debug“ ohne Fehler: Linking native: bin\Debug\CanProjekt.sys message: using default linker script "C:\Programme\gputils\lkr\18f258.lkr" Process terminated with status 0 (0 minutes, 0 seconds) 0 errors, 0 warnings Wie kann aber den Debuger mit einem Erfolg starten …
Hi ich benutze Piklab ist für sdcc schon vorbereitet und diev. andere pic Compiler.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.