Forum: Mikrocontroller und Digitale Elektronik LED 6x6 Bildschirm mit Atmega88PA (Vorstellung meines Projekts)


von A. B. (developer_x)


Angehängte Dateien:

Lesenswert?

Sehr geehrtes Forum,
ich wollte euch mal mein erstes richtiges Mikrocontrolling Projekt 
vorstellen. Ich habe mit dem Atmega88PA und 36 LEDs einen kleinen 
Bildschirm auf einer Lochrasterplatine gebastelt.

Was haltet Ihr davon?

m.f.G.: Developer_X

von Eumel (Gast)


Lesenswert?

Sowas nennt man Matrix ;)
Aber wenn es funktioniert ist doch alles bestens. Was kann das Teil denn 
genau?

von A. B. (developer_x)


Lesenswert?

Jo ich habe ein Video davon auf Youtube und vergessen es zu posten^^.
http://www.youtube.com/watch?v=PId8U9IT2kE

Hier,
sorry wegen der dramatischen Musik, hatte keine andere^^.

Also im Video sieht man den Bau und die Planung sowie eine kleine 
Vorführung des Bildschirms, eine kleine Animation bei der jede LED 
angesteuert wird.

----------------------------------------------------------------------

Momentan habe ich das Problem, dass der Mikrocontroller keinen richtigen 
Kontakt hat, und weis nicht was ich tun soll. Es ist so, dass der 
Mikrocontroller in diesem Projekt auf einer anderen Platine per ISP mit 
dem Programm (in Assembler) geflashed wird, und dann auf dieser 
eingesetzt wird.
Damit der Verschleiss der Beinchen nicht zu groß wird, und die 
abbrechen, habe ich den MC auf einen Sockel gesetzt der auf den zweiten, 
im MatrixProject festgelöteten Sockel gesetzt wird.

von Piotre (Gast)


Lesenswert?

Was soll das Malen am Anfang? Empfinde ich in geraffter Zeit sogar als 
Verschwendung.

von Verwirrter Anfänger (Gast)


Lesenswert?

Du hast aber hoffentlich irgendwo noch ein paar Kondensatoren mit auf 
der Platine, oder?

(Nur weil ich so direkt keine bedrahteten Kondensatoren sehe, und die 
Widerstände anscheind alle bedrahtet sind)

von Eumel (Gast)


Lesenswert?

Mach doch noch nen isp Anschluss auf deine Platine, ist ja noch Platz.

von Cyblord -. (cyblord)


Lesenswert?

Cool sogar mit touch. Das Ding läuft nur wenn man auf den Controller 
drückt...

von Karl H. (kbuchegg)


Lesenswert?

Kevin R. schrieb:

> Damit der Verschleiss der Beinchen nicht zu groß wird, und die
> abbrechen, habe ich den MC auf einen Sockel gesetzt der auf den zweiten,
> im MatrixProject festgelöteten Sockel gesetzt wird.

Wichtige Erkentniss:
Jeder Steckkontakt mehr ist eine potentielle Fehlerquelle.

Musst du drücken oder reicht leichte Berührung?

von A. B. (developer_x)


Lesenswert?

@Piotre
Das ist doch Planungsarbeit ;)

@Verwirrter Anfänger
Nein ich habe keinen Kondensator, weshalb denn?
Ich habe einen 100 Ohm Kondensator zwischen RST und VCC, sowie eine 
Verbindung zwischen den beiden GND und dem VCC und AVC Pin geschlossen.
Benötige ich einen Kondesator?

@Eumel
Hm, also Platz schon, aber wisst ihr, die kleinen beinchen noch mehr zu 
verlöten, da ist kein Platz mehr.
Ich muss mir auch erstmal einen vernünftigen Lötkolben besorgen, mit 
wirklich kleiner Spitze, hab nämlich keinen, sondern eher einen groben.

von A. B. (developer_x)


Lesenswert?

@kbuchegg
Ach weisst du, da muss man schon richtig fest drücken, und manchmal 
reicht nichtmal das aus, alle LEDs wirklich korrekt zu erreichen. Ich 
habe auch schon den Atmega88PA nur so auf den festgelöteten Sockel 
gesetzt, und leider hat es da auch nicht wirklich funktioniert.

von Karl H. (kbuchegg)


Lesenswert?

Kevin R. schrieb:
> @Piotre
> Das ist doch Planungsarbeit ;)
>
> @Verwirrter Anfänger
> Nein ich habe keinen Kondensator, weshalb denn?
> Ich habe einen 100 Ohm Kondensator zwischen RST und VCC, sowie eine
> Verbindung zwischen den beiden GND und dem VCC und AVC Pin geschlossen.
> Benötige ich einen Kondesator?

Du brauchst sogar 2.
An jedem GND/Vcc Pärchen einen. 100nF und so knapp wie möglich zum µC.

(Ich denke jetzt nicht, dass das dein Problem ist, aber grundsätzlich 
solltest du dir angewöhnen IMMER entsprechende Blockkondensatoren zu 
verbauen)

>
> @Eumel
> Hm, also Platz schon, aber wisst ihr, die kleinen beinchen noch mehr zu
> verlöten, da ist kein Platz mehr.

Tja, dann wirst du das lernen müssen. Andere schaffen das auch mit 
Leichtigkeit, dass sie sich noch einen Pinheader mit auf die Platine 
nehmen und den mit ein paar Drähten verdrahten.

von Eumel (Gast)


Lesenswert?

Dein Controller braucht aber ein paar Kondensatoren damit er stabil 
läuft, schau mal ins Datenblatt!

von Karl H. (kbuchegg)


Lesenswert?

Kevin R. schrieb:
> @kbuchegg
> Ach weisst du, da muss man schon richtig fest drücken, und manchmal
> reicht nichtmal das aus, alle LEDs wirklich korrekt zu erreichen. Ich
> habe auch schon den Atmega88PA nur so auf den festgelöteten Sockel
> gesetzt, und leider hat es da auch nicht wirklich funktioniert.

Dann würde ich mal alle Verbdingen durchklingeln um zu sehen ob da nicht 
irgendwo eine kalte Löststelle ist, die nur deswegen leitet, weil du die 
Platine entsprechend biegen musst.

von A. B. (developer_x)


Lesenswert?

Ehm, ok, ich werde mir dann in Zukunft die Kondensatorverwendung 
angewöhnen, danke für den Hinweis.

Ich habe schon alle Lötstellen getestet, wenn ich mit einem Multimeter 
auf dem Sockel die jeweils auslösenden pins mit Strom betätige, leuchten 
die gewünschten LEDs auf.

von BLDC (Gast)


Lesenswert?

Kevin R. schrieb:
> Multimeter
> auf dem Sockel die jeweils auslösenden pins mit Strom betätige

Nur Interessehalber: Was genau (welcher Modus) "misst" du denn?

von A. B. (developer_x)


Lesenswert?

^^
Ich habs falsch ausgedrückt, ich messe zwar mit dem 
Widerstandmessungsmodus, aber habe auch noch kleine stäbee, auf denen 
3Volt anliegen, und das gleiche erfüllen, ist aber auch egal :).

Eine Frage noch, und zwar wie sollten den die Kondensatoren in die 
Schaltung mit aufgenommen werden, und welchen Wert sollten diese haben 
(also in Farrad), im Datenblatt habe ich leider nichts gefunden ausser 
das Kapitel 1.Pin Configurations.

Kannst du mir das vielleicht in einem Schaltplan oder einfach so 
erklären, zwischen welchen Pins (von den normalen ISP Pins) ein 
Kondensator vorhanden sein sollte? Des Weiteren gibt es, aber das weist 
du ja bestimmt, zwei GNDs und VCC sowie AVCC.

Wäre echt nett wenn Ihr mir das erklären würdet.

Danke,
m.f.G.: Developer_X

von spess53 (Gast)


Lesenswert?

Hi

>Wäre echt nett wenn Ihr mir das erklären würdet.

http://www.atmel.com/Images/doc2521.pdf

MfG Spess

von Frank Norbert Stein *. (franknstein)


Lesenswert?

Kevin R. schrieb:
> Ich habe einen 100 Ohm Kondensator zwischen

Was es nicht alles gibt ?

von A. B. (developer_x)


Lesenswert?

Lol, Sorry, ich war bisschen hektisch und durch den Wind, ich meinte 
natürlich einen 100 Ohm Widerstand.

Also danke für die PDF Datei, das war sehr aufschluss reich, und dort 
war empfohlen, einen Kondensator mit 100nF zu verwenden wenn ich das 
richtig verstanden habe, d.h. im Klartext, dass beim Anschluss des MCs 
an die Stromquelle folgendes zu machen ist :

1. RST und VCC über 100k Ohm Widerstand zu verbinden
2. Plus und Minus Leitung mit 100nF Kondensator zu verbinden.

Das hat dann, wenn ich richtig verstehe, zu Folge, dass, wenn für ein 
paar Milisekunden, der Strom ausfallen sollte, der Kondensator den Strom 
erstmal weiterliefert, und wenn der Strom der Stromquelle wieder 
vorhanden ist, erneut den Kondensator läd und die Spannung aufrecht 
erhält, umso Spannungsschwankungen zu verhindern.

Richtig?

von spess53 (Gast)


Lesenswert?

Hi

>1. RST und VCC über 100Ohm Widerstand zu verbinden

Nein. Dort steht:

The recommended
pull-up resistor is 4.7kΩ or larger when using STK500 for programming. 
For
debugWIRE to function properly, the pull-up must not be smaller than 
10kΩ.

>2. Plus und Minus Leitung mit 100nF Kondensator zu verbinden.

Aber an jedem (A)VCC/GND Anschluß.

>Das hat dann, wenn ich richtig verstehe, zu Folge, dass, wenn für ein
>paar Milisekunden, der Strom ausfallen sollte, der Kondensator den Strom
>erstmal weiterliefert, und wenn der Strom der Stromquelle wieder
>vorhanden ist, erneut den Kondensator läd und die Spannung aufrecht
>erhält, umso Spannungsschwankungen zu verhindern.

Auch nicht. Die sollen kurze Stromspitzen bei Schaltvorgängen abfangen.

MfG Spess

von A. B. (developer_x)


Lesenswert?

> Aber an jedem (A)VCC/GND Anschluß.

Wie denn? Soll ich an jeden Anschluss einen Kondensator parallel 
schalten?

Oder soll ich auf dem Weg zum "Pluspol" vor den GND 1 Pin beispielsweise 
einen Kondensator in Reihe schalten??
Dann bräuchte ich ja 4 Kondensatoren.

Sorry, aber ich bin noch Anfänger.

m.f.G. Developer_X

von Karl H. (kbuchegg)


Lesenswert?

Kevin R. schrieb:
>> Aber an jedem (A)VCC/GND Anschluß.
>
> Wie denn? Soll ich an jeden Anschluss einen Kondensator parallel
> schalten?

Ja!
Ist doch nicht so schwer.
Die Vcc/GND Anschlüsse bzw. AVcc/GND Anschlüsse liegen ohnehin fast 
nebeneinander.
Einfach 100nF, dicht am µC, an die Pins anlöten. Der eine Anschluss vom 
Kondensator kommt an Vcc, der andere an GND. Fertig.

> Dann bräuchte ich ja 4 Kondensatoren.
Du brauchst 2.
Für jedes Vcc/GND Pärchen 1

> Sorry, aber ich bin noch Anfänger.
Dann frage ich mich, warum du dir nicht mal ein paar 
Standardbeschaltungen angesehen hast, wie man die Dinge macht

AVR-Tutorial: Equipment: Selbstbau
Es geht um die Kondensatoren C3 und C4

von A. B. (developer_x)


Lesenswert?

Ah, ok. Gut, danke schön.

Also soll der Kondensator zwischen GND1 und VCC, und der zweite 
Kondensator an AVCC und GND2.

Also brauch ich theoretisch 2 Kondensatoren.

m.f.G. Developer_X

von spess53 (Gast)


Lesenswert?

Hi

>Also brauch ich theoretisch 2 Kondensatoren.

Nicht nur theoretisch.

MfG Spess

von Mikel M. (mikelm)


Lesenswert?

bei deiner Schaltung und Versorgung würde ich auch auf jeden Fall einen 
10-100µF mit auf der Platine setzten. die 100n lötet man so kurz wie 
möglich an den VCC und GND pins vom atmega.
 Brenn dir nen Bootloader drauf, z.b. den von PeDe, den programmierst du 
einmal im extern board, dann brauchst du nur noch eine 3 oder 4 Pin 
(Spannung + 1 oder 2 Datenleitungen) Verbindung zu einer seriellen 
Schnittstelle. (Beschreibung findest du hier im Forum)

  Am meisten im Video hat mich neben der störenden Musik, ich denke 
Komentare von Dir hätten besser gepasst, die Werbung für C gestört, ist 
wohl der teuerste Laden in Deutschland, mit dem schlechtesten Service.
 Den Lötkolben den du da hast habe ich auch, setzte ihn im Ausseneinsatz 
oft ein. Zur kalten Lötstelle, einfach mal alles kurz mit etwas Lötzinn 
mal kurz nachlöten.

 BTW im Video steht 0:16 Planunsphase ;)

von A. B. (developer_x)


Lesenswert?

Hey, eine Frage, meinst du jetzt
10-100µF oder 100nF, weil in der PDF wird 100 nF empfohlen, und nicht 
µF.

von Karl H. (kbuchegg)


Lesenswert?

Kevin R. schrieb:
> Hey, eine Frage, meinst du jetzt
> 10-100µF oder 100nF, weil in der PDF wird 100 nF empfohlen, und nicht
> µF.

100nF direkt an die Pins.

Was Mikel meinte: zusätzlich noch einen kleinen Elko, Größenordnung 10 
bis 100µF mit auf die Platine, der die Aufgabe hat, die 
Versorgungsspannung generell etwas zu blocken.
Schaden tut er nicht.



(Allerdings: ich denke immer noch nicht, dass das dein tatsächliches 
Problem darstellt. Auf dem Video sieht man, wie deine LED nach dem 
Loslassen weiterhin ihre Runden ziehen, nur eben mit stark verminderter 
Helligkeit. d.h. der µC läuft grundsätzlich weiter. Würde es mit den 
fehlenden C zusammenhängen, würde der µC abstürzen und jedesmal mit dem 
Programm von vorne anfangen)

von A. B. (developer_x)


Lesenswert?

Das Problem ist halt leider, dass ich zeitlich sehr eingeschränkt bin.
Ich habe leider demnächst eher weniger Zeit, ich muss mal schauen wann 
ich da weitermachen kann, das nächste mal werde ich das ganze mit ISP 
Anschluss etc machen, und mir auch nen feineren Lötkolben und anderen 
Draht holen, danke aber trotzdem für die ganze Hilfe :).

Aber so tut mein Projekt ja was es sollte, für mein erstes Projekt bin 
ich erstmal zufrieden.

von Mikel M. (mikelm)


Lesenswert?

Ich meinte einen zusätzlichen C, die Krokodilklemmen, können, je wie sie 
gerade gesteckt sind einen hohen Widerstand darstellen, wenn eine LED 
angeschaltet wird, wir plötzlich mehr Strom gezogen. Der große C 
entkoppelt das etwas, die 100n sind genau für die Schaltzeit. Sie sind 
schnell, geben aber auch schnell auf, da kleine kap. der größere, ist 
langsammer hält aber etwas länger durch.
 Für Dein Problem wie gesagt alle Pins nachlöten, behebt kalte 
Lötstellen. oder auch mal schaun wie sie aussehen, könnte sein das du so 
viel gebraten hast, das ein Kontakt ganz schief ist, dann solltest du 
besser den Sockel komplett austauschen.
 evt mal vom Sockel, scharfe Photos einstellen, dann könnte man 
gezielter etwas sagen.

von A. B. (developer_x)


Lesenswert?

Um einen kompletten Wechsel eines Sockels werde ich wohl nicht 
herumkommen, dafür kann ich dann auch weil ich anders arbeiten will die 
ISP verbindung gleich mitmachen, ich werde dass dann aber machen, wenn 
ich wieder Zeit habe, wie gesagt.

Ich bin Schüler an einem Gymnasium.
Aber vielleicht schaffe ich es eine AG zusammenzustellen, in der man 
Löten und Arbeiten könnte.
Mal schauen.

m.f.G.: Developer_X

von Ingo (Gast)


Lesenswert?

Was ist das für ein roter Stift(?) mit dem du da an der 
Lochrasterplatine arbeitest?

Kann das Ding auch noch mehr als ein Lauflicht über mehrere Ebenen?

Von wegen Planung:
Find ich super wenn man richtig plant, nur übertreiben sollte man es 
nicht ;-)



Ingo

von A. B. (developer_x)


Lesenswert?

Das Ding kann auch mehr als ein Lauflicht über mehrere Ebenen, wenn es 
wirklich nochmal überarbeitet wird, ich kann Programme schreiben, die 
jegliche Bilder die du willst auf dem Bildschirm projizieren.

Doch momentan, wie du ja auch am Ende siehst, ist es notwendig den 
Controller wirklich tief reinzudrücken, bis es wirklich klappt, :(

Muss nochma überarbeitet werden.

von Knalltüte (Gast)


Lesenswert?

>>Controller wirklich tief reinzudrücken, bis es wirklich klappt, :( <<

mach dir nix draus , das war schon immer so ...

mfg

von Mikel M. (mikelm)


Lesenswert?

Ingo schrieb:
> Was ist das für ein roter Stift(?) mit dem du da an der
> Lochrasterplatine arbeitest?
>

das ist nen Gaslötkolben

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.