Schaltung geht auf dem Steckbrett, aber auf der Platine nicht

dimmu

Neues Mitglied
11. Juli 2011
54
0
0
Schömberg bei Neuenbürg
Sprachen
  1. BascomAVR
Hallo zusammen,

dank der Hilfe von mehreren Usern im Software Bereich habe ich nun mein Programm fertig und wollte jetzt den atmega 8 und alles drum herum wie die Schieberegister und die Treiber vom Steckbrett auf eine Streifenrasterplatine löten.

Das löten hat soweit auch funktioniert. Nur habe ich jetzt das Problem das die Funktion gestört ist.
Ein bisschen genauer.
Ich habe vor eine wortuhr zu bauen. Die Leds für die Anzeige sind über Treiber direkt an die 74hc595 angeschlossen. Ich mache kein multiplex oder sowas. Jedes Wort hat einen eigenen Ausgang.
Für die Ausgange benutze ich 3 kaskadierte 74hc595. An jedem ist jeweils ein uln2803 angeschlossen, und daran dann die Leds.
Die Seriellen Daten kommen aus DP5
Der Schiebetakt aus PD6
Der Speichertakt aus PD7
PB.0, PB.2, PB.3 PB.4 und PB.5 sind auch Ausgänge für die Anzeige.
PB.1 macht Pwm und steuert über einen Standard Transistor einen CMOS Transistor und geht dann an den + Anschluss der Leds
Am PortC.0 hängt ein LDR und ein 10KOhm widerstand. Aus dem Spannungsteiler wird dann der ADC wert gelesen und dann daraus die pwm berechnet.
PD2 und PD3 sind Eingänge mit denen die Uhr gestellt wird.
Spannung sind 12 aus dem Netzteil, damit werden auch die Leds versorgt.
Die 12 werden dann durch einen 7805 gelassen und mit den 5V dann der MC und die 74hc595 versorgt.
Kondensatoren für die Glättung sind vorhanden. Aber die 12V am Eingang sind eigentlich schon sauber geglättet. Ist ein hochwertiges Netzgerät.

Am Atmega habe ich auch noch einen Uhrenquarz angeschlossen.

Als entwicklungsboard benutze ich das von Pollin.
Mit dem Pollinboard und Steckbrett funktioniert die Sache.
Auf der Platine nicht.
Die Bauteile sind alle gesockelt, also nicht Hitze Tod.
Kurzschlüsse kann ich ausschließen.
Und ich habe auch die Zwischenräume freigekratzt um sicherzustellen dass es keine hochohmigen Verbindungen gibt.
Unterbrechungen sind alle gebohrt.

Ich habe keine Idee mehr an was das jetzt liegen kann. Ich würde mich freuen wenn mir jemand helfen kann.
Wenn es mir noch reicht werde ich nachher noch einen Schaltplan malen dann wird’s vielleicht verständlicher.


Edit:

So jetzt mal noch der schaltplan.
achso ich hab ganz vergessen. auf der platine spinnen die Shiftregister. es gehen zu viele ausgänge an.
und der 7805 wird ziemlich warm. ich weis das dass so nicht die optimale lösung ist, aber das hatte ich noch da, in zukunft soll da was rein was nicht so viele verluste produziert.

danke
 

Anhänge

  • IMG_0274.jpg
    IMG_0274.jpg
    242,5 KB · Aufrufe: 53
Hi Dimmu,

die LEDs haben aber Vorwiderstände wie es sein soll ? Ich nehme mal an das du sie im Schaltplan nur nicht eingezeichnet hast.

Schreib dir doch mal einfach ein ganz kurzes Testprogramm mit dem du die Hardware durchtesten kannst. Das mache ich immer wenn irgendwas nicht so funktioniert wie es soll und ich nicht mehr weiter weiß. Zum Beispeil einfach mal komplett alles rausschmeißen was man nicht unbedingt braucht und dann nur die LEDs der Anzeige eine nach der anderen anschalten.

Gruß
Dino
 
Hallo Dino,

widerstände sind alle eingebaut, habe nur nicht alles eingezeichnet, aus übersichtsgründen.
Mit dem Aufbau bin ich mir eigentlich sicher, habe mehrmals verglichen zwischen meinem Steckbrett und der Platine.
Dein tipp mit einem anderen kleinen Programm zum die Ausgänge ansprechen war nicht schlecht. Bei dem Versuch das Programm zu übertragen kommt sofort die Meldung dass es nicht geht.
Wenn ich den Controller aber raus nehme und auf das pollinbord stecke geht er wunderbar.
Ich habe deshalb die Vermutung dass der Controller auf meiner Platine nicht richtig arbeitet.
Woran das liegt? Keine Ahnung. Die Beschaltung für den Atmega habe ich aus dem stromlaufplan des pollinboards geklaut. Also gehe ich mal davon aus dass die ok ist.

Eigentlich wollte ich jetzt mal die Spannung auf dem oszi betrachten, ob die evtl. zu wellig ist aber leider verstehe ich nicht wie ich mein oszi bedienen muss.
Kann es denn überhaupt sein das es an einer welligen Spannung liegt?
Aber eigentlich kann die Spannung ja gar nicht wellig sein da die eingangsspannung schon geglättet ist.
 
Hi,

Dein tipp mit einem anderen kleinen Programm zum die Ausgänge ansprechen war nicht schlecht. Bei dem Versuch das Programm zu übertragen kommt sofort die Meldung dass es nicht geht.
Wenn ich den Controller aber raus nehme und auf das pollinbord stecke geht er wunderbar.
Ich habe deshalb die Vermutung dass der Controller auf meiner Platine nicht richtig arbeitet.
als erstes ist mir aufgefallen das deine beiden Taster nach +5V gehen. Wenn du nen Eingang definierst, dann hast du nichts was den Pin auch nach GND ziehen kann. Also sind die beiden Pins immer auf Vcc (entweder durch die Taster oder die internen PullUps). Also leg mal da noch jeweils nen Widerstand vom Pin nach GND. So um die 10-47kOhm (was grade da ist) sollte OK sein. Die internen Pull-Ups mußt du dabei abschalten (PortD.2 und PortD.3 auf 0). Das ist allerding jetzt nicht kriegsentscheident.

Der Reset-Pin (1), SCK (19), MISO (18) und MOSI (17) hast du hoffentlich richtig mit dem ISP-Port des Proggers verbunden. Nochmal kontrollieren.

Der Quarz mit den beiden Kondensatoren ist laut Plan OK.

Ist Vcc und GND mit dem ISP-Anschluß verbunden ?

Zwischen Vcc und GND solltest du auf jeder Seite des Atmels nen 100nF haben. Also einen von 7 nach 8 und einen von 20 nach 22 damit die Spannung gesiebt wird.

Stimmt die Betriebsspannung des Atmels ? Ist die wirklich 5V ? Nachmessen.

Das als erstes was mir so einfällt.

Mit dem Oszi ... hast du nen analoges oder nen digitales oder nen USB-Oszi für nen PC ?

Also am Anfang: Wenn du den Eingang auf DC schaltest dann kannst du Gleichspannungen oder sich langsam ändernde Spannungen sehen. Dafür mußt du aber mit dem Eingangsteiler entsprechend so einstellen das du deine Spannungsänderung auch auf den Schirm bekommst. Wenn du nur irgendwelchen Schmutz auf der Versorgungsleitung sehen willst, dann kannst du auch auf AC stellen. Damit schaltest du einen Kondensator in den Eingang der dir die Gleichspannung aussperrt. Du siehst also nur den Wechselspannungsantei des Signals. Das ist schön wenn du zB nur ein paar Millivolt Schwingungen auf mehreren Volt Gleichspannung hast. Dann kann man den Eingangsteiler entsprechend weit aufdrehen damit man das winzige Gefussel auch schön drauf hat und nicht nur ne Linie sieht.

Das war mal schnell was in Kürze.

Gruß
Dino
 
Problem gelöst,

der 2. 100nF hat gefehlt.
Auf der AVCC Seite hatte ich schon einen, jetzt hab ich noch einen auf die Vcc Seite gemacht und jetzt geht’s.

Die pulldowns habe ich schon drin, habe sie nur nicht mit drauf gezeichnet dass es übersichtlich bleibt. Hat aber wohl eher zur Verwirrung gesorgt.
Wundern tut mich jetzt nur noch Warums auf dem pollinboard mit einem 100nF gehet und auf meiner Platine nicht.
Aber sei es wie es ist. Hauptsache es geht.
Zum oszi, ist ein analoges, Habs vom Geschäft geschenkt bekommen, aber kanns wie gesagt nicht bedienen, wobei die kleine Erklärung von dir schon ein bisschen hilft.
Habe leider keine Bedienungsanleitung für das teil und mit dem was ich im Internet dazu gefunden habe kann ich nicht viel anfangen.
Vielleicht sollte ich es mal mit in die meisterschule nehmen und mir von nehm Lehrer erklären lassen.
Naja danke für deine Hilfe
 
Hi Dimmu,

der 2. 100nF hat gefehlt.
Auf der AVCC Seite hatte ich schon einen, jetzt hab ich noch einen auf die Vcc Seite gemacht und jetzt geht’s.
...
Wundern tut mich jetzt nur noch Warums auf dem pollinboard mit einem 100nF gehet und auf meiner Platine nicht.
Aber sei es wie es ist. Hauptsache es geht.
Vcc und GND sind die Hauptversorgung. AVcc versorgt nur den AD-Wandler und ein paar Portpins. Ich tippe mal das die Spannung wegen Lastspitzen zu stark geschwankt hat. Grundsätzlich sollte man an allen Pärchen für Betriebsspannungen nen Abblock-Kondensator von 100nF dransetzen. Also an den größeren Atmels dann auch mal 4 Stück oder sogar noch mehr. Und für die Gesamtberuhigung dann noch nen kleinen Elko von 10-22µF an die Hauptversorgung. SSo mache ich das eigentlich immer.

Zum oszi, ist ein analoges, Habs vom Geschäft geschenkt bekommen, aber kanns wie gesagt nicht bedienen, wobei die kleine Erklärung von dir schon ein bisschen hilft.
Habe leider keine Bedienungsanleitung für das teil und mit dem was ich im Internet dazu gefunden habe kann ich nicht viel anfangen.
Nen analoges Oszi ist eigentlich recht einfach zu verstehen.

Hast du eins mit einem oder mit zwei Kanälen ? Bei Mehrkanal kann man noch verschiedene Modis für die Eingangsumschaltung einstellen (Chopper oder alternierenden Betrieb).

Grundsätzlich ... Das Raster auf dem Schirm wind die Divisions. Wenn du also zB die Y-Ablenkung auf 1V/Div stellst und dein Schirm hat 8 Teilstücke in der Höhe dann kannst du maximal Signale von 8V anzeigen und der Schirm ist damit in der Höhe voll ausgefüllt. Das gleiche ist mit der Zeitablenkung. Der Strahl läuft ja immer von links nach rechts. Wenn du auf 1ms/Div stellst dann läuft er so schnell das er dann bei 8 Div Schirmbreite in 8ms von links nach rechts flitzt. Über das Raster auf dem Schirm und die eingestellten Ablenkungen in X (Zeit) und Y (Spannung) kann man dann die Kurvenform vermessen.

Bevor man anfängt sollte man den Y-Eingang auf GND stellen. Damit schließt du den Eingang kurz (allerdings nicht für das Meßobjekt) und bekommst nur noch 0V rein. Nun kannst du mit den Y-Pos und X-Pos Einstellern deinen Strich wie gewünscht auf dem Schirm positionieren. Wenn du Signale anzeigen willst die auch nach Minus gehen dann stellt man den Strich in Y-Position eher in die Mitte. Bei reinen positiven Signalen eher auf die Grundlinie des Schirms. Dann kann man den vollen Schirm ausnutzen.

Wenn du nen Tastkopf benutzt dann solltest du ihn vorher einstellen (Frequenzkompensation). Dafür legst du den Tastkopf an den Ausgang des Testgenerators den jedes Oszilloskop hat. Der erzeugt eine Rechteckschwingung. Du hast am Tastkopf einen kleinen Einsteller (Trimmkondensator). Wenn du dir die Kurvenform des Rechtecks auf dem Oszi-Schirm ansiehst dann werden die Flanken entweder gerundet sein oder sogar mit einem kleinen Peak überschwingen. Das kann man mit dem Trimmer einstellen damit man eine saubere Rechteckdarstellung hat. Damit ist das Kabel mit dem Tastkopf dann sauber abgeglichen.

