Anzeige:

Lichttunig am Modellfahrzeug

Hier finden sie die archivierten Beiträge des alten PHPBB Forums von www.loetstelle.net

Von kalledom am 29.06.2008 20:14

Iskander22 hat folgendes geschrieben:
Daher weiß ich immernoch nicht, an Welche Pins ich welche Datenleitung anlegen muss, wie ich das am Computer über die Software ansteuere, und wie ich es schaffe, am ende mindestens 4,5V zu schalten.
Dann kann ich Dir eigentlich nur empfehlen, NICHTS an dem PC anzuschließen, weil ein falscher Draht am falschen Pin den PC bzw. die betreffende Schnittstelle zerstören wird.

Meiner Meinung nach ist das hier ein Forum, das Dir konkrete Fragen beantwortet, für Probleme einige Lösungen gibt und Tips und Anregungen liefert.
Es ist keine Fernschule, die Dir komplettes Grundwissen vermittelt; das solltest Du erst mal selber aneignen. Wenn dann noch Fragen offen sind, werde ich Dir so gut ich kann helfen.

Von gerold am 29.06.2008 23:59

Hallo Iskander22!

Du stehst also noch ganz am Anfang! Ich mache es kurz und empfehle dir, dich ein wenig mit Mikrocontroller (µC) zu befassen. Dafür empfehle ich dir das myAVR Board 2 USB http://www.myavr.de/shop/article.php?artDataID=35



und die Lektüre des kleinen Bascom AVR Kurses.

Mit dem ATmega8 alleine, könntest du schon bis zu 20 Ausgänge schalten. Wenn du an die Ausgänge des ATmega8 die von dir bereits erwähnten 4094-ICs dran hängst, dann kannst du ziemlich viele Ausgänge damit schalten.

Das ist kein Problem. Mit nur einem BASIC-Befehl kannst du dann einen oder mehrere dieser 4094-ICs ansteuern. Dieses Programm können wir gemeinsam entwickeln.

Die Kommunikation mit dem Computer läuft über den mitgelieferten Programmer -- den mySmartUSB. Dieser kann einen COM-Port simulieren.

Man kann mit fast jeder Programmiersprache direkt über einen COM-Port kommunizieren. Dieses Beispiel, welches mit der Programmiersprache PYTHON geschrieben wurde, schickt den Text "Hallo" an den µC:

Code:
import serial
ser = serial.Serial("COM1") #open first serial port
ser.write("Hallo") #write a string to COM1
ser.close() #close port

Und wenn du schon "Hallo" an den µC schicken kannst, dann kannst du ihm auch einen Text schicken, der den µC anweist, Ausgänge ein- oder auszuschalten. Wink

Wenn du den kleinen Bascom-AVR Kurs durchliest, dann hast du genug Basis, damit wir gemeinsam ein kleines Programm für dich entwickeln können. Beim Programm für den Computer kann ich dir auch unter die Arme greifen. Vielleicht willst du den µC ja auch ohne den Computer arbeiten lassen. Dann könnte man das Programm so schreiben, dass vom PC aus nur mehr der Arbeitsablauf an den µC gesendet wird. Dann kann der µC im weiteren Verlauf die Lichter selbständig schalten. Also mit einem µC ist deiner Phantasie bei diesem Projekt nach oben keine Grenze gesetzt. Very Happy

mfg
Gerold
Smile

Von TheBug am 30.06.2008 12:40

Gerold, Deine Begeisterung für Microcontroller in allen Ehren, aber wenn der arme Kerl schon nicht weiss was ein Pull-Up Widerstand und ein Strobe Signal sind, dann wird der Versuch einen Microcontroller zu programmieren UND die notwendige Elektronik dazu zu bauen nur zu Frustration führen.

Es ist auf jeden Fall notwendig zumindest ein paar Elemente durch bekannt funktionierende Lösungen zu ersetzen, damit hier was bei rauskommen kann.

Von TheBug am 30.06.2008 12:43

Zur Anbindung Deiner Schieberegister an einen SPI Port:
Stobe = /SS (eventuell ist hier ein Inverter notwendig)
Clk = SCLK
Data = MOSI

SPI ist nichts weiter als ein halbwegs vereinheitlichtes Schieberegister um zwischen Chips zu kommunizieren.

Von gerold am 30.06.2008 12:50

TheBug hat folgendes geschrieben:
Gerold, Deine Begeisterung für Microcontroller in allen Ehren, aber wenn der arme Kerl schon nicht weiss was ein Pull-Up Widerstand und ein Strobe Signal sind, dann wird der Versuch einen Microcontroller zu programmieren UND die notwendige Elektronik dazu zu bauen nur zu Frustration führen.

Hallo TheBug!

Wenn er sich ein wenig mit dem kleinen Bascom-AVR-Kurs befasst, dann hat der dieses Problem nicht mehr. Dort steht alles beschrieben. Von der Stromversorgung, über PullUp-Widerstände, bis zum Ansteuern von LEDs oder Relais. Alles was er braucht, um sein Vorhaben in die Tat umzusetzen. Und dass er Elektronikteile einkaufen und die dort gezeichneten Schaltpläne zusammenlöten kann, davon gehe ich aus.

Wenn er sich das zutraut, dann wird er in kürzester Zeit sehr viel dabei lernen und eine nicht gewohnte Flexibilität erfahren. Und wenn er sich das nicht zutraut, dann kann er es uns ja mitteilen und nach einer anderen Lösung suchen.

Außerdem bin ich drauf gekommen, dass viele nicht wissen, wie einfach der Umgang mit Mikrocontrollern ist. Viele scheuen davor zurück, weil sie glauben, dass die Arbeit mit Mikrocontrollern komplizierter als die Arbeit mit TTL-Bausteinen ist. Aber genau das Gegenteil ist der Fall.

mfg
Gerold
Smile

Von kalledom am 30.06.2008 17:06

gerold hat folgendes geschrieben:
Außerdem bin ich drauf gekommen, dass viele nicht wissen, wie einfach der Umgang mit Mikrocontrollern ist. Viele scheuen davor zurück, weil sie glauben, dass die Arbeit mit Mikrocontrollern komplizierter als die Arbeit mit TTL-Bausteinen ist. Aber genau das Gegenteil ist der Fall.
Das ist sicher Deine persönliche Meinung, die ich so nicht teilen kann.

Da kenne ich z.B. einige Studenten, die sich einen Stamp (? von Elektor), AVR-Board, PIC-Board, diverse Roboter mit µC und ich weiss nicht was gekauft haben und ihre Schaltungen mit Timer 555, 74-er und 4000-er Bausteinen aufbauen. Warum mag das wohl so sein ? Das sind keine Anfänger, sondern Leute, die mindestens über elektronische Grundkenntnisse verfügen !

Es geht um das Nachvollziehen / Messen und Begreifen von logischen Abläufen im Zusammenhang mit boolscher Algebra.
Änderungen der Logik sind schnell und nachvollziehbar durchgeführt.
Man kann sogar einzelne Abschnitte herausnehmen und für sich behandeln.
Das könnte man auch alles mit GALs machen. Macht aber keiner; warum wohl nicht ? Muß programmiert werden !
Versuche Logik mal mit abstrakter Software zu erklären Rolling Eyes

