Forum: Mikrocontroller und Digitale Elektronik CCS Error 23


von Urs (Gast)


Lesenswert?

Hallo zusammewn
Habe folgendes Problem:

Ich habe ein älteres PIC Projekt von mir mit einem neueren CCS compiler 
(Umgebung MPLAB IDE 8.1) compiliert und habe folgende Meldung erhalten:

*** Error 23 "K:\Raetiastorm\Raetiastorm_V00.97\16F877.h" Line 2(8,9): 
Can not change device type this far into the code

kann mir jemand weiterhelfen? auf der älterne Version hat es 
funktioniert

Vielen Dank und Gruss

Urs

von let (Gast)


Lesenswert?

Die #include <16f877.h> Anweisung muß am Anfang des Quellcodes
erscheinen.

von Urs (Gast)


Lesenswert?

Vielen Dank für die Antwort

#include "16F877.h" steht bereits zuoberst und ich habe immer noch das 
selbe Problem. woran kann das liegen?

;----------------- Importierte Headerfiles 
-------------------------------------
*/
#include "16F877.h"

#include <head.h>
#include <rsw.c>       /* C-File importieren! H funktioniert nicht. */
#include <display.c>   /* C-File importieren! H funktioniert nicht. */
#include <taste.c>     /* C-File importieren! H funktioniert nicht. */
#include <menue.c>     /* C-File importieren! H funktioniert nicht. */
//#include <pumpe.c>     /* C-File importieren! H funktioniert nicht. */
#include <temp.c>    /* C-File importieren! H funktioniert nicht. */
//#include <akku.c>    /* C-File importieren! H funktioniert nicht. */

/*  Bemerkung zum MPLAB v6.40:
    Im Projekt-Fenster darf unter den Source-Files nur ein C-File 
stehen. In
    unserem Fall head.c. Ansonsten funktioniert die Build-Funktion nicht 
richtig
    und das MPLAB weigert sich das korrekte Hex-File in den uC zu laden 
(sei es
    fuer das Debuggen oder auch das Programmieren).
    Ebenfalls muessen im head.c die c-Files includiert werden und nicht 
wie
    gewoehnlich die h-Files. Ansonsten versucht das MPLAB jedes einzelne 
File
    als Hauptfile zu kompilieren und dies fuehrt entsprechend zu 
Fehlermeldungen.
    Die ganze Problematik ruehrt auch vom CCS-Compiler her. Dieser hat 
nach
    Auskunft vom Hersteller nicht die Moeglichkeit das Projekt ueber die 
H-Files
    zu verbinden, da es kein Linker gibt. Somit muss entweder das ganze 
Projekt
    in einem File gemacht werden oder die Module ueber das includieren 
der
    C-Files zusammengehaengt werden. Es besteht somit natuerlich die 
Gefahr,
    dass Variablen oder Defines in mehreren Modulen gleich heissen. Dies 
wird
    aber verhindert, in dem jeweils der Modulname dem Namen 
vorangestellt wird.
*/

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.