Forum: Mikrocontroller und Digitale Elektronik Mikrontroller mit C - adressierung und maskierung


von Bernd B. (berndbrot)


Lesenswert?

Hallo

Habe grade mit der Microcontrolerprogrammierung mit "C" begonnen.
Folgende Dinge verstehe ich nicht so ganz und hoffe, dass mir jemand
helfen kann:

Einige Ports sind Bitadressierbar einige Byteadressierbar...worin
besteht der Grund, dass es bei den einen so und bei den anderen so ist?

Maskierung der byteadressierbaren Ports:

Ich verstehe, dass ich mit z.B. P6=0xef; den Port 6 mit dem Bitmuster
11101111 versehe, aber was genau bedeutet das 0x dabei?
weiterhin:
Bei einer Abfrage eines Ports mit:
if((P8&0x01)==0)
oder dem setzten eines Ports/SFRs mit:
TMOD=((TMOD&0xf0)|0x01);
was bedeutet das & bzw. das |  ?
mir ist klar dass es etwas mit einer "und" bzw. "oder"-Verknüpfung zu
tun hat, aber so richtig verstehe ich es nicht.....

Vielen Dank schonmal für die Hilfe!

von Naja (Gast)


Lesenswert?

Was für eine Hilfe erwartest Du hier, die ein gutes C-Buch nicht auch 
bieten könnte?

von (prx) A. K. (prx)


Lesenswert?

Bernd Brot schrieb:

> Einige Ports sind Bitadressierbar einige Byteadressierbar...worin
> besteht der Grund, dass es bei den einen so und bei den anderen so ist?

Das wird verständlich, wenn man sich dieser Frage auf der Ebene des 
Maschinencodes nähert. Also der Codierung der Befehle. Man hat nur 
begrenzt Platz darin.

von Gast (Gast)


Lesenswert?

Bitmanipulation

Aber auch mein Tipp -> Buch kaufen und selber lesen.

von Nils S. (kruemeltee) Benutzerseite


Lesenswert?

>Ich verstehe, dass ich mit z.B. P6=0xef; den Port 6 mit dem Bitmuster
>11101111 versehe, aber was genau bedeutet das 0x dabei?
Steht für Hex


>Bei einer Abfrage eines Ports mit:
>if((P8&0x01)==0)
>oder dem setzten eines Ports/SFRs mit:
>TMOD=((TMOD&0xf0)|0x01);
& = und Verknüpfing, siehe Bitoperationen
| = oder Verknüpfung

>was bedeutet das & bzw. das |  ?
>mir ist klar dass es etwas mit einer "und" bzw. "oder"-Verknüpfung zu
>tun hat, aber so richtig verstehe ich es nicht.....
http://www.mikrocontroller.net/articles/Bitmanipulation Bitmanipulation

von avr (Gast)


Lesenswert?

Hier ein C-Buch online:

http://openbook.galileocomputing.de/c_von_a_bis_z/


Das manches Bitadressierbar ist und manches nicht ist
oft Hardwarebedingt, eine Frage der umsetzbarkeit.
Hier hilft Assemblerwissen.

avr

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.