Einer Char-Variablen Ausgänge zuweisen

Gast #2281744
Lesenswert?
• ▲
▼
Hallo zusammen.
Ich programmiere seit einer gewissen Zeit C für PICs. Jetzt hab ich an 
einem "Problem", wozu ich eine Frage hätte. Und zwar hab ich einen PIC, 
der 21 IOs hat (18F2550). Der PORTA hat 6 bit, PORTB hat 8bit und PORTC 
hat 7 bit. Ich bekomme über I²C eine 8bit-Zahl, die ich dann Ausgeben 
möchte. Idealerweise hätte ich die Zahl genommen und direkt auf PORTB 
geschrieben. Doch da 2 bits vom PORTB für das I²C-Modul gebraucht werden 
(RB0&RB1), habe ich somit keinen freien 8-bit-PORT. Jetzt hab ich mir 
überlegt, ich nehme RC6 statt RB0 und RC7 statt RB1, dann RB2-RB7 für 
den Rest. Wenn ich jetzt aber die 8bit Zahl in einem Buffer habe, müsste 
ich die ersten beiden Maskieren, verschieben und nach PORTC schreiben 
und dann nochmal die Zahl zu PORTB schreiben.
Da kam mir folgender gedanke: Kann man einer char-Variablen Ausgänge 
zuweisen? So dass ich zum Beispiel die Zahl in die Variable 
"port_ersatz" schreibe und der Compiler dann weiß, welche Pins/IOs er 
setzen bzw. löschen muss?
Zum Beispiel:
1
char port_ersatz;
2
// definiere port_ersatz.0 als PORTC.6
3
// definiere port_ersatz.1 als PORTC.7
4
// definiere port_ersatz.2 als PORTB.2
5
// definiere port_ersatz.3 als PORTB.3
6
// definiere port_ersatz.4 als PORTB.4
7
// definiere port_ersatz.5 als PORTB.5
8
// definiere port_ersatz.6 als PORTB.6
9
// definiere port_ersatz.7 als PORTB.7
10

11
port_ersatz = 0xAA;

Ich hoffe es ist klar geworden, was ich meine.

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.