Du und ich haben funktionstüchtiges Equipment auf dem Tisch liegen. Da ist gut reden. Ich kenne hier im Forum einen Thread, da bekommt jemand nicht einmal das Programmiergerät zum Laufen ! Da kommt in der Tat fürchterlicher Frust auf. Ich erinnere mich auch noch an Zeiten, wo mich ein PIC16F877A tagelang zur Verzweiflung gebracht hatte, weil dieses A hinter der Bezeichnung ein neues Programmiergerät MPLAB ICD 2 erforderlich machte, was mir nicht bekannt war !
Von den Fallgruben bei der Programmierung mal ganz abgesehen, die gibt es nicht nur beim PIC. Schau Dir doch die µC-Foren an, wie viele Fragen dort gestellt werden, weil die Schaltung nicht läuft. Ist die Hardware oder Software schuld ?
Fragen über logische Schaltungen sind da um ein vielfaches weniger, weil jeder mit einem einfachen Meßgerät seine Schaltung überprüfen kann.

Daß Du den Fragestellern Arbeit abnimmst und ihnen das Programm schreibst, vielleicht auch noch eine Platine mit Bauteilen oder sogar fertig lieferst, ist das der Sinn eines Forums ? Begreift der Fragesteller so, was da passiert ?

Es ist ein weiter und steiniger Weg, eine Schaltung mit AVR, PIC, .... zum Laufen zu bekommen.
Eine Entscheidung zu treffen, ab wann ein µC eingesetzt wird oder bis wann Logik-Bausteine besser sind, ist nicht immer einfach.
Für einen Anfänger finde ich den Einsatz von Logik-Bausteinen und das Begreifen der Logik sinnvoller. Später ist es dann leichter, diese (Er)Kenntnisse bei der Programmierung mit einzusetzen.

Von gerold am 30.06.2008 17:36

Hallo kalledom!

kalledom hat folgendes geschrieben:
Da kenne ich z.B. einige Studenten, die sich einen Stamp (? von Elektor), AVR-Board, PIC-Board, diverse Roboter mit µC und ich weiss nicht was gekauft haben und ihre Schaltungen mit Timer 555, 74-er und 4000-er Bausteinen aufbauen. Warum mag das wohl so sein ? Das sind keine Anfänger, sondern Leute, die mindestens über elektronische Grundkenntnisse verfügen !

Ich kann doch nichts dafür, wenn sie sich von Anfang an für das falsche Equipment entschieden haben und keinen guten Lehrer an der Seite hatten. Rolling Eyes

kalledom hat folgendes geschrieben:
Du und ich haben funktionstüchtiges Equipment auf dem Tisch liegen. Da ist gut reden. Ich kenne hier im Forum einen Thread, da bekommt jemand nicht einmal das Programmiergerät zum Laufen !

Leider sparen viele Menschen an der falschen Stelle. Aber es gibt fertig aufgebaute Programmer, die erprobt sind und auch auf den blödesten Computern mit USB-Anschluss laufen. Und zu einem dieser Programmer habe ich im kleinen Bascom-AVR Kurs eine Installationsanleitung geschrieben.

Wer eine Billiglösung möchte kann sie haben, muss aber damit rechnen, dass es dabei Probleme geben kann. Und wenn jemand nicht auf mich hört und davor zurückschreckt, einen Treiber-IC zu kaufen um damit einen STK200 aufzubauen, dann kann ich auch nichts dagegen machen.

kalledom hat folgendes geschrieben:
Von den Fallgruben bei der Programmierung mal ganz abgesehen, die gibt es nicht nur beim PIC.

Wer es einfach haben möchte, der programmiert einen AVR mit Bascom und nicht mit C oder Assembler.

kalledom hat folgendes geschrieben:
Fragen über logische Schaltungen sind da um ein vielfaches weniger, weil jeder mit einem einfachen Meßgerät seine Schaltung überprüfen kann.

Oder ist es nicht eher so, dass es nicht so viele Leute gibt, die sich so eine Schaltung selber planen können?

kalledom hat folgendes geschrieben:
Daß Du den Fragestellern Arbeit abnimmst und ihnen das Programm schreibst... ? Begreift der Fragesteller so, was da passiert ?

