Systemdateien fuer den XC16x

OP #2149677
Lesenswert?

Hallo,

man hat ein Program vom XC16x in Keil kompiliert. Ein Fehler tritt auf:

'ASC0_CON_FDE': undefined identifier.

Man merkt, es gibt zwei ähnlichen Beschreibungen von diesem SFR:

1. In XC16X.h: sbit ASC0_CON_S0FDE = ASC0_CON^11;

2. In MAIN.H: #define ASC0_CON_FDE ((T_Reg16 *) 0xFFB0)->bit11;

Für dieses Program wird das File XC16x.h verwendet. Die Frage ist, ist 
es zugelassen, diese Änderung vorzunehmen:
"sbit ASC0_CON_S0FDE = ASC0_CON^11;" => "sbit ASC0_CON_FDE = 
ASC0_CON^11;"?

Die Kompilierung ist nun fehlerfrei. Gibt's Probleme wenn man diese 
Systemdatei ändert?

Cu
Senmeis
Gast #2149717
Lesenswert?

Hallo Senmeis.

Also die Antowrt auf deine Frage ob man die XC16X.h ändern darf lautet 
eindeutig Jain.
Du darfst mit deinen Dateien machen was du willst.
Die Namen für die Register und deren Bits sind nur Hilfen für den 
Programmierer. Wie du das 11. Bit im Register mit der Adresse 0xFFB0 
nennst ist dem Programm vollkommen egal.

Schlauer wäre es aber eben die XC16X.h so zu lassen wie sie ist und im 
Code den benutzen Namen entsprechend zu ändern.

Darüberhinaus warum kommt es zu dem Compilerfehler wenn es doch den 
benutzen Namen in der MAIN.h gibt? Wird die MAIN.h nicht eingebunden?

Gruß,
TManiac

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren