zu geringe ausgangsspannung an den ports

Gast #119312
hi leutz,

ich hab da ein riesiges problem mit der ausgangspannung meines
controllers.ich hab ein programm auf meinem atmega8 laufen (wills hier
jetzt aber nicht weiter erklären)das soll in bestimmten abständen meine
ausgänge setzten. das läuft soweit ziemlich gut nur mein problem ist das
an den ausgängen nur eine spannung von max. 1,70 V anliegt. ich wollte
diese aber als eingänge für andere controller weiterbenutzen aber die
spannungen sind zu niedrig um richtig erkannt zu werden.hatte schonmal
jemand die selben probleme? ne lösung wäre vielleicht op's dazwischen
zuschalten aber das wäre ein ziemlicher aufwand.gibt es noch andere
möglichkeiten?.
ciao peter
Gast
Verd****, hast natürlich recht, richtig lesen würde wohl helfen...
Wie sieht denn die Beschaltung aus, sind die Ausgänge unbelastet?
Gast
;)

Also bei einem funktionsfähigen Mega an 5 V muss die High
Ausgangsspannung mindestens 4,2 V betragen. Wenn der Ausgangsstrom
nicht größer als 20 mA ist, muss irgendwas mit dem µC faul sein. Ich
sehe jedenfalls nicht, wie man das "falsch programmieren" kann...

Achja, wenn Port A verwendet wird, muss natürlich AVCC ordentlich
angeschlossen sein.
Gast
Oder es wurde vergessen, die Ports als Ausgang zu konfigurieren.
Dann schaltet man ja mit out PORTx,YY immer nur die Pull-Ups ein und
aus, was je nach Innenwiderstand der angeschlossenen Schaltung zu
solchen Effekten führen könnte.

Gruß
Ingo
Gast
hi leutz,

also ich schalte so:(mal für einen pin)

if (***)
{
led_on;
}...

in der header hab ich den pin so definiert:

#define led_on     PORTB|=(1<<0)
#define led_off     PORTB&=(unsigned char)(~(1<<0))

hab die spannung auch mal gemessen wenn nix angeschlossen ist und komme
trotzdem nur auf 1,7 V

ciao peter
Gast
oki,hier ist das programm

in der global.h sind die defin.
in der motor.c sind die programme womit die ausgänge gesetzt werden
und in der project_sol ist die main funktion
ciao peter
Angehängte Dateien:
Gast
defines sind bloss makros. die machen selber noch nichts. ausserdem
schalten die ja bloss den pin ein und aus. die richtung muss noch extra
in den DDRx registern gesetzt werden
Gast
Hast den reset - pin auf +5V gelegt???
sonst fährt der controller nämlich im dauer reset mode
Probier das mal aus
mfg klaus

Ps: wenn dass das Problem war dann antworte
Gast
hi klaus,

das programm läuft ja schon - also daran kann es nicht liegen.
kann es sein das ich zuviel über den controller laufen habe?
display, ds1302 und dann noch die weiteren 5 pins?

ciao peter
Gast
hi leutz,

ihr hattet recht es lag daran das ich vergessen hatte port b als
ausgang zu definieren.habs jetzt gemacht und siehe da es
funktionierte.
danke leute
ciao peter

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 22 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.