mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LEDs sollen unterschiedlich blinken


Autor: Werner Schierloh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen!

Gestern habe ich unter gleichem Betreff folgende Frage hier gestellt:

"Ich möchte in einer Schaltung mehrere LEDs ansteuern, so das sie
blinken. Allerdings sollen sie unterschiedlich blinken.
Beispiel:
LED 1: 3 sec an, 3sec aus, 3sec an, 3sec aus usw.
LED 2: 2 an, 2 aus, 2 an, 5 aus, 5 an, 10 aus  (immer wiederholt)
LED 3: 10 an, 1 aus, 2 an, 1 aus (immer wiederholt)"

Innerhalb von Minuten wurde mir freundlich und kompetent (wo habe ich
das schon mal gehört) geholfen.

Leider habe ich jetzt festgestellt, dass die Antworten für mich als
Anfänger zu kompetent waren.

Daher noch mal eine (hoffentlich nicht zu unverschämte) Bitte: Kann mir
mal jemand einen Schaltplan für das obige Beispiel machen, kein
Kunstwerk, nur eine schnelle Skizze oder so?

Die Stromversorgung muß übrigens über Batterien/Akkus erfolgen.

Herzlichen Dank schon mal im Voraus!

Gruß aus Schleswig-Holstein

Werner

P.S.: Wenn das, was ich mit der Schaltung machen will, fertig ist,
werde ich es hier mal vorstellen!

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

Bewertung
0 lesenswert
nicht lesenswert
Sei mir nicht boese, Werner, wenn ich da jetzt nicht
allzu ausfuehrlich werde.
Auf dieser Site gibt es ein Tutorial. Gaaanz links, der
2.te Link von oben. Dort findest Du alles was Du fuer
den Einstieg brauchst.

Konzentrier dich einfach mal fuers erste darauf, 1 LED
zum Blinken zu bringen. Wenn du das hast, dann hast Du
soviel gelernt, dass es dir keine Schwierigkeiten machen sollte,
mehrere LED's anzusteuern.

Autor: Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann man davon ausgehen, dass du einen Controller benutzen willst? (das
würde den Schaltungsaufwand sehr verringern...)

Willst du einen Leuchtturm bauen?
Ich hab eine ähnliche Schaltung für ein Modell vom
Holtenauer-Leuchtturm (Holtenau bei Kiel...) gemacht, allerdings damals
nicht mit einem Controller.

Zur Schaltung:
Du brauchst eine Zeitbasis von 1 Sekunde (Taktgenerator).
Damit betreibt man Zähler (in deinem Fall 3 Stück).
Man vergleicht die Zählerstände und schaltet entsprechend die LEDs ein
und aus. Das erfordet ein paar Bauteile mehr, wenn man es "diskret",
also mit Logik-Bausteinen aufbaut.
Man kann es aber auch alles in einem Controller programmieren, was dann
in etwas Software und recht wenig Aussenbeschaltung ausartet.

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"Wenn das, was ich mit der Schaltung machen will, fertig ist,
werde ich es hier mal vorstellen!"

Das wird bestimmt ne Seekarte mit originalen Kennungen...:-)

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

Bewertung
0 lesenswert
nicht lesenswert
So könnte nen Schaltplan dazu aussehen, aber alles ohne gewähr hab das
nur schnell hingepfuscht

Autor: Werner Schierloh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo nochmal und Danke an alle,

also das klappt ja wirklich super hier, ich bin begeistert. Allerdings
mußte ich jetzt feststellen, das ich damit wohl doch überfordert bin.
Mit dem Plan von björn kann ich zwar was anfangen, aber jetzt müßte ich
ja auch noch wissen, wei man den Controller programmiert, und ich habe
jetzt schon genug genervt hier. Das hier ist eben kein Anfängerforum,
das sehe ich jetzt ein, Sorry, wenn ich genervt habe.

Also: Ich gebe auf - trotzdem herzlichen Dank !
Werner

Autor: Läubi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naj du solltest nicht zu schnell aufgebne, das sit wirklich nicht so
schwer!
Schu dir doch mal das tutorial an, dann wird das schon was LEDs blinken
lassen ist wirklich der beste einstieg und hier wird dir gewiss auch
geholfen.
Aus welchem Teil von S-H kommst du den wen man fragen darf?

Autor: Werner Schierloh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich wohne in Neumünster, also genau mittendrin im Land zwischen den
Meeren.

Autor: Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gibt das hier dann demnächst den auch noch die SH-Abteilung?
Bin übrigens aus der Landeshauptstadt.
@Werner: Aufgeben ist feige! Wenn man zeigt, dass man sich mit dem
Thema beschäftigt (ernsthaft beschäftigen will), dann wird man hier
ziemlich gut unterstützt.
Für den Einstieg in die Mikrocontroller-Welt gibt es auch sehr gut
geratene Tutorien. Leider musste die Forensuche wegen zu häufiger
Benutzung abgeschaltet werden, aber auch so findet man mit etwas gutem
Willen die Lösung für ein Problem.
Lass dich nicht entmutigen!

Autor: Markus Neubauuer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also ich hatte null ahnung von Mikroprozessoren und hab das alles nur
hier in dem Forum gelernt. Klar hatte ich ahnung von PC programmierung
und Elektronik aber garkeine Ahnung von µCs ... ich wusste ja nicht mal
das es dort Ports gibt. Hab das alles sehr schnell hier gelernt dafür
nochma danke an alle die mich dabei unterstützt haben.

@Björn :
Dein Schaltplan ist falsch,
Die LEDs müssen umgedreht werden wil im Moment sperren sie den Strom
nur. Und warum beschaltest du den AD Comparator?

Autor: peter dannegger (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Man kann sowas auch mit einem MC machen.

Im Anhang ist ein Programm für den ATTiny26. Das fertige Hex-File ist
auch mit bei.

Kannst ja mal einen Blick in das "flasher.c" werfen, dann sieht man
ungefähr, wie das Programm arbeitet.

Das "schedule.c" brauchst Du nicht zu verstehen, ist auch für nen
Anfänger zuviel verlangt.
Es ist nur ein Hilfsprogramm, welches die eigentliche Arbeit macht,
also die Zeiten auswertet und dann zum richtigen Zeitpunkt die Aktionen
ausführt. Es sorgt dafür, daß unterschiedliche Aktionen parallel
ablaufen.


Sollen noch mehr Aktionen ausgeführt werden, ist ein ATMega8 besser
geeignet (1kB SRAM statt nur 128Byte).


Peter

Autor: Marc Meise (bytewood) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Werner

Ohne die C-Programmierer auf die Füsse treten zu wollen:
Wenn Du ein "blutiger" anfänger bist, dann könntest Du z.B mit
BASCOM-AVR anfangen.

http://www.mcselec.com/index.php?option=com_phpsho...

Die Kostenfreie Version erlaubt Dir 4KB Code zu erzeugen. Sollte für
Dein Vorhaben mehr als ausreichend sein.
Ist für den Anfänger sicher ein leichterer Einstieg (wg. BASIC), ABER
ersetzt nicht das Studium von MikroControllern und den Datenblättern
dieser. Die "Lernkurve" ist eben etwas flacher als bei C. Später
kannst Du dann auf C umsteigen.

Zum Schaltplan:

5V----[R]--|>|----PortXX

und das ganze mal 3

Controller: Tiny13, 2313, 26, etc.

Gruß

Marc

Bin wie Rahul auch aus der Landeshauptstadt S-H

Autor: Marc Meise (bytewood) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Werner
Nochwas zu Deinem Schaltplan:

Wenn Du LEDs ansteuern willst, dann brauchst Du die Transistoren
nicht.
Die AVRs können (so wenige) LEDs an einem Port treiben:

5V-----[R]---|>|--------PORTxx
Controller zieht auf Masse, d.h. bei PortXX=0 => LED AN

Masse-----[R]---|<|-----PORTxx
Controller liefert, d.h. Portxx=1 => LED AN

(Das Portxx=y soll nur ein Pseudocode sein)

Gruß

Marc

Autor: peter dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Marc,

es würde mich mal interessieren, wie dann so etwas in BASCOM aussehen
würde.

Vor allem, daß es auch genau so variabel und einfach erweiterbar ist.


Peter

Autor: Markus Neubauuer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würden den AVR positiv schalten lassen also wenn pin = 1 dann LED
an. Finde ich zum einsteigen leichter 1= an 0=aus ... wenn's am anfang
bissal "Komplexer wird" kommt da erstmals etwas durcheinander.

Autor: peter dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Marcus,

ich gehe mal davon aus, wenn ich ne Funktion LED0_on() nenne, weiß
jeder, daß damit die LED eingeschaltet wird, durcheinander kommt man
dabei nicht.

Ich gebe zu, daß das UND-ieren dazu dient, ein oder mehrere Bits auf 0
zu setzen, weiß man nicht ohne Kenntnis in binärer Logik.

Aber darum kommt man eh nicht umhin, wenn man MCs programmieren will.
Logische Operatoren gehören zu den Grundlagen und dabei ist es völlig
egal, ob UND oder ODER, man muß beides verstehen (und NOT, EXOR usw.).


Peter

Autor: Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Werner:
Wenn man dir einen programmierten Controller zukommen lassen würde,
wäre dir am ehesten geholfen, oder?

Autor: Markus Neubauuer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Rahul
Nein das verstehst du völlig falsch.

Er will den µC, den Code und natürlich die fertig aufgebaute Schaltung
per Post, natürlich kostenlos und ohne Porto. ;-)

