- Labornetzteil AliExpress         
Ergebnis 1 bis 10 von 10

Thema: Beginner Problem, LED steuern?

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter-Spezialist Avatar von schorsch_76
    Registriert seit
    25.03.2012
    Ort
    Kurz vor Neuschwanstein
    Alter
    48
    Beiträge
    456
    Code:
    	PORTC = 0b0100000; // Rote LED	
    	_delay_ms(1000);	//
    	PORTC = 0b0000000;
    	PORTC = 0b0000100;	// Gelbe LED
    Das Problem ist einfach .... du überschreibst den Wert und machst keine Verknüpfung mit |= bzw &=

    PORTC=xxx. Setzt alle werte in diesem Register

    PORTC |= (1<<5); // setzt das 5te Bit und lässt alle anderen so wie sie sind
    PORTC &= ~(1<<5); // löscht das Bit 5 und lässt alle anderen so wie sie sind

    Gruß
    Georg

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    67
    Beiträge
    2.435
    Hallo micron,

    WIE sind die LEDs angeschlossen?

    Normal ist, dass die LEDs zwischen Vcc und Port angeschlossen werden, da die Ports mehr Strom gegen GND ableiten können als gegen Vcc.

    Dann ist es aber so, dass eine "0" am Port die LED EIN und eine "1" AUS schaltet.

    MfG Peter(TOO)
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

  3. #3
    Erfahrener Benutzer Robotik Visionär Avatar von Hubert.G
    Registriert seit
    14.10.2006
    Ort
    Pasching OÖ
    Beiträge
    6.220
    Zitat Zitat von Peter(TOO) Beitrag anzeigen
    Normal ist, dass die LEDs zwischen Vcc und Port angeschlossen werden, da die Ports mehr Strom gegen GND ableiten können als gegen Vcc.
    MfG Peter(TOO)
    Die neueren AVR (ATmega, ATTiny) können gleich viel Strom sourcen und sinken. Die Meinung LEDs und Sonstiges nach VCC schalten zu müssen hat sich aus der µC-Generation herübergerettet die nur Open-Collektor (OC) Ausgänge hatten.
    Grüsse Hubert
    ____________

    Meine Projekte findet ihr auf schorsch.at

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    67
    Beiträge
    2.435
    @Hubert,

    Und wie hat er die LED nun angeschlossen?

    MfG Peter(TOO)
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

  5. #5
    Erfahrener Benutzer Robotik Visionär Avatar von Hubert.G
    Registriert seit
    14.10.2006
    Ort
    Pasching OÖ
    Beiträge
    6.220
    Wenn seine Beschreibung stimmt und er tatsächlich mit "Rot->ein"beginnt, dann nach GND.
    Grüsse Hubert
    ____________

    Meine Projekte findet ihr auf schorsch.at

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    12.04.2013
    Beiträge
    13
    Hallo,
    vielen Dank an alle die sich die Zeit genommen haben mir zu antworten,
    hier die Grafik von der Schaltung:
    PC5 ist das original, PC1 und PC2 sind von mir ergenzt:
    Klicke auf die Grafik für eine größere Ansicht

Name:	avr-p28-sch_2.jpg
Hits:	12
Größe:	61,2 KB
ID:	29086

    Gruß
    micron

    - - - Aktualisiert - - -

    Zitat Zitat von Hubert.G Beitrag anzeigen
    Wenn seine Beschreibung stimmt und er tatsächlich mit "Rot->ein"beginnt, dann nach GND.
    Hallo Hubert,
    Rot ist die LED die bereits auf dem Board drauf war, da hab ich nichts geändert.
    Hab dann versucht nach dem selben "Muster" 2 weitere LEDs zu löten, ob das richtig ist was ich gemacht hab ist die nächste Frage.



    Gruß
    mircron

  7. #7
    Erfahrener Benutzer Robotik Visionär Avatar von Hubert.G
    Registriert seit
    14.10.2006
    Ort
    Pasching OÖ
    Beiträge
    6.220
    Die Led sind schon richtig so, nur die Ansteuerung ist verkehrt.
    Du beginnst mit

    PORTC = 0b0100000; // Rote LED
    Damit setzt du PC5 auf 1 (5V) die Led ist aber auch gegen 5V geschaltet und leuchtet daher nicht.
    Infolge läuft deine Ansteuerung verkehrt.
    Übersichtlicher ist auch die Schreibweise wie sie "schorsch_76" schon gezeigt hat:

    PORTC |= (1<<5); // setzt das 5te Bit und lässt alle anderen so wie sie sind
    PORTC &= ~(1<<5); // löscht das Bit 5 und lässt alle anderen so wie sie sind (Hier leuchtet die Led)
    Grüsse Hubert
    ____________

    Meine Projekte findet ihr auf schorsch.at

Ähnliche Themen

  1. RNFBA Absolute Beginner
    Von mas im Forum Bauanleitungen, Schaltungen & Software nach RoboterNetz-Standard
    Antworten: 9
    Letzter Beitrag: 14.06.2011, 12:10
  2. Beginner, mehrer Fragen
    Von Thalhammer im Forum AVR Hardwarethemen
    Antworten: 34
    Letzter Beitrag: 03.12.2010, 20:29
  3. Beginner
    Von Thalhammer im Forum AVR Hardwarethemen
    Antworten: 10
    Letzter Beitrag: 21.05.2010, 18:20
  4. Beginner Code korrigieren
    Von onion im Forum Assembler-Programmierung
    Antworten: 23
    Letzter Beitrag: 21.08.2008, 22:01
  5. RGB LED Steuern
    Von luxor im Forum Elektronik
    Antworten: 21
    Letzter Beitrag: 08.12.2005, 08:57

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Labornetzteil AliExpress