Das ist eine vielfach erprobte Strategie. Leuten, denen ich so geholfen habe, stellten später viel weniger blöde Fragen. Es ist ja nicht so, dass ich einfach ein Programm schreibe und nicht erklären würde was, wo, wie und warum passiert.

Ist es nicht viel schlimmer, wenn Leute einfach im Regen stehen gelassen werden? Statt einem ersten Erfolgserlebnis...

kalledom hat folgendes geschrieben:
Es ist ein weiter und steiniger Weg, eine Schaltung mit AVR, PIC, .... zum Laufen zu bekommen.

Das war es einmal.

Stelle einem Anfänger die Aufgabe, zwei LEDs in dieser Reihenfolge blinken zu lassen:
- erste LED drei mal hintereinander (je eine Sekunde Pause)
- zweite LED drei mal hintereinander (je eine Sekunde Pause)
- beide LEDs vier mal hintereinander (je eine Sekunde Pause)
- kurze Pause
- und dann wieder von vorne

So etwas kann ein Anfänger schon nach dem ersten Hallo-Welt-Programm mit einem µC machen. Ich garantiere dafür, dass ein mündiger und geistig anwesender Mensch so etwas schon nach einem Tag fertigbringt.

Die Programmiersprache BASIC ist dafür bekannt, dass sie sehr einfach zu erlernen ist. Und in Bascom hat man sich schon nach wenigen Stunden eingearbeitet. Im Gegensatz zu Assembler oder C. Da braucht man ja schon einen Tag um als Anfänger die Entwicklungsumgebung zum Laufen zu bekommen.

Es wäre wirklich mal interessant, die Meinung von denen zu hören, die sich den kleinen Bascom-AVR-Kurs durchgelesen und die Beispiele aktiv mitgemacht haben.

Außerdem finde ich es schade, dass hier in diesem Forum schon zum zweiten Mal etwas schlecht geredet wird. Es wäre schade, wenn genau deshalb auch aus diesem Projekt nichts wird.

mfg
Gerold
Smile

PS:
kalledom hat folgendes geschrieben:
vielleicht auch noch eine Platine mit Bauteilen oder sogar fertig lieferst

So etwas mache ich nicht.

Von pcprofi am 30.06.2008 18:39

Nun - auch wenn ich über kein so vollständiges Equipment wie ihr verfüge, aber hier muss ich mich mal einmischen...

Also sorry für OT @Threadersteller...

Irgendwo habt ihr beide Recht.

Was Kalledom meint, das ist die vorgehensweise (ich hab auch mal damit angefangen) um Logik und TTL zu Begreifen. Logisch, (fast) alles lässt sich mit den genannten Bausteinen aufbauen - man muss halt den Grips anstrengen um dort etwas funktionierendes heraus zu bekommen und natürlich hat man hier den viel größeren Lerneffekt in der - naja ich sag mal tieferen - Elektronik. Hier ist einfach das elektrotechnische Verständnis viel viel mehr gefragt.

Wenn man jetzt aber einen µC im Vergleich dazu nimmt, dann ist es so, dass man Basic innerhalb von einem Tag kann. Und in Basic mit einem µC ein UND oder ODER oder NAND-Gatter zu erstellen, das sind wirklich WENIGE Zeilen. Wenn sich also einer damit nicht auskennt, sicher eine einfachere Lösung, man braucht sich (theoretisch) noch nicht mal Gedanken darüber machen, Was für ein Gatter man bräuchte.

Die Probleme die bei beiden Dingen auftreten halten sich imho gleich... Entprellen, entstören usw hält sich alles - und falsche Gatterkombinationen halten sich auch in etwa mit falschen Programmtexten - wie gesagt ist meine Meinung, ich hab jetzt mit beidem meine ersten Erfahrungen gesammelt.

Im Prinzip ist für mich der riesige Vorteil vom µC der Platz-Aspekt. Die Stromversorgung bleibt sich gleich - und jenachdem son 8-Pin-Tiny - den kriegt man vom Platz her kaum ersetzt wenn man komplexere Aufgaben hat...