Autor: peter dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jungs ihr geht zuweit !!!

Er hat nur gesagt, daß er Anfänger ist. Von gebratene Tauben in den
Mund fliegen lassen, habe ich jedenfalls nichts gelesen.

Und nicht jeder ist 24h online, um sofort auf die Vorschläge zu
antworten.

Laßt ihm erstmal Zeit, alles durchzulesen.


Peter

Autor: Markus Neubauer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das hatte ich jetzt eigentlich nicht soooo ernst gemeint Peter.

Autor: Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich schon. Und ich hätte auch keine Probleme damit, ihm das Ding zu
Programmieren.
Ich gehe davon aus, dass er nicht erst in die Programmiererei
einsteigen will, sondern etwas braucht, was in den angegeben
Intervallen blinkt.
Wieso soll man für ein einmaliges Projekt sich mit solchen Sachen wie
der Programmierung von Mikrocontrollern "belasten"?

Ich habe keine Probleme damit, Werner einen Controller nach seinen
Vorstellungen zu programmieren.
Es geht ja nicht darum, dass er den fertigen Code von mir bekommt,
sondern den kompletten Baustein.

Was spricht dagegen, ihm einen fertigen Baustein zu liefern? (natürlich
gegen Materialkostenerstattung)

Autor: Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Marc:
Der Widerstand in deiner Schaltung ist auf der falschen Seite der Diode
und auch noch falsch herum gepolt. Zumindest hat P.S. aus H. das so
gesagt!

Autor: Marc Meise (bytewood) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Rahul
Na, dann muss es ja stimmen ......

Autor: Marc Meise (bytewood) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Peter
>es würde mich mal interessieren, wie dann so etwas in BASCOM aussehen
würde.

Ich habe z.Zt. 2 Jobs und muss auch am WE arbeiten.
Wenn ich es schaffe, dann poste ich meinen Code in er kommenden Woche,
aber verlass' Dich nicht drauf.

Gruß
Marc

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.