Forum: Mikrocontroller und Digitale Elektronik Arduino Uno interner Pull-Up


von Frank (Gast)


Lesenswert?

Hallo,

ich beobachte gerade ein seltsames Verhalten an meinem Arduino Uno R3.
Ich möchte gerne zwei Pins als Input über Taster gegen GND realisieren.
1
DDRD &= ~((1<<DDD3)|(1<<DDD4)); //Taster als Eingang
2
PORTD |= (1<<PD3) | (1<<PD4); //Pullup
3
4
//abfrage über
5
6
uint8_t tmp=(~((PIND & ((1<<PD3)|(1<<PD4)))>>3))&0x03; 
7
//liefert zahl 1, 2 für einzelne Taster oder 3 wenn beide Taster gedrückt

Wenn ich den Arduino über USB betreibe funktioniert das so wie es soll, 
die Pins liegen bei etwa 5V und Tastendrücke werden korrekt erkannt.
Sobald ich den Arduino über den DC Stecker mit einem 9V Netzteil 
betreibe hängen die Pins irgendwo bei 2,5V und damit irgendwo zwischen 
High und Low. Hat jemand ähnliches beobachtet? Laut Schaltplan dürfte es 
doch keinen Unterschied machen...

Danke & Gruß
Frank

von spess53 (Gast)


Lesenswert?

Hi

>Sobald ich den Arduino über den DC Stecker mit einem 9V Netzteil
>betreibe hängen die Pins irgendwo bei 2,5V und damit irgendwo zwischen
>High und Low.

Und wie sieht die Versorgungsspannung direkt am Controller aus?

MfG Spess

von Frank (Gast)


Lesenswert?

Habe direkt an den PINS des IC stabile 5V gemessen...
Auch das angeschlossene Display funktioniert problemlos.
Ausgangspins liefern als High Pegel 5V.

habe einen zweiten Uno getestet, der zeigt das selbe Verhalten.
Eingangspin mit internem Pull-Up mit USB: 5V mit DC: 2,5V

Werde wohl externe Pull-Ups anschließen um das zu umgehen. Es würde mich 
aber trotzdem interessieren, ob jemand sowas schon einmal beobachtet 
hat...

Gruß Frank

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.