mikrocontroller.net

Forum: Analoge Elektronik und Schaltungstechnik Versorgungsspannung unsauber- Was tun?


Autor: daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
meine Versorgungspannung ist mit einem Sinussignal von 100 HZ
überlagert, wie kann ich diese Frequens herausfiltern, dass die
Spannung  konstant ist.
Ist es sinnvoll 1,5 uF gegen Masse und dahinter eine Z-Diode mit der
gewünschten Stabilisierung zu schalten?

Für Hinweise sehr dankbar
daniel

Autor: Unbenannter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
oder die 100Hz halbieren und dann ein 50Hz Filter einbauen. Am besten
aktives Filter mit 19dB/Oktave. Oder am Bahnhof anrufen.

Autor: Michael U. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich kenne Deine Stromversorgung nicht, klingt nach dem üblichen
Bummspannungsanteil bei Brückengleichrichtung in einem ungeregelten
Steckernetzteil.
Was willst Du mit der Spannung machen?
Mit 1,5µ erreichst Du bei 100Hz garnichts. Z-Diode ginge, wenn die
Stromaufnahme nicht zu groß, Du müßtest dann mit etwa 50-100% mehr
Eingangsspannung rangehen, Vorwiderstand der Z-Diode passend berechnen
usw.
Ansonsten, wenn Du ca. 7-8V zur Verfügung hast, einen passenden
Festspannungsregler nehmen, für 5V bis max. 1A den 7805.
Die 100n am 7805 nicht vergessen, Verlustleistung beachten, bei 8V rein
und 5V raus sind es bei 0,15A (8-5)*0,15=0,45W, die schafft ein 7805
gerade noch so ohne Kühlkorper (wird dann schon schön heiß).

Gruß aus Berlin
Michael

