Forum: Analoge Elektronik und Schaltungstechnik Ausgangsspannung I/O-Pins Atmega644


von Kai (Gast)


Lesenswert?

Hallo Forum!

Ich habe mir eine Schaltung um einen Atmega644 gebaut, die sich jetzt 
nicht ganz so verhält wie ich mir das vorgestellt habe. Ich möchte PA1, 
PA2 sowie alle PC Pins als Ausgänge benutzen. Das sieht in C dann 
ungefähr so aus:
1
  DDRA |= ((1 << DDA1)|(1 << DDA2)|(1 << DDA5)|(1 << DDA6));  // set PA1 & PA2 outputs
2
3
  DDRC = 0xFF;             // set PC0 - PC7 outputs
4
5
  PORTC |= ((1 << PC0)|(1 << PC3)|(1 << PC4)|(1 << PC6));
6
  PORTA |= (1 << PA1);
7
  PORTC &= ~((1 << PC1)|(1 << PC2)|(1 << PC5)|(1 << PC7));        
8
  PORTA &= ~(1 << PA2);

So weit, so gut, das klappt ja auch - so ein bisschen. Ich hab' zum 
Beispiel an PA1 nur 2,6V statt 3,3V, wie ich erwartet hätte. An den 
übrigen PC-Ausgängen stimmt der High-Pegel auch. PA6 macht auch die 
volle Ausgangsspannung, PA5 dagegen funktioniert überhaupt nicht.

Woran mag das liegen?

Was mich auch ein bisschen überrascht ist, dass mein GND-Potential bei 
0,2V liegt. Sehr merkwürdig.

Einen schönen Abend noch

Kai

von Andreas K. (a-k)


Lesenswert?

Könnte es sein, dass du AVCC vergessen hast?

von Andreas K. (a-k)


Lesenswert?

Kai wrote:

> Was mich auch ein bisschen überrascht ist, dass mein GND-Potential bei
> 0,2V liegt. Sehr merkwürdig.

Da man üblicherweise gegenüber GND misst, misst du also 0,2V gegenüber 
GND. Oder auch GND!=GND. Da würde ich mal drüber nachdenken.

von Alex B. (Firma: Ucore Fotografie www.ucore.de) (alex22) Benutzerseite


Lesenswert?

Ich vermute mal, dass er diese 0,2V direkt am GND-Pin des Controllers 
gegenüber dem negativen Pol der Versorgungsspannungsquelle misst. Aber 
darüber kann natürlich nur er uns Aufschluss geben.
Zu den 2,6V bei High-Pegel: Liegt das nicht noch innerhalb der 
Spezifikationen des Datenblatts?

Schöne Grüße,
Alex

BTW: Welche Spannung misst du denn zwischen VCC und GND direkt am 
Controller? Müssten deinen Angaben zu Folge ja ca. 3,1V sein, evtl. 
sogar noch weniger...

von Kai (Gast)


Lesenswert?

Ok, der Fehler mit dem falschen GND-Potential war in der Tat ein 
bisschen, naja, blöd. Ich hatte das Multimeter direkt am Netzteil 
angeschlossen, von dort ging es dann mit einem (etwas längeren) Kabel 
zur Platine. Etwas geschickter Messen zeigt mir jetzt auch genau die 
3,3V Vcc die ich sehen wollte.

AVcc habe ich in der Tat nicht angeschlossen, gerade nochmal nachgelesen 
- im Datenblatt wird zwar empfohlen das auf Vcc zu legen, es soll doch 
aber eigentlich nur Supply für den ADC sein. Ich werde jedenfalls gleich 
mal versuchen da noch Vcc dran zu hängen.

Auf alex22s Anregung hin habe ich gerade nochmal die Spezifikation für 
"Output High" gelesen, es könnte tatsächlich sein dass meine (eben 
nochmal gemessenen) 2,48V am unteren Rand, aber innerhalb der 
Spezifikation sind (min 2,3V bei 3V Vcc). Merkwürdig finde ich nur, dass 
es nur gerade einen Port betreffen soll, die Nachbarn funktionieren ja 
genau wie ich mir das vorstelle. Eine nennenswerte ohmsche Belastung 
sehe ich auch nicht. Gibt es einzelne Elemente (Dioden, Widerstände, 
FETs), die man an einem einzelnen Ausgang zerstören kann?

Ich werde dann mal ein bisschen weiter suchen, vielen Dank für Eure 
Unterstützung soweit!

von Kai (Gast)


Lesenswert?

So, AVcc angeklemmt, wo vorher nur 2,48V waren liegen jetzt auch 3,3V, 
großartig :) Auch wenn ich nicht so ganz verstanden habe woran das 
liegt. Nur PA5 tut immer noch nicht, da ist "High" ziemlich genau 
0,0V...

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.