mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Anfängerfrage, wie wird ein Bit gesetzt ?


Autor: Stefan W. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe ne ganz simple Frage zu meinen kleinen Programm das einfach 
eine LED einschalten soll solange ich auf einen Taster drücke.

dieses Programm funktioniert, aber sobald ich den  Befehl

PORTC = 0x01;  durch
PORTC |= (1 << 1);
ersetze tut sich nichts mehr.



bool alarm = false;

int main()
{
    DDRC  = 0xFF;  // PC0..PC7 as output
    PORTC = 0x00;  // all PORTC output pins Off
    DDRA  = 0x00;  //all A port pins as input
    PORTA=(1<<PA0);  //Enable internal Pull-Up resistors

        while(1) {
        if (bit_is_clear(PINA,PA0)) alarm=true;
        if (alarm == true) {             // Alarmfall
//      PORTC |= (1 << 1);

  PORTC = 0x01;
        alarm = false;
        }
  else PORTC = 0x00;
}
  return 0;
}

Weis jemand warum? Was mache ich falsch?

Autor: Sven P. (haku) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
(1 << 1) ergibt 0x02!!!

Musst schreiben: PORTC |= (1<<0);

Autor: Stefan W. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK, danke für den Tip

es sind an beiden Ausgängen LEDs (PC0 und PC1) angeschlossen

Ich weis nicht warum, aber jetzt gehts!

DANKE

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.