Meiner Meinung nach liegt hier die Entscheidungsgrundlage zwischen den beiden Techniken ganz einfach darin, dass der "User" für sich entscheiden muss, ob er wirklich Grundlagen lernen möchte oder ob er weiß wie man nen Taster und ne LED an nen Pin knüpft und "dann funktionierts" (klar - Programmtücken eben)...

naja - soweit mein Senf dazu erstmal... Ist Rohfassung - Fehler bitte Überlesen...

BTT Very Happy

Gruß Rainer

Von Iskander22 am 30.06.2008 20:59

Salve,

gerold hat folgendes geschrieben:
Du stehst also noch ganz am Anfang! Ich mache es kurz und empfehle dir, dich ein wenig mit Mikrocontroller (µC) zu befassen.


Ich denke, dass du recht hast. Wer das Spiel Garry's Mod kennt, der hat bestimmt auch mithilfe des Wiremod's schon ein paar logische Schaltungen gebaut. In der neusten version hatte es mich auch gefreut, dass sowas ähnliches wie µC's eingeführt wurden Very Happy.

TheBug hat folgendes geschrieben:
Deine Begeisterung für Microcontroller in allen Ehren, (...),dann wird der Versuch einen Microcontroller zu programmieren UND die notwendige Elektronik dazu zu bauen nur zu Frustration führen.


Keine Sorge. Ich weiß zwar nicht, dass diese bauteile bewirken, aber wenn es um's Coden geht, habe ich schon vorkenntnisse. An der Software wird es dann wohl nicht scheitern. Und so einen Bausatz nach Schaltplan zusammen zu Löten ist auch nicht allzu Schwierig. Smile


Ich denke, dass ich mich wohl für die µC's entscheiden werde, obwohl der Preis doch recht hoch ist, im gegensatz zur Schaltung von Kalledom.

Danke an alle! Ihr seid mir eine große Hilfe.

Mfg
Iskander

Von TheBug am 30.06.2008 23:53

Iskander22 hat folgendes geschrieben:
Ich denke, dass ich mich wohl für die µC's entscheiden werde, obwohl der Preis doch recht hoch ist, im gegensatz zur Schaltung von Kalledom.


OK, da wären wir dann bei einem Problem.

Du willst 43 LEDs ansteuern, pro LED 20mA, das macht dann 860mA. Selbst wenn Du nur 5mA pro LED nimmst brauchst Du immer noch einen Microcontroller der 215mA auf seinen Pins in der Summe abkann und er muss mindestens 43 Pins plus einige mehr für irgend eine Kommunikation haben.

Wird also wohl darauf hinauslaufen, dass Du ein (langes) Schieberegister brauchst um nicht einen ganz dicken µC zu benötigen der dann auch gleich gegrillt wird wenn alle LEDs gleichzeitig einschalten.

Und wenn ich mich richtig erinnere war ja der Ansatz mit dem Microcontroller daraus entstanden die Notwendigkeit eines Interfaces zum PC zu lösen? Ist mir etwas unklar warum der jetzt plötzlich die LEDs auch noch treiben soll.

Also back to the drawing board. Die Schieberegisterkette ist notwendig und billiger als einen µC mit entsprechend vielen IOs zu nehmen der dann noch Treiber braucht um den Strom für die LEDs zu haben.

Stellt sich also nur die Frage wie die Schieberegister an den PC sollen?


@Gerold: Microcontroller sind ja was Schönes, ich verdiene auch mein Geld damit und das seit über 20 Jahren. Aber die Welt besteht nicht nur aus Nägeln, es gibt auch andere Werkzeuge als Hämmer. Ein guter Ingenieur oder Techniker nimmt die Lösung die am besten zur Aufgabe passt, dazu gehört aber auch mehr als eine Methode zu beherrschen.

Anzeige: