Forum: Mikrocontroller und Digitale Elektronik Pinout Arduino


You were forwarded to this site from EmbDev.net. Back to EmbDev.net
von Christoph B. (brandneraut)


Lesenswert?

Hallo liebes µC-Forum,

Ich taste mich gerade an die Analogeingabe mit einem ELEGOO UNO R3 und 
purem C heran. Auf diesem "Arduino"-Board befindet sich übrigens ein 
ATMEGA328P.
Ich möchte für die Analoeingabe eine externe Spannung verwenden. Im 
AVR-GCC Tutorial bin ich auf die Pins AREF und AVCC gestoßen. Wie ich 
herausgefunden habe, handelt es sich hierbei um Pins des ATMEGAs.
AREF finde ich auf dem Board problemlos - AVCC kann ich jedoch weder auf 
dem Board noch auf einem Pinout-Diagramm finden.
Kann es sein, dass dieser Pin des ATMEGAs garnicht auf einen eigenen Pin 
des "Arduinos" geführt wird?

mfg brandneraut

von Wolfgang (Gast)


Lesenswert?

Christoph B. schrieb:
> Kann es sein, dass dieser Pin des ATMEGAs garnicht auf einen eigenen Pin
> des "Arduinos" geführt wird?

Kann alles sein. Guck einfach in den Schaltplan zu deinem Board.

von H. H. (Gast)


Lesenswert?

Christoph B. schrieb:
> AVCC kann ich jedoch weder auf
> dem Board noch auf einem Pinout-Diagramm finden.
> Kann es sein, dass dieser Pin des ATMEGAs garnicht auf einen eigenen Pin
> des "Arduinos" geführt wird?

So ist es, der ist direkt am AVR mit Vcc verbunden.

von MaWin (Gast)


Lesenswert?

Christoph B. schrieb:
> AVCC kann ich jedoch weder auf dem Board noch auf einem Pinout-Diagramm
> finden

AVCC ist mit VCC also +5V verbunden.

Damit ist der Analogeingang nicht so genau und störungsfrei wie bei 
einer ordentlichen Schaltung, funktioniert aber auf dem Spielzeuglevel 
des Arduino.

Lego ist ja auch nicht so stabil wie eine Industriemaschine

von Wolfgang (Gast)


Lesenswert?

H. H. schrieb:
> So ist es, der ist direkt am AVR mit Vcc verbunden.

... üblicherweise über ein Filter, um eine saubere Spannung für den ADC 
zur Verfügung zu haben.

von Der verdammte Cookie ist schon wieder abgelaufen (Gast)


Lesenswert?

AVCC (Pin 20) geht auf dem Board direkt auf VCC (Pin 7) ist also nicht 
separat nutzbar.

von Christoph B. (brandneraut)


Lesenswert?

MaWin schrieb:
> AVCC ist mit VCC also +5V verbunden.
Wir reden hier von den Pins AVCC und VCC des ATmegas, also Pin 7 und Pin 
20? VCC ist also 5V - demnach darf ich also keine größere Spannung als 
5V an den Pin AREF des "Arduino" Boards anlegen. Hab ich das richtig 
verstanden?

: Bearbeitet durch User
von Joachim B. (jar)


Lesenswert?

Christoph B. schrieb:
> VCC ist also 5V - demnach darf ich also keine größere Spannung als
> 5V an den Pin AREF des "Arduino" Boards anlegen?

man darf sowieso nie eine größere Spannung an AREF anlegen als VCC, 
siehe Datenblatt.
Bei einigen Pins bis VCC +0,5V
Aber zu AREF fand ich gerade nichts

https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf

von MaWin (Gast)


Lesenswert?

Christoph B. schrieb:
> demnach darf ich also keine größere Spannung als 5V an den Pin AREF des
> "Arduino" Boards anlegen.

Nein, natürlich nicht.

