mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Port C am ATmega8


Autor: R. Strub (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen

Bei meinem ATmega8 habe ich das Problem, dass wenn ich auf Pins des Port 
C den High-Pegel anlege, ich eine Spannung von zwischen 0.8-3 Volt (je 
nach Pin unterschiedlich, jedoch immer gleich) messen kann.

Bei den Ports B und D erhalte ich stehts 5 Volt, wie der Chip auch 
gespiesen wird.

Codeausschnitte:
DDRB = 0x0;
DDRC = (1<<DDC4)|(1<<DDC3)|(1<<DDC2)|(1<<DDC1);
DDRD = (1<<DDD4)|(1<<DDD3)|(1<<DDD2)|(1<<DDD1)|(1<<DDD0);

PORTC |= _BV(1);
PORTC |= _BV(2);
PORTC |= _BV(3);
PORTC |= _BV(4);

Kennt jemand das Problem?
Danke schon im Voraus

R. Strub

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
R. Strub wrote:
> Bei meinem ATmega8 habe ich das Problem, dass wenn ich auf Pins des Port
> C den High-Pegel anlege, ich eine Spannung von zwischen 0.8-3 Volt (je
> nach Pin unterschiedlich, jedoch immer gleich) messen kann.
>
> Bei den Ports B und D erhalte ich stehts 5 Volt, wie der Chip auch
> gespiesen wird.

Bist Du sicher, dass die Versorgungsspannung anliegt? PortC wird nicht 
von VCC versorgt sondern von AVCC. Es gehören immer alle GNDs und VCCs 
angeschlossen.

...

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Falk wrote:
> JTAG Fuse!
>
> http://www.mikrocontroller.net/articles/ATmega
>
> MFG
> Falk

Mega8 und JTAG???

War wohl wieder mal 'n Aufmerksamkeitstest, oder?

...

Autor: Holger Krull (krulli) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Falk wrote:
> JTAG Fuse!

ohje.... Der Mega8 hat aber kein JTAG Interface. Demzufolge auch keine 
JTAG Fuse.

Edit: Mist, wieder war ich zu langsam ;)
Hallo ...Hannes...

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Mist, wieder war ich zu langsam ;)

Mach Dir nix draus, das passiert mir auch immer wieder. Ist mir aber 
nicht wichtig, bin schließlich Lego-Dingsbums, ähh Legastheniker.

Gruß übern Bach...

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Hannes Lux (hannes)

>Mega8 und JTAG???

Uuups. Hab ihc da was übersehen? ;-)
Vielleicht isses AVCC?

MfG
Falk

Autor: déjà vu (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
vielleicht. vielleicht liegts aber auch am nicht angeschlossenen AVCC.

Autor: R. Strub (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
AVcc liegt auf +5V ... genau wie der Pin 7 (Vcc)

JTAG is wohl eher nicht der Fall ;)

Andere Ideen?
Gruss R. Strub

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Falk wrote:
> @ Hannes Lux (hannes)
> Uuups. Hab ihc da was übersehen? ;-)

Durchaus möglich. Vielleicht ja das hier:
Beitrag "Re: (Adress-) Springen im SRAM"

;-)

...

Autor: Johannes A. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Machst Du was mit dem ADC? Und wenn ja, auf welchem Level liegt AREF?

Ich hatte mal das Problem, dass unbenutzte ADC-Eingänge, die an AVCC 
lagen, welche höher war als die AREF, bei jedem(!) Ändern von ADMUX 
äußerlich messbare Spikes an den benutzten ADC-Eingängen bewirkten, die 
mir die Messungen versauten.

Vielleicht ist ja auch das Umgekehrte möglich, also dass eine AREF < 
AVCC auf die digitalen C-Outputs durchschlägt?!?

Gruß Johannes

Autor: R. Strub (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ARef ist zusammen mit AVcc und Vcc auf +5V ... der ADC selber brauch ich 
(noch) nicht.

Gruss R. Strub

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
R. Strub wrote:
> ARef ist zusammen mit AVcc und Vcc auf +5V ... der ADC selber brauch ich
> (noch) nicht.
AREF hat an VCC nichts verloren! Da gehört allerhöchstens ein 
100nF-Kondensator gegen Masse dran.

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Hannes Lux (hannes)

>> Uuups. Hab ihc da was übersehen? ;-)

>Durchaus möglich. Vielleicht ja das hier:
>Beitrag "Re: (Adress-) Springen im SRAM"

