www.mikrocontroller.net

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


Autor: Jupp (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Rainer S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Andreas W. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier gibts eine Übersicht:
http://www.informel.de/pic/ccompiler.htm

Autor: Jupp (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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?

Autor: Stefan B. (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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/feucht...

und

http://www.stefan-buchgeher.info/elektronik/feucht...

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)

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.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

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