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