Forum: Compiler & IDEs PIC Header Datei Struktur


von PIC Programmer (Gast)


Lesenswert?

Hey Leute,

in der Header-Datei eines PIC-µC stehen die gesamten Register gelistet, 
mit den dazugehörigen Bitnamen, wie es sich gehört, um einfach drauf 
zuzugreifen. EIn bisschen komisch ist es trotzdem:

1
extern volatile near unsigned char       BAUDCON;
2
extern volatile near union {
3
  struct {
4
    unsigned ABDEN:1;
5
    unsigned WUE:1;
6
    unsigned :1;
7
    unsigned BRG16:1;
8
    unsigned SCKP:1;
9
    unsigned :1;
10
    unsigned RCIDL:1;
11
    unsigned ABDOVF:1;
12
  };
13
  struct {
14
    unsigned :4;
15
    unsigned TXCKP:1;
16
    unsigned RXDTP:1;
17
    unsigned RCMT:1;
18
  };
19
} BAUDCONbits;

was heißt "near" ?
was bedeuten die Zahlen hinter den Doppelpunkten?

Wie ist die genaue Syntax, wenn ich auf das Bit SCKP zugreifen will?
Ich habe probiert: BAUDCON.SCKP = 1
scheint aber falsch :-/

von holger (Gast)


Lesenswert?

>Ich habe probiert: BAUDCON.SCKP = 1
>scheint aber falsch :-/

BAUDCONbits.SCKP = 1;

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

PIC Programmer wrote:

> was heißt "near" ?

Irgendeine Angabe über das Speichermodell, proprietäre Erweiterung
des Compilers.  Ist das ein GCC?  Dann müsstest du eigentlich
irgendwo in den headers eine Auflösung dafür finden.

von holger (Gast)


Lesenswert?

>was bedeuten die Zahlen hinter den Doppelpunkten?
>    unsigned ABDEN:1;

ABDEN ist EIN Bit.

>    unsigned :4;

Vier unbenutzte Bits.

von holger (Gast)


Lesenswert?

>Vier unbenutzte Bits.

Besser:

   unsigned :4;      // Bits D0..D3 (unbenutzt) zum auffüllen damit
   unsigned TXCKP:1; // Bit TXCKP an Stelle D4 landet.

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.