Forum: Mikrocontroller und Digitale Elektronik C-Compiler für PIC16F628


von Jupp (Gast)


Lesenswert?

Hallo Leute,

habe ein kleines C-Programm für einen PIC16F628 geschrieben. Dieses
lässt sich (wie der Name ja schon sagt) nicht über den MPLAP C18
Compiler in ein Hex-File umwandeln.

Welchen Compiler könnt Ihr empfehlen? Gibt es einen kostenlosen der
sich in MPLAP einbinden lässt?

Vielen Dank für die Hilfe

Jupp

von Rainer S. (Gast)


Lesenswert?

Hallo Jupp!

Versuchs mal mit http://www.bknd.com/cc5x/index.shtml. Den Compiler
gibt es für Studenten und kleine Projekte (1 Exemplar) kostenlost.
Allerdings sind dort einige Optimierungen abgeschaltet, was aber kein
großes Hindernis darstellt.

Gruß,
Rainer

von Andreas W. (Gast)


Lesenswert?

Hier gibts eine Übersicht:
http://www.informel.de/pic/ccompiler.htm

von Jupp (Gast)


Lesenswert?

Danke für die Antworten ich habe es mit dem CC5X
probiert bekomme es aber irgendwie mit MPLAP nicht hin.

Wenn ich es compalieren will meckert er mir immer an der Header-Datei
rum. Die dürfte doch normalerweise stimmen oder etwa nicht?

Genaue Fehlermeldung:

.......... 16f628.h 2 : Duplicate chip definition
 (Multiple chip definitions detected (option -p<chip> and #include
<header.h>).The #include statement should be removed)

Wenn ich in der Header Datei die oben gennante Zeile auskommentiere
kommt eine Fehlermeldung, dass einige Konstanten in der Headerdatei zu
lang wären, was eigentlich auch nicht sein kann.

6F628.h 48 : Constant out of range
 (The constant is too large)
#pragma char PCON    @ 0x8E
6F628.h 48 : Constant out of range
#pragma char EECON1  @ 0x9C
#pragma char EECON2  @ 0x9D
                          ^------
Irgendwie merkwürdig.

Hat einer eine Idee?

von Stefan B. (Gast)


Lesenswert?

Hallo Jupp!

Du schreibst von einem kleinen Programm - also wenn Du die innerhalb
der 1k-Grenze beleibst reicht es wenn Du in MPLAB den Controller
angibst. Im C-Code brauchst Du keine Include oder Headerdatei.

Sie Dir zB. meine Beispiele auf

http://www.stefan-buchgeher.info/elektronik/feuchtemodul1/feuchtemodul1.html

und

http://www.stefan-buchgeher.info/elektronik/feuchtesensor_shtxx/feuchtesensor_shtxx.html

an.

Wenn Du die 1k-Grenze überschreitest (was mit dem PIC16F628 ja möglich
ist, dann wird es etwas kompliziert. Dann versuchs mal hier

http://www.mikrocontroller.net/forum/read-1-342244.html#new

mfg
Stefan B.
(Linz, Österreich)

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.