Forum: Mikrocontroller und Digitale Elektronik LED an Port nur schwach


von Johann T. (joschua011)


Lesenswert?

folgendes Problem:
ich habe 5 LED an Port D (und einen Taster aber der is egal)
mit dem Programm unten leuchten die leds nur ganz schwach, sehr schwach,
mit jedem beliebigen anderem Programm in voller Leuchtkraft ?!
Messung direkt am Port zeigt 2V an, bei anderen Programmen 4,6V.....
ich verstehe absolut nicht wieso....
1
#define F_CPU 8000000UL
2
3
4
#include <avr/io.h>
5
#include <util/delay.h>
6
#include <stdint.h>
7
8
9
10
int main (void)
11
{
12
13
  DDRD = (0<<2); // Taster an PD2
14
15
  uint8_t x;
16
  x=0;
17
18
19
  while(1)
20
  {
21
    if (!(PIND & (1<<2)))   /// Wenn taster an PD2 gedrückt,...
22
    {
23
      x++;
24
      if(x==2) x=3; /// Da an PD2 keine Led sonder taster ist, wird x=2 übersprungen
25
      if(x==6) x=0; /// Bei x = 6 wir x 0 weil es ja nur 5 leds gibt. 
26
      _delay_ms(50);   
27
    }
28
    
29
      PORTD = (1<<x);  /// xte LED leuchtet
30
  }
31
32
33
34
}

von Otto (Gast)


Lesenswert?

Du mußt das DDR der Bit für die LED auf Ausgang (=1) schalten !

Otto

von Johann T. (joschua011)


Lesenswert?

mann ich bin so ein Noob

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.