>;-)

Was du immer so für Leichen ausgräbst . . .;-)

MFg
Falk

Autor: Reto Strub (rstrub)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hm ... wie sieht's denn aus, wenn ich Spannungen am ADC messen will vom 
0 - 5 Volt?

Weil irgend wo gibt's ja da so ne Formel

Als was muss/kann ich dann Vref annehmen, wenn ich Aref mit nem C auf 
Masse setz?

Gruss Reto

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Reto Strub (rstrub)

>Als was muss/kann ich dann Vref annehmen, wenn ich Aref mit nem C auf
>Masse setz?

Das hängt von der Einstellung des ADC und deiner Aussenbeschaltung ab.

MfG
Falk

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Als was muss/kann ich dann Vref annehmen, wenn ich Aref mit nem C auf
> Masse setz?

Exakt das, was Du mittels ADMUX ausgewählt hast. Mit ADMUX lässt sich ja 
neben Messquelle und Ergebnisformatierung auch die Referenzquelle 
einstellen.

Der C von AREF nach GND soll die intern ausgewählte AREF glätten 
(reinigen).

...

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt nur einen einzigen Fall, in dem man an AREF etwas anderes 
anschließt als besagten Kondensator, und das ist, wenn man eine extern 
vorgegebenen Referenzspannung verwenden will, die nicht intern vom 
Controller zur Verfügung gestellt wird. AVCC ist intern über die 
REFS-Bits als Referenz wählbar und hat deshalb nichts am AREF-Pin 
verloren.

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ergänzung:

Johannes M. wrote:
> Es gibt nur einen einzigen Fall, in dem man an AREF etwas anderes
> anschließt als besagten Kondensator, und das ist, wenn man eine extern
> vorgegebenen Referenzspannung verwenden will, die nicht intern vom
> Controller zur Verfügung gestellt wird.

Wobei ich dabei auf den Kondensator nicht verzichten würde, ich würde 
also die externe Referenzspannung zusätzlich zum Kondensator 
anschließen.

> AVCC ist intern über die
> REFS-Bits als Referenz wählbar und hat deshalb nichts am AREF-Pin
> verloren.

...

Autor: Reto Strub (rstrub)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK ... hab nun AVref von AVcc weggenommen und mit einem 100n Kondensator 
gegen GND verlötet. Leider ohne sichtbaren Erfolg. An Pin 27 (z.B.) habe 
ich weiterhin 0.88 Volt bei einem High-Pegel.

Sonst noch wer ned Idee?

Gruss Reto

PS: Hier mal noch nen Blick ins Schema (Vref ist hier noch 
falsch):http://img172.imageshack.us/img172/1504/atmega8go8.gif

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
TWI (TwoWireInterface) benutzt? Vielleicht unabsichtlich? Das kann die 
normalen Portfunktionen überfahren.

Autor: Johannes A. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich war ein paar Tage nicht da, deshalb erst heute:

Beim Blick auf das Schaltbild kommt mir noch eine, zugegeben, ziemlich 
dumme Idee: Hat IC4 überhaupt eine (passende) VCC an Pin 16 und GND an 
Pin 8? Wenn nicht, z.B. infolge einer kalten Lötstelle, benehmen sich 
selbst CMOS-Chips höchst merkwürdig...

Und @ Johannes M. ein klares Jein. Mit beiden REFS-Bits auf 0 muss AREF 
unbedingt an einer externen Spannung liegen, auch wenn es die AVCC ist. 
Das war zu Prä-Mega8-Zeiten sogar ein Muss, und dazu gab es auch eine 
AppNote von Atmel "Replacing the AT90S4433/2333 with the ATmega8" oder 
so. Aber ok, die Zeiten sind vorbei ;-)

Gruß Johannes

Autor: STK500-Besitzer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Mit beiden REFS-Bits auf 0 muss AREF unbedingt an einer externen Spannung
>liegen, auch wenn es die AVCC ist.

Da Aref in diesem Fall die Referenzspannung liefert, ist die Aussage 
sinnfrei.
Sobald Aref nicht die Referenzspannung liefert (REF1:0 > 0), sollte da 
keine Spannung angelegt werden, weil es sonst zu einem Kurzschluß 
zwischen der intern eingestellten und der externen Spannung kommt. (Auch 
wenn der "Ausgang" recht hochohmig ist, da es sich dabei um einen 
Eingang handelt.)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.