Üblicherweise legt man gar nichts an AREF an  sondern schaltet intern im 
ATmega328 entweder +5V oder +1.1V drauf.

Die Theorie, von aussen eine viel genauere Referenzspannung vorgeben zu 
können, ist beim Arduino eh Perlen vor Säue

von Christoph B. (brandneraut)


Lesenswert?

MaWin schrieb:

> Üblicherweise legt man gar nichts an AREF an  sondern schaltet intern im
> ATmega328 entweder +5V oder +1.1V drauf.
Die +1.1V sind auf die interen Referenzspannung zurückzuführen, richtig?
Die +5V kommen von AVCC, oder?

> Die Theorie, von aussen eine viel genauere Referenzspannung vorgeben zu
> können, ist beim Arduino eh Perlen vor Säue
Genau das wäre jetzt meine nächste Frage gewesen: also wieso legt man 
eine Spannung von +5V an AREF an, wenn diese bereits zur Verfügung 
steht. Macht man das nur bei Arduino Boards oder generell nicht?

: Bearbeitet durch User
von Veit D. (devil-elec)


Lesenswert?

Hallo,

lies doch mal das Manual. Wieviele interne Vref sind beim ATmega328P 
vorhanden? Nur eine Einzige, nämlich 1,1V. Alles andere muss von außen 
an AREF angeklemmt werden. Dafür ist der Pin da. Beim Arduinoboard liegt 
Ub an AREF. Damit kannst du beim ATmega328P zwischen äußeren "Ub" und 
internen 1,1V für Vref umschalten bzw. auswählen.

von Wolfgang (Gast)


Lesenswert?

Christoph B. schrieb:
> Genau das wäre jetzt meine nächste Frage gewesen: also wieso legt man
> eine Spannung von +5V an AREF an, wenn diese bereits zur Verfügung
> steht.

Das tut man gerade nicht, außer man möchte eine externe Referenz 
verwenden. An ARef kommt ein Kondensator und der Rest wird durch die 
Konfiguration mit dem ADMUX-Register erledigt. (DS Kap. 24.5.2 ADC 
Voltage Reference)

von Wolfgang (Gast)


Lesenswert?

Veit D. schrieb:
> Nur eine Einzige, nämlich 1,1V. Alles andere muss von außen
> an AREF angeklemmt werden.

Lies dir mal die Beschreibung zum  ADMUX-Register durch (REFS1..0 = 01 
schaltet AVCC als Referenz)

von Christoph B. (brandneraut)


Lesenswert?

Wolfgang schrieb:
> Lies dir mal die Beschreibung zum  ADMUX-Register durch (REFS1..0 = 01
> schaltet AVCC als Referenz)
Also gibt es doch 2 interne Referenzspannungen und nicht nur eine? 
Einmal +1.1V (oder +2.56V) und einmal +5V vom Pin AVCC, der ja beim 
Arduino mit dem Pin VCC verbunden ist. Dieser wiederum hat beim 
ATmega328P eine Spannung von +5V, korrekt? Das haben ja deine Vorredner 
behauptet, dass Pin AVCC und Pin VCC verbunden sind.

von Wolfgang (Gast)


Lesenswert?

Christoph B. schrieb:
> Also gibt es doch 2 interne Referenzspannungen und nicht nur eine?

Wenn du eine von außen an AVCC angelegte Spannung als "interne 
Referenzspannungen" bezeichnest, weil sie über den Multiplexer auf ARef 
aufgeschaltet wird, hast du Recht.
AVCC versorgt übrigens nicht nur den Analogteil, sondern auch die DIOs 
PC3:0

von Einer K. (Gast)


Lesenswert?

Christoph B. schrieb:
> Das haben ja deine Vorredner
> behauptet, dass Pin AVCC und Pin VCC verbunden sind.

Tipp:
Es gibt einen Unterschied zwischen "Behauptung" und Realität.

Tipp2:
Der Schaltplan bildet die Realität ab.


