Hallo,
mich hat grad der XC8 Compiler angemeckert
und nach etwas Suchen, weis ich nun auch warum.
In der Datei pic12f1572.h fehlen die Bit Definitionen für den Prescale des Timers 0
um meinen Prescale des Timers 0 auf 1:2 einzustellen, sah mein Code so aus:
was der Compiler mit "undefined identifier ..." anmeckert.Code:PS0 = 0; PS1 = 0; PS2 = 0;
Diese Bits befinden sich im OPTION_REG
entweder man ändert den Headerfile oder man kann auch mit
auf dieses Bits zugreifen, in der Typestructur sind diese nämlich noch vorhanden.Code:OPTION_REGbits.PS0 = 0; OPTION_REGbits.PS1 = 0; OPTION_REGbits.PS2 = 0;
in der Headerdatei vom PIC12F1840 sind diese Bits auch vorhanden, dort kann man sich das "rausklauen" bzw. ansehen, wie es auszusehen hat.
Siro
Strom fließt auch durch krumme Drähte !
Hallo Klebwax,
das kann man auch so machen, wie Du geschrieben hast, ich habe das probiert.
#define PS0 OPTION_REGbits.PS0
#define PS1 OPTION_REGbits.PS1
#define PS2 OPTION_REGbits.PS2
Es gibt dabei keine Namenskonflikte.
Compiliert der XC8 einwandfrei.
Ich benutze bei Parametern, die größer als ein Bit sind, gern die zusammengefasste Version:
Das sieht dann genauso aus, wie die Beschreibung im Datenblatt.Code:OPTION_REGbits.PS = 0b000;
MfG Klebwax
Strom fließt auch durch krumme Drähte !
Sieht auf jeden Fall besser aus.
Lesezeichen