Autor: Hubert.G (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die 100Hz kommen vom Brückengleichrichter. 1,5µF sind etwas wenig, es
kommt auf den Stromverbrauch an, man rechnet etwa 1000µ je Ampere. Von
einer Z-Diode würde ich abraten, wie würdest du diese anschalten? Wie
würde der Strom durch die Diode begrenzt?

Autor: daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
sorry meinte 1,5 mF. Würde die Z-Diode so gegen Masse schalten, dass
sie in Sperrichtung gegen VCC liegt. Habe schon zwei LM78xx drin, einer
auf 12 V und einer auf 5 V hab keine 100 nF, nur 220nF die hab ich
jeweils vor und hinter beide geschalten. Hab schon 1000 uF am Eingang,
dann der 7812 jeweils 220nF davor und danach, dann der 7805 mit 220 nF
danach, dachte nun dass ich nun einen 1,5mF oder 3,9mF (hab gerade
welche da) Kondensator gegen Masse hänge. wollte nach der
Eingangsglättung 1mF eine Spule schalte die als Tiefpass filtert,
wusste aber nicht welche Induktivität sie aufweisen muss, bzw, hab
welche mit vielen Windungen auf Ferrit und einige mit sehr wenigen
Windg. nun dachte ich erst mal das mit dem 1,5 mF Kondensator hinter
den LM7805 mal sehen was das bringt.
Desweiteren wollte ich Taster über den geringst Möglichen pull-up
Widerstand gegen Masse schalten um die EMV-Einwirkung zu verringern.
Dachte so an 100 Ohm, weiss aber nicht was für einen Innenwid. der
ATmega8 am Pin hat.

Vielen Dank für die schnellen Antworten
daniel

Autor: Michael U. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

wenn Du sowieso schon mit 7812 und 7805 regelst, stimmt was nicht.
1000µ sollten selbst da reichen, wenn die Stromaufnahme nicht sehr hoch
ist und die Eingangsspannung damit nicht unter ca. 15V für den
12V-Regler fällt.
Ansonsten kannst Du natürlich die 1500µ noch dazu schalten (am
Eingang). Hinter einem Festspannungsregler keine großen Elkos, die
verschlechtern u.U. das Regelverhalten.

Wie groß ist denn Deine 100Hz Störspannung?

Gruß aus Berlin
Michael

Autor: daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank
Sie ist zumindest so gross das mein ATmega bei einer Software die die
Taster testen soll, völlig verrückt spielt. An den Eingängen mit
internen PULL-UP-Wid. an denen Taster hängen liegen nur 1,5V an die
Schwingt zwischen 0 und 1,5V ausserdem schwingt die Spannung an einem
Taster zwischen 0 -4,5 V. Habe das Testprogramm begefügt. Eigentlich
sollten LEDs getoggelt werden, wenn irgendein schalter gedrückt wird.
Aber die LEDs befinden sich im ständigen umschalten.
Habe dann gemessen mit dem Osszi und auf der Spannung eine 100Hz
schwingung festgestellt. die Pins werden von dieser Schwingung
beeinflusst. Das vermute ich zumindest. Ist alles auf einer
Loch-Raster-Platine, weiss das es da imense Störungen gibt. Deswegen
denke ich hat diese 100 Hz Kleinsignalschwingung solche auswirkungen
auf die Schaltung.
Habe leiderns nicht die Amplituden gemessen.


Daniel

Autor: daniel (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
achja das Programm

Autor: iihihuh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das kann auc

Autor: Karl heinz Buchegger (kbucheg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da stimmt was mit deiner Verschaltung nicht.
Wenn du schon 1000µF eingangsseitig vor dem 7812 und 7805
hängen hast, sollte da nichts mehr durchschlagen.

Male doch mal einen Schaltplan.

Autor: inoffizieller WM-Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Oder am Bahnhof anrufen.
Die Bahn fährt mit 16,667Hz. Also muß man da sechs Mal anrufen...

Autor: HenrikJ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nach dem was du geschrieben hast, müsste das wirklich an Glättung
reichen. Hast dich mit den Zehnerpotenzen vielleicht vertan?! Deine
1,5mF müssen schon recht groß sein (rein mechanisch).

Autor: daniel (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
wenn das schon genug geglättet ist,dann dürften doch nicht die LED's
so ein wirwar machen.Ausserdem habe ich festgestellt wenn ich mit
meinem Finger, irgendeinen Massepunkt berühre, hört das flackern der
LED's auf. Nur ab und zu schalten sie urplötzlich um. Hatte vorher
einen Mikrokontroller (ein paar wochen eher bestellt) auf dem selben
Sockel und bei ihm funktioniert alles mit den Tastern. Jeder hat 5V und
er reagiert auf Tastendruck mit der gewünschten Funktion.
Mich wundert es das der Mikrokontroller am Pin keinen sauberen
High-Pegel liefert. Ich habe drei neue bestellt und bei all diesen ist
es das selbe Problem, somit schliesse ich auf die Schaltung. Bzw. ich
habe etwas bei den Fuses übersehen. (Fuses so gelassen wie sie bei
Auslieferung waren, nur BrownOut ausgemacht, 1Mhz Takt).
Wenn ich nun extern die Pegel am Pin auf 5V lege dann müsste es auch
funktionieren. So denke ich mir das. Nur eine Frage hab ich dazu noch:
Die HI-Z, liegen zwischen Pin und Masse in uC. Reichen da 100 Ohm als
externer Pull-Up? Ich wollte ihn so klein wie möglich wählen, damit die
EMV-Einwirkung klein bleiben.

Die andere Frage dazu:
Warum liefert der uC nicht selbstständig die ca.5V am Ausgang bei
internen Pull-Ups? Statt dessen nur 1,5V oder 0,7 oder mal 4V mal 0V.

viele Dank daniel

Autor: Patrick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo daniel,

bei den Kapazitäten in deiner Stromversorgung kannst du Restwelligkeit
ausschliessen. Allerdings noch eine kleine anmerkung zu der Wahl deiner
Kondensatoren: 1000uF auf die ungeregelte Seite zu hängen und 3900uF auf
die Geregelte ist arg bedenklich. Wenn die Eingangsspannung weg ist kann
es sehr leicht passieren, dass auf der geregelten Seite eine höhere
Spannung liegt als auf der Eingangsseite. Dann sagt der
Längsttransistor im Regler leise Servus

Autor: Karl heinz Buchegger (kbucheg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die 3900 µF am 78L05 Ausgangsseitig waren keine gute Idee.
Ev. Hast du dir damit schon den Regler zerschossen.

Der 7805 mag es nämlich gar nicht, wenn an seinem Ausgang
eine höhere Spannung liegt als an seinem Eingang. Hast du
jetzt ausgangsseitig den 3900 µF und schaltest die Spannung
ab, dann können die 3900 µF die Ladung länger halten als
die 1000 µF eingangsseitig -> am Ausgang vom 7805 liegt
eine höhere Spannung an. Das kann (muss aber nicht) den
7805 zerstören.  Allerdings 1000µF am Eingang sollten
mehr als dicke reichen. Normalerweise rechnet man mit 1000 µF
pro 1A. Was aber helfen könnte ist: parallel zum 1000 µF noch
mal was kleineres, so 10µF oder 100µF schalten. Grund: Der
1000 µF ist doch recht träge.

Die 100 Ohm an den Tastern sind zu wenig. Mach da mal 1k oder
10k draus.  Bei 100 Ohm rinnen da immerhin bei gedrücktem
Taster 50 mA drüber. Das muss nicht sein. 10k reichen völlig
um den Eingang auf High zu halten.

Autor: FRAGENSTELLER (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
kann es vielleicht sein daß C1(1000µF) defekt ist ?

Autor: da_user (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
häng dir zu deinen 7805 parallel eine Diode in Sperrichtung. Sollte der
Fall eintreten, dass Ue<Ua schützt die Diode deinen Regler ;-)

Autor: daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
viele Dank für die Hinweise. Die Veränderungen habe ich noch nicht
gebaut, es war von mir erst mal ein Vorschlag.
Gut das ich ihn noch nicht verwirklicht habe :).
Die 100uF/35V werde ich parallel schalten. Wenn es dann immer noch
nicht geht werde ich vom Eingang zum Ausgang die Diode in Sperrichtung
klemmen. und dann Ausgangsseitig gegen Masse die 3900uF/6,3V.

@Fragensteller:
am Anfang war kein C1 drin, da befand sich die Schaltung wegen der
schlechten Eingangsspannung im Dauerreset. Und mit dem C1 ist dies nun
nicht mehr der Fall.

Daniel

Autor: Michael U. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

wo kommt eigentlich Deine Eingangsspannung her?
Wenn es Wechselspannung ist, sollte es bei Einweggleichrichtung eine
50Hz-Welligkeit geben, 100Hz spricht dafür, daß mehr oder weniger
gesiebte Gleichspannung ist.
Wie sieht denn die Spannung an C1 aus? Da sollten bei Deiner Last
weniger als 1V Brummspannung anliegen, sonst ist C1 taub, die Last zu
hoch (defekter Regler?) usw.
Nach dem 12V-Regler sind es nur noch mV.

Ich habe alles Mögliche schon an einem 7805 versorgt von einem
0815-Steckernetzteil auf 7,5V eingestellt, betrieben ohne zusätzliche
Siebung. Am Regler die 2x100n (220n geht auch), ein 10µ auf der
Leiterplatte wenn der Regler nicht mit auf der Leiterplatte des AVR
wohnte, die üblichen 100n an jedem IC.
Das reicht zur Not selbst noch für die Referenzspannung des AVR, um
einen Temperatursensor sinnvoll einlesen zu können.

Mit den internen PullUps und Tasten hatte ich bei üblichen
Testaufbauten (bis ca. 20cm Kabel dazwischen) auch noch keine
Probleme.

Gruß aus Berlin
Michael

Autor: daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Karl Heinz Buchegger

Ich wollte mit dem möglichst geringen Widerstand die EMV-Einwirkung
verringern. Da ich hier im Forum gelesen habe, Eingänge mit
niederohmigen Pull-Up Widerständen zu versehen um Störeinspeisungen
entgegen zuwirken.
1k Ohm scheinen da wohl dann der Kompromiss zwischen den beiden
Ansichstpunkten (geringer Verluststrom, EMV-Einwirkung) zu sein.

Weiss jemand eine mögliche Ursache warum der Controller bei internen
Pull-ups so einen undefinierten Pegel am Pin verursacht?

daniel

Autor: Karl heinz Buchegger (kbucheg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> und dann Ausgangsseitig gegen Masse die 3900uF

Würd ich nicht tun.
Wenn du das Gefühl hast, dass die 1000µF nicht reichen,
dann häng die 3900µF eingangsseitig zu den 1000µF dazu.

Die Siebung der Versorgungsspannung immer vor dem Eingang
des Reglers.
Sagen wir mal, deine Siebung reicht tatsächlich nicht aus
und da schlagen dir 0.5V von der Eingangs-Wechselspannung durch.
Kein Problem: Deine Eingangsspannung bewegt sich damit immer noch
zwischen 15.5V und 15V. Der 7812 vernichtet alles was über 12
Volt ist und macht auch mit dieser schwankenden Eingangsspannung
immer noch 12V. Solange du also Eingangsseitig immer über der
vom 7812 geforderten Eingangsspannung bleibst, kann diese Eingangs-
spannung (nahezu) aussehen wie sie will.
Erst dann wenn dein eingangsseitiger Elko nicht mehr nachkommt
und die Eingangsspannung auf, sagen wir mal 11V fällt, kann der
7812 nichts mehr unternehmen. Da hilft dir jetzt aber ein Kondensator
auf der Ausgangsseite auch nichts mehr. Was der Regler nicht mehr
ausgeregelt hat, kann der Kondensator auch nicht mehr ausbügeln.
Was weg ist,ist weg.

Autor: Karl heinz Buchegger (kbucheg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Weiss jemand eine mögliche Ursache warum der Controller bei
> internen Pull-ups so einen undefinierten Pegel am Pin verursacht?

So wie es aussieht ist deine Versorgunsspannung mies. Alles
was da dann dahinter hängt ist mehr oder weniger Zufall.

Ich tippe mitlerweile auch auf einen defekten C1 (1000µF).
Werden die 78xx eigentlich heiss?

Autor: Karl heinz Buchegger (kbucheg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Alles was da dann dahinter hängt ist mehr oder weniger Zufall.

Sollte heissen: Alle Effekte an Baugruppen die da dahinter
hängen sind mehr oder weniger Zufall.

Solange deine Versorgungsspannung nicht sauber auf 5V bleibt,
hat es keinen Sinn, sich über die Schaltung dahinter den
Kopf zu zerbrechen.

Autor: Stephan Henning (stephan-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ne ne Freunde, da is was anderes faul.
Der 7812 hat das gröbste ja schon weggenommen. Dann noch nen 7805.
Da is alles sauber. A B E R
Viele Fspg Regler brauchen 10uF Ausgangsseitig weil sie sonst zu
schwingen anfangen können.
Das bitte prüfen.
Ist von Hersteller zu Hersteller aber unterschiedlich.
Den genauen Typ beachten, oder probieren..

Autor: Stephan Henning (stephan-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ps.: Trenne den Ausgang des 7805 zur Platine auf und schaue mal was
direkt aus dem Pin des 7805 ohne Last kommt.
Wer sagt das es die Stromversorgung sein muß ??

Autor: daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
die Eingangspannung ist angeblich eine gleichspannung laut bezeichnung
auf dem Netzteil. Dann habe ich mir sie mal auf dem Osszi angeschaut
und festgestellt das sie eine Sinusform (min 0V  bis max. 24 V) hat. da
sie keine negative Halbwelle hat, war auch nix mit Brückengleichrichter.
Und ich habe mit 1000uF sie geglättet. Damit war der Controller aus dem
Fehler des "Dauerresets" raus.
Alles ist auf einer Loch-Raster-Platine gebaut. Und ich denke ich werde
nun mal alle Beinchen kürzen. Vielleicht liegt es ja daran, dass sie wie
kleine Antennen aus der Schaltung ragen.
Alle Bauelemente sind dann mit Lackdraht verbunden.
Hatte schon vorher mal ein paar Threads geschrieben über die Platine.
z.B. Dauerreset Problem.Desweiteren, dass der PWM anfangs funktionierte
und dann das Programm auf keinen Taster mehr reagiert.
Danach wollte ich das Programm nochmal auf neuen Controllern testen und
es passierte nichts. Hab dann ein Testprogramm für die taster
geschrieben zum toggeln der Test-LEDs und siehe da, die LEDs blinken
wild durcheinander. Hab mich dann mal an den Osszi gesetzt und an der
Versorgungsspannung nach den Reglern die 100HZ festgestellt. Amplitude
ist mir nicht bekannt. Ich werde sobald wie möglich nochmal messen.

Aber erst einmal werde ich nun die Taster an externe Pull-Ups hängen.

daniel

Autor: daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi,
ja die 7812 und 7805 werden heiss, der 7805 hat kein Kühlblech, die
Spannung nach ihm liegt mit normalen Voltmeter gemessen bei 5,34V wenn
uC angeschlossen ist.
jetzt im ausgebauten zustand nur Fspg-Regler ohne uC und alles, liegt
sie bei 5,00V. Hab leider kein Osszi im Zimmer, sonst könnte ich die
Spannung mir nochmal ansehen.

daniel

Autor: Karl heinz Buchegger (kbucheg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nochmal: Solange deine Versorgungsspannung nach dem
Regler am Oszi nicht eine Linie zeigt (poste doch mal wies jetzt
aussieht), kannst du dahinter machen was du willst ohne das
Problem zu beseitigen.

> Und ich denke ich werde nun mal alle Beinchen kürzen.

:-)
Solange du dort nirgens einen Kurzen baust, ist das höchstens
der berühmte Strohhalm.

Autor: daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
Dann werde ich nochmal den C1 wechseln und alles wieder zusammenlöten,
mal sehen was das ergebnis ist.

Vielen Dank erstmal für die vielen Hinweise und Ratschläge

daniel

Autor: daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
HI,
das mit dem Osszi zu messen wird dann erst wieder am Montag, kann dann
ins Labor und Messungen anstellen.

daniel

Autor: Karl heinz Buchegger (kbucheg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> ja die 7812 und 7805 werden heiss

Weist du zufällig wieviel Strom deine Schaltung aufnimmt?
Wenn das nur der µC ist, dann dürften das höchstens ein
paar mA sein (alle LED aus).

Auf der anderen Seite fährst du da mit 24V rein. Das ist schon
eine Menge die du los werden musst.

(Bist du das, der einen Eisenbahntrafo misbraucht?
Den hät ich schon längst zur Seite gelegt und mir eine
8V Wandwarze aus meiner Grabbel-Schublade geholt).

Autor: daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi,
ja ist immer noch dieser alte Trafo verlegen
Die Schaltung zieht vielleicht so um die 24mA (Spannungsled an)
Hab ein Programm zum LED testen (3LED-Ausgang + Spannungs-LED) macht
dann so rund 100 mA.
Weiss ja nicht wieviel man so für einen Taster rechnen muss. sind 5
Taster.

daniel

Autor: Dennis (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>>...das mit dem Osszi zu messen...

Trägt zwar nicht direkt zur Sache bei, aber das Gerät heißt Oszi.
Natürlich gibt's auch den Ossi, aber das is ne ganz, ganz andere
Baustelle.

Autor: Karl heinz Buchegger (kbucheg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK. Dann rechnen wir mal
100 mA
Dein 7805 muss von 12V auf 5V herunterregeln. D.h. er muss
7V loswerden.
7V mal 0.1A macht 0.7 Watt Verlustleistung. 0.7 Watt, da kann
der 7805 schon warm werden, so richtig heiss (mit Finger verbrennen)
sollte er allerdings nicht werden.

Hast du die Stromaufnahme gemessen oder geschätzt? Wenn geht,
miss mal nach. Irgendwie werde ich den Gedanken nicht los, dass
die Schaltung mehr, sehr viel mehr, zieht und deshalb der 1000µF
nicht mehr ausreicht.

Wenn da wesentlich mehr als die angegebenen 100mA fliessen, dann
drängt sich der Gedanke nach einem Nahezu-Kurzschluss auf. Das
würde so manches erklären.

PS: Der 7805 verursacht einen Verlust von 0.7 Watt. Was ist
seine Nutzleistung?  5V mal 0.1A macht 0.5 Watt.
D.h. der 7805 verbrutzelt wesentlich mehr Energie in Form von
Wärme als er weitergibt. Wirkungsgrad: 0.5 / ( 0.7 + 0.5 ) = 41%
Schon alleine deswegen wäre ein ~8V Steckernetzteil nicht verkehrt.

Autor: Thomas O. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
am bestern nen kleinen 6V Trafo nehmen nen Gleichrichter und Elko
dahinter und du landest bei ca. 8V was für den 7805 optimal ist , deine
Verlustleistung ist dann schon um einiges niedriger. Die Diode vom
Reglerausgang zum Reglereingang mach ich immer rein da schon kurze
Impulse auf der Schaltung reichen können um den Regler zu killen, ist
mir schon passiert obwohl der Ausganselko bedeutend kleiner als der auf
der Eingansseite war.

Zu den EMV Probleme, bleib bei den internen Pullups und schalte ein
Paar kleine Kerkos parallel zw. Eingang und Masse

Wie schaut deine Resetbeschaltung (Werte Kerko und Widerstand) aus,
habe letzens auch erst festgestellt das es da einige Fehler im Netz
kursieren.

Autor: daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
wie kann man ganz einfach den Kondesator testen?
Ich weiss das man den Widerstand mesen kann, mit einem Multimeter. Wenn
dieser steigt bis ins unendliche ist er in Ordnung.
Jedoch wie kann man seine Kapazität prüfen, ob er schon an Kapazität
verloren hat und wieviel? Bzw. Was für eine Kapazität er besitzt?

daniel

Autor: Hauke Radtki (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mit nem controller messen, wie lange er braucht um sich über einen
definierten widerstand zu entladen ist wohl die einfachste möglichkeit

Autor: FRAGENSTELLER (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
was wäre wenn man statt D1 einen brückengleichrichter (graetzschaltung)
nehmen würde ?

Autor: daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
ich habe mir nun selbst ein Netzteil gebaut und wenn ich die Spannung
am Controller messe, sind es genau 5 V.
Jedoch ist immer noch das selbe Problem. An dem Port Eingängen mit dem
intern-Aktivierten Pull-Up sind immer noch nur irgenwelche
undefinierten Spannungen vorhanden. Es ist also wieder wie zu Beginn.
Ist das Programm falsch? Ich hatte es oben einmal gepostet.

Für hilfreiche Hinweise wäre ich sehr dankbar.

daniel

Autor: Karl heinz Buchegger (kbucheg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist mir letztens schon mal aufgefallen:
Du schaltest ständig am PortD die Pull-Up Widerstände
hin und her (Die Taster hängen am Port D)

toggle:
  clr    key_press
  brtc  ende0
  ldi    temp,  0xA0        ;10100000
  out    PORTD,  r16
  ldi    temp,  0x05        ;00000101
  out    PORTB,  r16
  clt
  reti
ende0:
  ldi    temp,  0x0A        ;00001010
  out    PORTB,  r16
  ldi    temp,  0x50        ;01010000
  out    PORTD,  r16
  set
  reti

Ausserdem: Wenn du nicht in einem Interrupt bist, mach einen
ret und keinen reti. Das ist sont verwirrend.

Autor: Karl heinz Buchegger (kbucheg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wo hast du die Entprellroutine her?

Die stimmt nicht mit der hier
http://www.mikrocontroller.net/articles/Entprellung
überein.

(Dort findet sich übrigens ein getestetes Program, das du verewenden
könntest, um deine Hardware zu checken).

Autor: daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ach so ein dummer Fehler?!
Vielen Dank Karl Heinz Buchegger.
Ps: der Eisenbahntrafo hat nun ausgedient

Die Entprellroutine habe ich irgendwo gefunden und habe mir überlegt
wie es sein muss wenn die Taster LOW-Aktiv sind. Ausserdem musste der
Keyport maskiert werden damit die Routine nicht auf die Ausgänge
reagiert.
Aber jetzt fällt mir auch auf, dass die Maskierung nicht nötig ist.
Wenn man die key_press auf diese Variablen nicht auswertet kann da
stehen was da will.

Vielen Dank für eure Hilfe
daniel

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und?
Klappts jetzt?

Autor: daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ne :(
mein Programm geht immer noch nicht, immer noch toggeln die LED's hin
und her. Irgendwas stimmt da immer noch nicht.
Ich werd mal das Programm von der Entprellroutine verwenden, ggf. ein
bisschen anpassen.
Hoffe es geht

daniel

Autor: daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Programm von der Entprellroutine geht auch nicht. Ausserdem fehlt da
die Initalisierung des Stackpointers. Naja , das hilft mir auch nicht
weiter.
An den Pins die eigentlich die Eingänge sein müssten und einen
konstanten ca. 5V Pegel leifern müssten, ist nur eine ständiges
anwachsen der Spannung zu merken. Bis 4 V und dann geht es wieder bei 0
bis 300mV und sprungartig auf 4 V. ich denke es liegt kein
Programmfehler vor.
Irgendwas stimmt nicht mit dem Controller. :(

naja vielleicht muss ich es ja damit belassen und externe Pull-ups
verwenden. dann wäre das Problem endlich umgangen mit den internen
Pull-Ups.

Viele Dank für die Hinweise und die viele Zeit die ihr mir gewidmet
habt
daniel

Autor: daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
Fehler gefunden. Es ist ein Software-fehler.
Dem Eingang MUSS ein HIGH - Pegel(1<<PDx) zugewiesen werden bei
INTERNEN PULL-UPs. Passiert das nicht ist der Eingang ein Tri-state
(Hi-Z). Siehe Datenblatt ATmega8 S.53 Tabelle 20
Bei mir war das der Fall. Die Pegeländerungen die ich am Port bemerkt
habe waren Schwingungen verursacht durch meine Schaltung oder dem MC
selbst.
so müsste die Initialisierung aussehen:
ldi  r16,1<<PD0
out  PORTD,r16
ldi  r16,0<<PD0
out  DDRD,r16
(die Zuweisung zum DDRD ist nicht unbedingt nötig, da bei einem RESET
das DDRD sowieso mit 0x00 initialisiert wird)

Im Anhang nun nochmal mein Testprogram für einen Taster
ausserdem finde ich 32ms eine gute Zeit für eine Tastenentprellung bei
4fach Abtastung wie sie in der Routine von Peter Danneberger vollzogen
wird

Nochmals vielen Dank für die Zeit die Ihr mir gewidmet habt
und die vielen hilfreichen Ansätze

@Karl Heinz Buchegger
nun habe ich mir sogar ein Netzteil selber gebaut ;)

daniel

Autor: daniel (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Sorry,
wie ueblich, keine Konzentration und sehr vergesslich
es ist zum Mäuse melken ?!?!?!
natürlich das Programm wie oben beschrieben

daniel

Autor: Karl heinz Buchegger (kbucheg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> nun habe ich mir sogar ein Netzteil selber gebaut ;)

Das wird dir sicherlich in der Zukunft noch gute Dienste
leisten.

Super das es jetzt klappt.
Dann kann es ja los gehen.

Autor: daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja,
auf einen neuen Versuch den Motor zu steuern :)

daniel

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.