So, jetzt sage mir doch bitte, was ist dein "wirkliches" Problem?
Was ist der Grund, dass du hier "so" fragst?

von So stehts geschrieben (Gast)


Lesenswert?

Zitat aus dem Atmega328-Datenblatt:

The ADC converts an analog input voltage to a 10-bit digital value 
through successive approximation. The
minimum value represents GND and the maximum value represents the 
voltage on the AREF pin minus 1 LSB.
Optionally, AVCC or an internal 1.1V reference voltage may be connected 
to the AREF pin by writing to the
REFSn bits in the ADMUX Register.

Daraus folgt: Es ist eine Scheißidee, den AVCC-Anschluß fest mit +Ub zu 
verbinden, wenn die interne Referenzspannung von 1,1 Volt gewählt wurde.

Dann knallt es.

von Stefan F. (Gast)


Lesenswert?

So stehts geschrieben schrieb:
> Es ist eine Scheißidee, den AVCC-Anschluß fest mit +Ub zu
> verbinden, wenn die interne Referenzspannung von 1,1 Volt gewählt wurde.

> Dann knallt es.

Es ist keine gute Idee, aber knallen tut da gar nichts, weil die interne 
Referenz nur wenig Strom liefert und kurzschlussfest (sowohl nach GND 
als auch nach VCC) ist.

von So stehts geschrieben (Gast)


Lesenswert?

Stefan ⛄ F. schrieb:
> So stehts geschrieben schrieb:
>> Es ist eine Scheißidee, den AVCC-Anschluß fest mit +Ub zu
>> verbinden, wenn die interne Referenzspannung von 1,1 Volt gewählt wurde.
>
>> Dann knallt es.
>
> Es ist keine gute Idee, aber knallen tut da gar nichts, weil die interne
> Referenz nur wenig Strom liefert und kurzschlussfest (sowohl nach GND
> als auch nach VCC) ist.


Sagst Du. Du sagst eine ganze Menge. Jeden Tag, jede Minute.

Ich halte mich da lieber an die Angaben des Herstellers .

von Christoph B. (brandneraut)


Lesenswert?

Arduino Fanboy D. schrieb:
> So, jetzt sage mir doch bitte, was ist dein "wirkliches" Problem?
> Was ist der Grund, dass du hier "so" fragst?
Meine 1. Frage war, ob es auf dem Arduino Board überhaupt einen vom 
ATmega herausgeführten AVCC Pin gibt, da dieser im AVR-GCC Tutorial 
erwähnt wurde.

Meine 2. Frage war, welche Spannung der Pin VCC führt. Kannst du mir das 
vielleicht beantworten? Im Datenblatt des ATmegas steht VCC = 5V. Hab 
ich das korrekt entnommen? Falls nicht, entschuldige ich mich schon mal.

Da manche hier behauptet haben, dass AVCC mit VCC verbunden sei, ergab 
sich eben die Frage, welche Spannung der Pin AVCC jetzt tatsächlich 
führt. Dies wollte ich ja nur wissen, da man die Spannung von AVCC auch 
als Referenzspannung verwenden kann. Beträgt jetzt demnach die Spannung 
an AVCC auch 5V, oder nicht?

von Wolfgang (Gast)


Lesenswert?

So stehts geschrieben schrieb:
> Ich halte mich da lieber an die Angaben des Herstellers .

Und was sagt der genau?
An ARef kann man eine externe Spannung anlegen, die bei ADMUX.REFS1..0 = 
00 als Referenzspannung für den ADC dient, warum nicht AVCC oder VCC. 
Schon für vernünftige Funktion empfiehlt es sich, ADMUX passend zu 
setzen.

So stehts geschrieben schrieb:
> Es ist eine Scheißidee, den AVCC-Anschluß fest mit +Ub zu
> verbinden

Unfug, wenn du das meinst, was du schreibst.
Natürlich darf man AVCC mit VCC (="+Ub") verbinden.

