PortD Pin2 nutzen geht nicht

OP #494503
Lesenswert?

Hi Leutz,

ich hab folgenden Code:
1
DDRD |= (1 << DDD0) | (1 << DDD1) | (1 << DDD4) | (1 << DDD5);    
2
DDRD &= ~(1 << DDD6) & ~(1 << DDD2);            
3
PORTD |= (1 << PD6) | (1 << PD2) | (1 << PD4) | (1 << PD5);

Zusätzlich läuft INT0. Der Interrupt arbeit auch, die Routine wird wie 
gewünscht aufgerufen.

Das Problem ist nun dass der oben angesprochene PIND2 nicht funzt! Warum 
weiss ich auch nicht. Normalerweise sollte er ja HIGH sein sowie PIND6 
auch.
Aber er ist LOW und ich weiss ehrlich gesagt nicht warum?!? Hängt das 
mit INT0 zusammen? Der µC ist ein 2313, ich hab auch schon ausgetauscht, 
Hardware ist also in Ordnung.

Gibt's da vielleicht ne Abhängigkeit mit IRQ's?

Markus
#494515
Lesenswert?

Seite 47 Datenblatt Tiny2313

"The DDxn bit in the DDRx Register selects the direction of this pin. If 
DDxn is written
logic one, Pxn is configured as an output pin. If DDxn is written logic 
zero, Pxn is configured
as an input pin."

Is klar, oder? N typischer Anfängerfehler (Ich hab den auch gemacht ;) )
OP #494586
Lesenswert?

Henrik Jahnke wrote:
> Seite 47 Datenblatt Tiny2313
>
> "The DDxn bit in the DDRx Register selects the direction of this pin. If
> DDxn is written
> logic one, Pxn is configured as an output pin. If DDxn is written logic
> zero, Pxn is configured
> as an input pin."
>
> Is klar, oder? N typischer Anfängerfehler (Ich hab den auch gemacht ;) )

Hä??? Das musst du mir erklären. Was mache ich nicht so wie es da steht? 
Der PD2 soll ja ein Eingangspin sein und wenn ich den PullUp einschalte 
muss da ein HIGH Pegel zu messen sein.

@Karl heinz:
Kannst du dir das irgendwie erklären? Kann es das die beiden AT90S2313 
defekt sind? Wohl eher nicht, hatte bisher noch nie einen defekten - und 
das bei der rumtesterei und Kurzschlüsse... ;-)

Gruss, Markus
OP #495339
Lesenswert?

Ok Leutz,

sowas kann man auch nicht erklären. Ich hab mir die Platine jetzt mal 
unter der Lupe angesehen. Und da hab ichs entdeckt: Feiner Schluss am 
PortPin mit Masse!
Gegen sowas ist natürlich jede Software machtlos :-). Auf alle Fälle 
funzt es jetzt und die AVR's haben's auch überlebt! ;-)

Gruss, Markus

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren