Nicht benötigte Ports beim µC wie verschalten?

Gast #2584970
Lesenswert?

Hallo zusammen,
ich glaub, ich hab mal ne typische Anfängerfrage.
Wie sieht die elektrische Schaltung bei einem µC aus, bei dem nicht alle 
Ports benötigt werden.
Ich nehme an, ohne Bezugsmasse sollte man Sie nicht anschließen, wegen 
EMV, usw.
Ist es am besten bzw. am einfachsten, wenn alle nicht benötigen Ports 
als Ausgänge definiert werden und die internen Pull-up Widerstand als 
aktiv definiert werden?
Danach kann man alle Ausgänge mit Masse verbinden, oder? Hoffe ich bin 
nicht ganz auf dem falschen Dampfer. :-)
Gruß und Dank.
Thomas
#2584979
Lesenswert?

Hat man als Anfänger keine anderen Sorgen?
Erstmal kannst du sie einfach offen lassen und nicht beachten.
Grundsätzlich können sie dann aber als Antenne fungieren und andauernd 
umschalten was intern zu einem höheren Stromverbrauch führt. Darum kann 
man die internen Pullups aktivieren. Dann haben sie einen definierten 
Zustand.
Aber sie dann noch auf Masse zu legen macht überhaupt keinen Sinn.

gruß cyblord
Gast #2584981
Lesenswert?

siehe Datenblatt, im allgemeinen: auf PCB zwar Pad, aber keinen 
Leiterzug vom (zum) pad
entweder
Ausgang, low oder high
oder
Eingang, pull up oder down.

bei einigen "speziellen" Ports (JTAG, unbenutzte Takteingänge,..) sollte 
dias irgendwo im Datenblatt erwähnt sein.

mfg
#2584986
Lesenswert?

@  Thomas H. (Gast)

>Wie sieht die elektrische Schaltung bei einem µC aus, bei dem nicht alle
>Ports benötigt werden.

Wweitrangig.

>Ich nehme an, ohne Bezugsmasse sollte man Sie nicht anschließen, wegen
>EMV, usw.

???

>Ist es am besten bzw. am einfachsten, wenn alle nicht benötigen Ports
>als Ausgänge definiert werden

Kann man machen.

> und die internen Pull-up Widerstand als
>aktiv definiert werden?

Geht beides gleichzeitig nicht, ist auch sinnlos.

ENTWEDER Ausgang ODER Pull-Up.

>Danach kann man alle Ausgänge mit Masse verbinden, oder?

Oder. Wenn man die Ausgänge per SOftware/Fehler wahtever auf HIGH 
schaltet, gibt es einen schönen Kurzschluss.

Lass sie offen und gut.

MFG
Falk
Moderator Persönliche Seite #2584993
Lesenswert?

Thomas H. schrieb:

> Ist es am besten bzw. am einfachsten, wenn alle nicht benötigen Ports
> als Ausgänge definiert werden und die internen Pull-up Widerstand als
> aktiv definiert werden?

Ausgang und interner Pull-Up-Widerstand schließen sich aus. Du kannst 
nur eines davon machen. Also meinst Du Eingang, nicht Ausgang.

> Danach kann man alle Ausgänge mit Masse verbinden, oder?

Auch hier ist es besser, sie nur dann mit Masse zu verbinden, wenn sie 
als Eingang beschaltet werden. Dann aber ohne Pullups. Diese wären 
hinfällig.

Wenn Du die Pins wirklich auf Ausgang schaltest, sie dann auf High-Pegel 
setzt und dann noch mit Masse verbindest, hast Du nichts anderes als 
einen kleinen aber feinen Heizkörper, der das gar nicht so recht mag, 
was Du mit ihm veranstaltest ;-)

Um auf Deine ursprüngliche Frage zurückzukommen: Es gibt 3 
Möglichkeiten, die offenen Pins auf definierten Pegel zu bekommen:

1. Als Ausgang schalten und nicht anschließen
2. Als Eingang mit PullUp schalten und nicht anschließen
3. Als Eingang ohne PullUp schalten und mit GND oder Vcc verbinden

Was davon am sinnvollsten ist, können Dir nur die Experten sagen. Ich 
bin keiner ;-)

Gruß,

Frank
Gast #2585007
Lesenswert?

Vielen Dank für die schnellen und umfangreichen Antworten.

Falk Brunner schrieb:
> Wenn man die Ausgänge per SOftware/Fehler wahtever auf HIGH
> schaltet, gibt es einen schönen Kurzschluss.

Genau das wollte ich vermeiden. Genauso dass es irgendwie als Antenne 
fungiert.

Werde die Ports dann zur Sicherheit als Eingang mit Pull-up-Widerständen 
deklarieren und die Ports dann auf Masse legen. Danke.
Gast #2585016
Lesenswert?

Thomas H. schrieb:
> 1. Als Ausgang schalten und nicht anschließen
>
> 2. Als Eingang mit PullUp schalten und nicht anschließen
>
> 3. Als Eingang ohne PullUp schalten und mit GND oder Vcc verbinden

Sorry, hab ich jetzt erst gelesen. Ja, dann nehme ich deine dritte 
Variante.

Ja, ich hatte zu Beginn, Eingänge mit Ausgänge verwechselt. :-o
#2585043
Lesenswert?

1,2 und 3 sind alle gleich stromsparend. Unsinnig ist (mal) wieder die 
Wahl des OP

"Werde die Ports dann zur Sicherheit als Eingang mit 
Pull-up-Widerständen
deklarieren und die Ports dann auf Masse legen. Danke."

Denn dann fließt immer vollkommen sinnlos Strom durch den Pull-Up.

Aber jedem wie er es gern hätte.

MFG
Falk
#2585094
Lesenswert?

Du hast überall Leckströme. Egal was du machst. Die verwendete 
Schaltungstechnik verbraucht aber nunmal nur dann signifikant Strom wenn 
sie schaltet. Ganz im Gegensatz zu einer Kontruktion wo man unnötig 
Strom durch den Pullup jagt.

> Werde die Ports dann zur Sicherheit als Eingang mit Pull-up-Widerständen
> deklarieren und die Ports dann auf Masse legen. Danke.
Bitte. Du hast dir die dümmste Möglichkeit rausgesucht. Im Gegensatz zu 
allen Posts (auch ich habe bereits geschrieben dass dies Quatsch ist).
Also wenn du sowieso nicht liest warum fragst du dann überhaupt? Machs 
doch gleich so wie du denkst (und zwar falsch).
#2585126
Lesenswert?

Nochmal zum mitmeisseln:

> 2. Als Eingang mit PullUp schalten und nicht anschließen

ist die Beste™ Wahl.

Weil:
- Kein Stromverbrauch im Ausgangs-Treiber/Pullup, da Pin nicht 
angeschlossen
- Kein Stromverbrauch im Eingangs-Schmitt-Trigger, da definiertes 
Potential.
- Kein Kurzschluss wenn Port ausversehen als Ausgang definiert wird
- Kein Kurzschluss wenn man ausversehen mit der 
Messpitze/Oszitastkopf/... abrutscht.
Gast #2585504
Lesenswert?

> 2. Als Eingang mit PullUp schalten und nicht anschließen

Das Nichtanschließen hat noch weitere Vorteile:

- Man muss keine Leiterbahnen zu nichtbenutzen Pins routen --> weniger 
Aufwand mit dem Platinenlayout.

- Auf einseitigen Platinen kann man nichtbenutzte Pins anhand ihrer 
isolierten Pads erkennen. Ist doch auch nett.

- Möchte man später einen ungenutzen Pin doch noch verwenden, ist es 
sicher angenehmer, das dann sofort tun zu können (per drangelötetem 
Draht), ohne den Pin erst freifräsen zu müssen.
Gast #2586426
Lesenswert?

Hallo,
In irgendeiner App-Note irgend eines Herstellers (nein Falk ich weiß die 
Quelle nicht mehr) wurde empfohlen die unbenutzten Pins auf GND zu legen 
und als Ausgänge Low zu schalten. Damit entstehen zusätzliche 
GND-Verbindungen. Was ist davon zu halten?

mfg Stefan
#2586439
Lesenswert?

AVR-Datasheet

Unconnected pins

If some pins are unused, it is recommended to ensure that these pins 
have a defined level. Even though most of the digital inputs are 
disabled in the deep sleep modes as described above, floating inputs 
should be avoided to reduce current consumption in all other modes where 
the digital inputs are enabled (Reset, Active mode and Idle mode).
The simplest method to ensure a defined level of an unused pin, is to 
enable the internal pull-up.
#2586451
Lesenswert?

Stefan schrieb:
> In irgendeiner App-Note irgend eines Herstellers

Evtl. bei Xilinx (XC95xxx):
1
Each IOB provides user programmable ground pin capabil-
2
ity. This allows device I/O pins to be configured as additional
3
ground pins in order to force otherwise unused pins to a low
4
voltage state, as well as provide for additional device
5
grounding capability. This grounding of the pin is achieved
6
by internal logic that forces a logic low output regardless of
7
the internal macrocell signal, so the internal macrocell logic
8
is unaffected by the programmable ground pin capability.

Hat aber mit einem AVR nichts zu tun. Den zugehörigen 
AVR-Datenblatt-Ausschnitt hat ja Samuel schon gepostet.
Gast #2587032
Lesenswert?

Hallo Spess ,
vielen Dank für den Link. Aber :

>> Beitrag "Re: Unbenutzte AVR-Pins wie beschalten (EMV)?"

dieser Thread ended mit dem Tip :

>> Für die Entwicklungsphase würde ich beim Pullup bleiben. Für die
>> entgültige Schaltung kann es sinnvoll sein Pins als Ausgang und low zu
>> setzen und dann auch extern an GND anzuschließen. Damit hat man dann
>> eine zusätzliche GND anbindung. Besonders bei Chips wie dem 2313 kann da
>> günstig sein, weil da die GND und VCC Pins weit auseinander liegen.
>> Der Unterschied wird aber nicht groß sein.

Prinzipiell wird ja empfohlen während Messungen mit dem ADC an keinem 
Pin des entsprechenden Ports zu wackeln. Ich nutzte daher die 'freien' 
Pins eines analogen Ports nicht und lege diese auf GND. Ob das was 
bringt weiß ich nicht geschadet hat es aber bisher nicht. Daher die 
Frage weiß jemand ob es hilft. Vielleicht Anja?

mfg Stefan
#2594576
Lesenswert?

Ich hab interessehalber mal bei Microchip geguckt:
AN1416 - Low-Power Design Guide - Seite 15
http://ww1.microchip.com/downloads/en/AppNotes/01416a.pdf

> An unused I/O pin should be left unconnected, but configured as an output
> pin, driving to either state (high or
> low), or configured as an input with an external resistor
> (about 10 k) pulling it to VDD or VSS. If such a pin can
> be configured as an analog input, the digital input buffer
> is turned off, preventing the excess current consumption caused by a
> floating signal. Any of these methods
> will prevent the floating node case, minimizing power.

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