www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik 8051 C spezial register (ANFÄNGER)


Autor: Marek Swierzy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen ,
ich will seit neustem 8051 programmierung betreiben.
Ich habe mir eine Demo-Version des WIDE - C -Compielers von AvoCet
heruntergeladen.
jetzt habe ich ein kleines Problem wenn ich an P0.1 den wert  high
haben will kann ich dieses nur mittels P0 = 2; machen.
Wie kann ich diesn Port direkt ansprechen.
Vielen Dank für die Antwort/en

Autor: buz11 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Muss es in C sein ?

In Assembler =  SETB P0.1   ...

Autor: mike (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
naja, P0.1 klingt für mich wie Port 0-Bit 1, und da Bit 1 00000010
entspricht und das dezimal 2 ist musst du P0 = 2 schreiben. Damit du
andere Bits im Register nicht veränderst würde ich beim Setzen
einzelner Bits immer eine Oder-Verknüpfung anwenden, damit bleiben die
anderen Bits unverändert.

#define BIT0   0x01
#define BIT1   0x02
#define BIT2   0x04
#define BIT3   0x08
#define BIT4   0x10
#define BIT5   0x20
#define BIT6   0x40
#define BIT7   0x80

Also Bit 1 am Port 0 setzten P0 |= BIT1;
Bit 1 am Port löschen P0 &= ~BIT1; damit wird nur Bit1 gelöscht andere
Bits im Register bleiben gleich.

Autor: Marek Swierzy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Super vielen Dank,
Jedoch kommt direkt das nächste Problem,
ich möchte den wert 12 in ein Serieles-Schiebe register rein clocken
kann mir da einer Helfen ?

Oder kennt einer ein Tutorial wo man das nachlesen kann ?

MFG und THX

Marek Swierzy

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.