mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik falscher Portausgang?


Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo.
Ich habe gerade erst mit den AVR's angefangen und
habe dementsprechend
 immer wieder
mit Anfängerfehlern
zu kämpfen.
Ich möchte mit einem AVR ein MOSFET ansteuern.
Deshalb habe ich noch einmal meine Portspannung gemessen.
Eigentlich müssten ja ca. 0 bzw. ca. 5V anliegen .
Ich habe also logischer Weise ein Messkabel an Gnd und
das andere an den entsprechenden Port angeschlosse.
Es liegen aber immer 0V an. Erst als ich das eine Kabel
an Vcc angeschlossen hatte lagen 3 bzw. 5V an.
Aber so kann ich doch keinen MOSFET ansteuern, oder?
Ich komme einfach nicht weiter und würde mich sehr
über eure Hilfe freuen.

Vielen Dank schon mal.
Stefan

Autor: Axel(ojojo) (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Stefan,

ich hab mal gerade schnell bei mir nachgemessen, und es müssten doch wie 
erwartet 0/5 Volt messbar sein.

Bist Du sicher, das Du im DataDirectionRegister die entsprechenden 
Beinchen als Ausgänge eingestellt hast ?


ldi r16, 0b11111111       ;alle Bits am Port B
out DDRB, r16                 ;als Ausgang schalten

Da komm ich auch manchmal durcheinander :-)

jo
Axel

Autor: Rene (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Stefan

Du solltest den Minuspol deines Messgerätes grundsätzlich mit GND 
verbinden, damit du eine quantitative Aussage über Spannungshöhe und 
Richtung erhälst. Desweiteren musst Du darauf schten, dass Du Dir einen 
Logic-Level-Mosfet besorgst, sonst macht der mit 5 Volt an seinem Gate 
noch nicht viel. Das gleiche Problem hatte ich auch mal. Selbst ein 
Logic-Level-Fet wird bei 5 Volt am Gate noch nicht besinders 
niederohmig. Ich wollte ihn für einen LCD Hintergrundbeleuchtung nehmen, 
hat nicht funktioniert, dann bin ich einfach auf bipolare Transistoren 
umgestiegen. Meiner Meinung nach benötigst du einen Treiber um deinen 
Mosfet anzusteuern, oder Du nimmst einen selbstsperrenden p-Kanal Mosfet 
und legst seinen Drainanschluß an +12V.

Ciao René

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Axel.
Vielen Dank für deinen Tip.
Ich hatte doch tatsächlich genau das Falsche
in das DDR eingegeben.
An Portb und Portd liegen jetzt 0 bzw. 5V an.
Aber Portb funktioniert immernoch nicht.
Erst wenn ich das eine Kabel meines Messgerätes
an Gnd schließe liegen konstannt 0,5V an.
Wie kann das sein?

Stefan

Autor: Axel(ojojo) (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>An Portb und Portd liegen jetzt 0 bzw. 5V an.
>Aber Portb funktioniert immernoch nicht.

??? Geht "B" jetzt oder doch nicht ?


>Erst wenn ich das eine Kabel meines Messgerätes
>an Gnd schließe liegen konstannt 0,5V an.
>Wie kann das sein?

wie hast Du das denn vorher gemessen ?

Das Schwarze "Minuskabel" vom Messgerät muss doch immer an GND

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Axel.
Tut mir echt leid was ich für Misst
geschrieben habe.War wohl nicht ganz bei der Sache :-)
Ich meinte natürlich, dass Portc und Portd jetzt funktionieren
und an Portb immernoch kostant 0V anliegen. Nur wenn ich das eine
Kabel meines Messgerätes an Vcc anschließe liegen immer 0,5V an.
Allerdings brauche ich den Portb für mein Vorhaben und
kann auch überhaupt nicht verstehen warum nur Portb
nicht funktioniert. An meinem µC kann es auch nicht liegen
(ich habe es schon mit einem neuen probiert).

Stefan

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Axel.

Ich habe einfach einen PullUp-Widerstand angelötet
und jetzt funktioniert alles :-)
Vielen Dank für deine Hilfe.

Stefan

Autor: Axel(ojojo) (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Stefan !

Ich weiß es nicht genau, aber ich glaube, das die Ports sog. 
OpenCollector Ein/Ausgänge haben, die sind bei "1" Hochomig und es 
passiert nicht viel, egal, wo und was Du misst; und bei "0" wird Dein 
angebundenes Bauteil mit Masse(GND) verbunden.

Das Du einen PullUp-Wiederstand genommen hast, war genau richtig :-)

(wobei ich dachte, die AVRs hätten InternalPullUps) aber vielleicht 
zieht Dein Testaufbau auch schon irgendwo das Signal runter !?

Freut mich auf jedenfall sehr, dass es jetzt klappt bei Dir

jo
Axel

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.