Der Trigger: Der Strahl des Oszilloskops (die Zeitablenkung) wird durch einen Trigger gestartet. Es wird also eventuell nichts dargestellt. Über die Triggereinstellungen kannst du festlegen auf welchen Kanal (bei Mehrkanaloszis) getriggert werden soll und ob auf eine fallende oder steigende Flanke getriggert werden soll. Die Spannung auf die der Trigger reagieren soll kannst du auch einstellen. Diese Spannung bezieht sich abernicht auf die Eingangsspannung sondern auf die Ablenkspannung (also eigentlich die Divisions auf dem Schirm). Daher ... wenn du zB mit 0,1V/Div am Eingang arbeitest dann kann der Schirm maximal 0,8V anzeigen. Nun kannst du den Trigger so einstellen das der Strahl bei einer steigenden Flanke des Eingangssignals und wenn das Signal 0,3V erreicht anfängt von links nach rechts zu flitzen. Wenn du umstellst auf 1V/Div und an der Triggereinstellung nichts änderst dann liegt der Triggerpunkt danach bei 3V und steigender Flanke.

Der Trigger startet den Strahl einmalig von links nach rechts. Während des Strahldurchlaufs ist der Trigger gesperrt und nach dem Durchlauf gibt es auch noch eine kleine Totzeit bis der Trigger den Strahl für einen neuen Durchlauf starten kann.

Wenn du zusätzlich auf Single-Trigger stellst, dann startet er nach diesen Timeouts nicht automatisch neu sondern du must du den Trigger über einen Taster selber wieder neu scharfmachen.

Wenn du zB an Dimmern oder was anderes rumbastelst, dann kannst du auch bei manchen Oszilloskopen auf die Netzfrequenz triggern lassen. Dann ist die Darstellung automatisch synchron zur Netzspannung.

Apropos Netzspannung !!! WICHTIG !!! GND könnte identisch mit dem Erdpotential sein. Also UNBEDINGT bei Basteleien mit Dimmern oder anderen Sachen die direkt am Netz hängen deinen Aufbau über einen Trenntrafo versorgen !! Bei Basteleien mit meinem alten Röhrenoszilloskop ist mir dabei nämlich schonmal der FI rausgeflogen.

Ach ja ... der Mehrkanalbetrieb. Wenn du zwei Kurven anzeigen willst (also Y1 und Y2) die zeitlich voneinander abhängen dann mußt du zwingend den Chopperbetrieb wählen. Damit schaltet er im Durchlauf dauernd zwischen Eingang Y1 und Y2 um. Wenn du den alternierenden Betrieb benutzt dann zeichnet er erstmal Y1 und dann die Kurve für Y2. Damit geht der zeitliche Zusammenhang zwischen den beiden Kurven verloren.

Das wars jetzt erstmal. Wenn noch Fragen zum Oszi sind dann kannst du dich ja melden. Aber schalt das Ding einfach mal an und miß mal etwas rum Dabei lernst du wohl am meißten ;)

Gruß
Dino
 
Hallo Dino,

also das mit den ganzen Kondensatoren ist jetzt klar. Die werde ich nicht mehr vergessen.

Zu der Sache mit dem oszi.
Sehr ausführliche und gute Erklärung die du da geschrieben hast. Ich denke damit kann ich jetzt erst mal das wichtigste messen.
Das mit dem Tastkopf wusste ich gar nicht. Ich denke deshalb ist nie was Vernünftiges dabei rausgekommen
Ich denke fürs erste komm ich jetzt damit klar

Danke
 
noch was ...
Im X/Y-Betrieb solltest du aufpassen das der Strahl nicht zu lange an einer Stelle mit voller Helligkeit steht. Dreh die Helligkeit nur so weit auf wie es sein muß. Das ist wie bei den alten PC-Monitoren (evtl noch schlimmer). Das Bild kann in der Phosphorschicht der Röhre einbrennen. Darum muß man jetzt nicht in Panik verfallen. Man sollte es nur beachten um lange was von dem Gerät zu haben.

Gruß und viel Spaß
Dino
 
und noch was ...
Die Signal-Massen (GND) der Eingänge sind bei den Oszis meißt über kleine Widerstände verbunden. Wenn du eine Spannung zwischen den Massen der Eingänge anlegst die genug Strom liefern kann dann könntest du die Widerstände abfackeln. Also alle Signalmassen der Eingänge auf ein Potential legen und nicht trennen. Der Einfachheit halber das Oszi nur an einem Eingang mit der Masse der Testschaltung verbinden und bei den restlichen Eingängen nur die Signalführende Leitung anschließen.
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)