von Stefan F. (Gast)


Lesenswert?

So stehts geschrieben schrieb:
> Ich halte mich da lieber an die Angaben des Herstellers .

Das ist auch besser so. Nur nicht übertreiben, bei den Ableitungen 
daraus.

Was würdest du denn sagen, wie sich ein ATmega16 mit 6 Volt 
Versorgungsspannung verhält? "Knallt" das auch, oder Fackelt er dann 
schon ab?

von Einer K. (Gast)


Lesenswert?

Christoph B. schrieb:
> Meine 2. Frage war, welche Spannung der Pin VCC führt.

Das ist doch klar!!!
Dort liegt die Versorgungsspannung des Boards an!

Vin oder RAW geht über einen 5V Regler daran.
V-USB über eine Schutzschaltung.

Es ist also an Vcc Pin mit irgendeiner Spannung von ca 5,1 bis 4,4V zu 
rechnen.

Bitte schaue dir den Schaltplan an.
Er liegt öffentlich aus.

----

Du möchtest mir also nicht sagen, "Warum" du das fragst.
Ich vermute, dass da ein falsches Bild in deinem Kopf rumspukt.
Sehe aber nicht, welches.

von Wolfgang (Gast)


Lesenswert?

Christoph B. schrieb:
> Im Datenblatt des ATmegas steht VCC = 5V

Nein, im Datenblatt des ATmega328 steht, dass VCC zwischen 1.8V und 5.5V 
liegen soll. Wenn das bei dir anders ist, verlinke mal deine Version

von Stefan F. (Gast)


Lesenswert?

Wolfgang schrieb:
> Nein, im Datenblatt des ATmega328 steht, dass VCC zwischen 1.8V und 5.5V
> liegen soll.

Der befindet sich auf einem ELEGOO UNO R3 Board, das mit zu 
berücksichtigen ist.

von Christoph B. (brandneraut)


Lesenswert?

Wolfgang schrieb:
> Nein, im Datenblatt des ATmega328 steht, dass VCC zwischen 1.8V und 5.5V
> liegen soll. Wenn das bei dir anders ist, verlinke mal deine Version
Ich hab jetzt nochmal nachgesehen und bemerkt, dass ich mich grob 
verlesen habe. Es handelte sich hierbei um eine Condition für eine 
andere Größe... also wenn VCC = 5V, dann xy .... was für ein peinlicher 
Fehler...

von H. H. (Gast)


Angehängte Dateien:

Lesenswert?

Aus dem Datenblatt des ATMEGA328P:

1.1.7 AVCC
AVCC is the supply voltage pin for the A/D converter, PC3:0, and ADC7:6. 
It should be externally connected to VCC, even if
the ADC is not used. If the ADC is used, it should be connected to VCC 
through a low-pass filter. Note that PC6..4 use digital
supply voltage, VCC.
1.1.8 AREF
AREF is the analog reference pin for the A/D converter.

Und im Anhang die interne Verschaltung.

von Christoph B. (brandneraut)


Angehängte Dateien:

Lesenswert?

Arduino Fanboy D. schrieb:
> Vin oder RAW geht über einen 5V Regler daran.
> V-USB über eine Schutzschaltung.
>
> Es ist also an Vcc Pin mit irgendeiner Spannung von ca 5,1 bis 4,4V zu
> rechnen.
>
> Bitte schaue dir den Schaltplan an.
> Er liegt öffentlich aus.
Im Anhang befindet sich ein Ausschnitt aus dem Schaltplan. Genau das 
meintest du, oder? Jetzt versteh ich's :)

von Einer K. (Gast)


Lesenswert?

Christoph B. schrieb:
> Jetzt versteh ich's :)

Schön, dass ich dir einen Hinweis liefern konnte.
Aber dein eigentliches Problem habe ich weiterhin nicht verstanden.

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.