Forum: Mikrocontroller und Digitale Elektronik Mega8 - PD6 und PD7 als digitaler Eingang unmöglich?


von Andy W. (gastandy)


Lesenswert?

Hallo zusammen,

der Betreff bringt es auf den Punkt.
Ich möchte 2 Taster ohne interne Pullups an den Pins einlesen.
Habe das Datenblatt schon durchforstet, bin aber irgendwie nicht schlau 
daraus geworden. Habe versucht diverse Bits u.a. im SFIOR Register zu 
setzen - ohne Erfolg. So wie ich es verstehe, geht es mit diesen 2 Pins 
nicht.
Falls es doch möglich ist, wäre jemand so nett und könnte mir posten 
welches Bit in welchem Register gesetzt werden muss? Stehe momentan echt 
auf dem Schlauch :-/

Danke im Voraus!
Andy

von Falk B. (falk)


Lesenswert?

AD-Wandler auslesen, braucht aber einen externen Pull-Up.

von T.roll (Gast)


Lesenswert?

Warum benutzt du nicht einfach die PIN-Register?

@falk Warum AD-Wandler? Der liegt beim Mega8 doch auf PortC.

von Peter D. (peda)


Lesenswert?

Andy W. schrieb:
> So wie ich es verstehe, geht es mit diesen 2 Pins
> nicht.

Wie kommst Du darauf?
Das sind ganz normale IO-Pins.

von yep (Gast)


Lesenswert?

Also mit wäre eine Anomalie was diese beiden Pins beim ATmega8 bzgl. 
Funktion als normale IOs nicht bekannt. Sollte eigentlich funktionieren, 
indem du einfach das Data Direction Register korrekt setzt. Diese Pins 
sind jedoch vom Analog Komparator verwendet, wenn man diesen verwendet. 
Um sicherzugehen, dass der aus ist, kannst du im ACSR-Register noch ACD 
auf eins setzen.

Hättest du jetzt ein TQFP-/MLF-Package und von den Pins ADC6/7 
gesprochen, diese sind tatsächlich ausschließlich ADC-Inputs!

von Andy W. (gastandy)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

manchmal sieht man den Wald vor lauter Bäumen nicht: Der Fehler lag in 
der Maskierung der Bits 6 und 7 nach dem Einlesen im Programm - hatte 
fälschlicherweise die Bitmaske für Port B und C auch für Port D 
verwendet. Etliche Male das Codefragment kontrolliert und erst jetzt ist 
es mir aufgefallen.
@Peter - Die angehängte Tabelle aus dem Datasheet hatte mich etwas in 
die Irre geführt.
Nochmals ein Dankeschön an alle, die sich mit meiner Anfrage beschäftigt 
und gepostet haben!

MFG
Andy

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.