Hallo zusammen, nach einer längeren Pause habe ich eine neue Platine entwickelt. Diesmal habe ich eure Verbesserungsvorschläge berücksichtigt. Dank der Verwendung des MCP23017 werden jetzt nur noch vier Kabel benötigt: +5V, GND, SDA und SCL. Das vereinfacht die Verdrahtung ungemein. Siehe Foto. Die Abmessungen der Platine: 88 x 88 mm. Die Abmessungen der Leuchtkappen: 15 x 15 mm Falls jemand Interesse hat mit so einer Zusatzplatine zu experimentieren, dann kann er sie in eBay-Kleinanzeigen bei mir erwerben: https://www.ebay-kleinanzeigen.de/s-anzeige/4x4-leucht-taster-zusatzplatine-fuer-arduino-neueinsteiger/1182164929-226-944 In Youtube kann man auch ein Demo sehen, wie das ganze in Betrieb aussieht: https://youtu.be/DqNJi0F_67Y Ich werde nach und nach die anderen Demos auch für diese neue Platine umschreiben. Für Verbesserungsvorschläge bin ich weiterhin offen. Euer Remigius Miron
Wassermann E. schrieb: > nur noch vier Kabel vier Kabel oder vier Leitungen? Oder ein Kabel mit vier Leitungen? https://iwer.info/article/Elektrotechnik/Unterschied-Kabel-und-Leitung/index.html
Wassermann E. schrieb: > Diesmal habe ich eure Verbesserungsvorschläge berücksichtigt. Link zum dem dem Thread? Soll die Platine ein Spiel sein, oder zur Eingabe und Anzeige für Geräte dienen? Was mir auffällt: - Abblockkondensatoren für die ICs fehlen - keine Befestigungslöcher vorhanden falls das Teil in eine Frontplatte eingebaut werden soll - durch die Anordnung bzw. Bauart der Buchse könnte das Teil nicht kontaktiert werden wenn es in einer Frontplatte verbaut wird - ich würde auch keine Buchse sondern einen Stecker im 90 Grad Winkel für die Kontaktierung verbauen Die Pullups für den I2C-Bus sitzen vermutlich auf dem uC-Board? Du könntest die Schaltung und den Code posten? @Mod, TO Der Thread wäre in der Rubrik „Projekte & Code“ besser aufgehoben.
:
Bearbeitet durch User
Hallo Jörg, vielen Dank für deine konstruktiven Fragen. Mit meiner Aussage, dass ich "eure Verbesserungsvorschläge" berücksichtigt habe, habe ich auf meinen Thread vom Juni Bezug genommen. Der Titel war "Zusatzplatine für Microcontroller-Boards". Damals habe ich meine inzwischen veraltete Version vorgestellt. Also meine Zusatzplatine ist eher zum Spielen gedacht. Ich möchte lediglich dazu beitragen, dass sich noch mehr Leute für die Programmierung eines Arduino Boards begeistern. Und ihnen ein Hilfsmittel zur Verfügung stellen, wie man die Programmiersprache auf spielerische Weise erlernen kann. Ich spreche also gezielt Neueinsteiger an, um ihnen den Einstieg zu vereinfachen. Zumindest hat es mir sehr geholfen die Programmiersprache wieder schnell aufzufrischen. Vor allem mein Demo "Whisker Issue" war eine richtige Herausforderung und spannende Aufgabe zugleich. Selbstverständlich stelle ich hier gerne alle gewünschten Informationen zur Verfügung. Der Schaltplan ist kein Geheimnis. Und auch meine Demo-Sketche werde ich Interessenten zur Verfügung stellen. Darauf habe ich aber auch schon in meiner eBay-Kleinanzeige hingewiesen. Zumindest auf die Sketche. Schaltplan und Demo-Sketch habe ich soeben hier an meinen Beitrag angehängt. Es war meine Absicht das Board so einfach wie möglich zu gestalten. Es soll eigentlich nicht in eine Frontplatte verbaut werden. Es ist lediglich zum Experimentieren bzw. Spielen gedacht. Deshalb auch nur die einfach Buchse. Pullup-Widerstände sind lediglich die in den MCPs internen und werden per Befehl im Sketch aktiviert. Bezüglich der Abblockkondensatoren müßte ich noch recherchieren, ob die für spielerische Zwecke nötig sind. Im Grunde besteht meine Platine lediglich aus 16 Taster, die beleuchtet werden können. Und um dem Nutzer Kabelsalat zu ersparen, sind die MCPs davor geschaltet. Gruß, Remigius Miron
nettes board. Die Taster gefallen mir. Ist das ein Modul? oder ist der Rand selbstgedruckt/gebastelt. Ist die LED integrierter oder sind die LEDs unter den Schaltern positioniert. Hast du einen Artikel-Link zu den Tastern? Vorschläge/Kritik: Die fehlende Möglichkeit, das anzubauen, ist klar ein Kritikpunk. Ich hätte das auch so designt, dass die Buttons auf der einen Seite und die Bestückung auf der anderen ist, und das PCB überstehen lassen und Befestigungslöcher vorgesehen, in die man ja auch Abstandshalter, stecken/schrauben kann, um es auf dem Tisch zum Experimentieren zu benutzen. Falls die Taster so hoch sind, dass auch eine Befestigung trotz der oben aufgelöteten ICs möglich wäre, würde es reichen den Conector weiter an den Rand zu setzen, damit man auch einen abgewinkelten nehmen kann (und ich würde was einreihiges benutzen). Man könnte noch einen Pin für die Interupt-Leitung verbinden. Wenn man den ganz außen an die leiste legt, kann der Benutzer selbst entscheiden, ob er eine Leitung mehr anschließen möchte. Ein gemeinsamer Vorwiderstand für 2 LEDs ist auf jeden Fall mindestens unschön. Ein Problem könnte sein, dass du alle LEDs an einem Chip hängen hast. Damit addiert sich im worst-case (alle LEDs an) der Gesamtstrom auf über 125mA, die der Chip an VDD verkraftet. (schätze mal der 150Ohm Widerstand ist für ~ 10mA berechnet) Du treibst die LEDs active-high. Mit active-low würde der Chip 25mA mehr liefern können, immer noch zu wenig für die LEDs. Man könnte natürlich auch die LEDs und Taster aufteilen. Ein Chp für die oberen beiden Reihen, einer für die unteren. Dann wärst du auf jeden Fall im Grünen Bereich. Frage an die Experten: Könnte man durch geschickte Verschaltung und mittels Open-Drain-Setting des Expanders nicht Taster und LED an einen Pin hängen? Dass die LED beim drücken dann leuchtet, könnte man als Feature durchgehen lassen ;) Zum Tastenauslesen, wird halt kurz auf Input umgeschaltet.
Hallo Vlad, vielen Dank für die sehr fachkundige Auseinandersetzung mit meiner Zusatzplatine. Also die Taster sind einfache Micro-Taster. Auf diese sind Leuchtkappen von MENTOR aufgesteckt. Neben den Tastern leuchten beide LEDs die Leuchtkappen an. Auf dem neuen Foto kann man das am besten sehen. Bei meiner nächsten Version könnte ich all die Verbesserungsvorschläge durchaus einfließen lassen. Aber ich denke auch so kann man mit dieser Platine schon einiges anfangen. Für die LEDs habe ich tatsächlich 10 mA vorgesehen bzw. für zwei parallelgeschaltete LEDs ein Gesamtstrom von 20 mA. Das schränkt die Anwendung aber ein, weil dann tatsächlich nie zu viele LEDs gleichzeitig leuchten dürfen, weil dann die 125 mA zulässiger Gesamtstrom schnell überschritten werden. Höchstens 6 Taster dürfen gleichzeitig leuchten. (20 mA x 6 Pins = 120 mA) Deshalb ist es sicherer, wenn ich die LEDs nur mit 5 mA betreibe. Dann muß man sich über die Anzahl der gleichzeitig leuchtenden LEDs weniger Sorgen machen. Der LED-Strom darf aber auch nicht zu klein sein, weil sonst die Leuchtkappen zu schwach leuchten. Tatsächlich ist dein Vorschlag, dass ein IC für 8 LEDs und 8 Taster zuständig sein sollte ein sehr konstruktiver. Das versuche ich auf jeden Fall bei meiner nächsten Version umzusetzen. Das wäre mir immer noch lieber als jeden Pin mit einem Treiber-Transistor zu versehen, weil zusätzliche Treiber-Transistoren die Anzahl der Elektronik-Bauteile wesentlich erhöht und das Handlöten dadurch immer aufwändiger wird. Sobald ich das Budget habe meine Platinen auch maschinell bestücken zu lassen, können auch mehr Elektronik-Bauteile drauf. Die Frage, ob man LED und Taster an einen Pin hängen könnte? Ich glaube das würde die Anwendungsmöglichkeiten auch einschränken. Der Nachteil wäre ja dann, dass beim kurzen Tasterauslesen, die LEDs kurz ausgehen würden. Das könnte in vielen Anwendungen durchaus stören. Aber die Idee ist tatsächlich interessant, weil man dann mit nur zwei ICs ein 2 x 16 = 32 LED-Taster-Feld realisieren könnte... Danke und Gruß, Remigius Miron
Wassermann E. schrieb: > Für die LEDs habe ich tatsächlich 10 mA vorgesehen bzw. für zwei > parallelgeschaltete LEDs ein Gesamtstrom von 20 mA. bist du sicher, dass das stimmt? Die LEDs werden doch ca 3.6V brauchen, oder? 5V 150Ohm -> (5V-3.6V)/150Ohm Macht einen Strom von 10mA durch den Widerstand, also insgesammt. Wie die sich auf beide LEDs aufteilt, hängt von Fertigungstoleranzen ab. Du könntest dir natürlich auch "einfach" einen IC suchen, der mehr treiben kann. Für SPI kenne ich den TPIC595, gibt doch bestimmt was ähnliches für I²C Wassermann E. schrieb: > Ich glaube das würde die Anwendungsmöglichkeiten auch einschränken. > Der Nachteil wäre ja dann, dass beim kurzen Tasterauslesen, die LEDs > kurz ausgehen würden. Ich bezweifel, dass du das sehen könntest, wenn man alle 5-10 millisekunden mal umschaltet und die taster ausliest.
Vlad T. schrieb: > Wassermann E. schrieb: >> Ich glaube das würde die Anwendungsmöglichkeiten auch einschränken. >> Der Nachteil wäre ja dann, dass beim kurzen Tasterauslesen, die LEDs >> kurz ausgehen würden. > > Ich bezweifel, dass du das sehen könntest, wenn man alle 5-10 > millisekunden mal umschaltet und die taster ausliest. Die Platine soll sich ja an Neueinsteiger richten? Damit fände ich so ein Vorgehen eigentlich zu kompliziert.
Hallo Vlad, zu den LEDs: Ich ging fälschlicherweise davon aus, dass die LEDs nur 2 V brauchen. Deshalb kam ich beim Vorwiderstand auf einen Strom von: I = (5V-2V) / 150 Ohm = 3V /150 Ohm = 20 mA bzw. pro LED 10 mA. Tatsächlich sieht es aber ganz anderes aus. Ich habe nämlich mal nachgemessen: Die LEDs haben eine Vorwärtsspannung von 2.8V Das stimmt auch mit dem Datenblatt überein wo die Vf,min = 2.7V ist. Siehe Datenblatt zur LWT673-Serie von OSRAM. Und am I/O-Ausgang des MCP23017 z.B. am Pin21 = GPA0 steht von der angelegten Vdd = 5V nur noch 4.4 V zur Verfügung. D.h. der Strom ist in Wirklichkeit: I = (4.4V - 2.8V) / 150 Ohm = 10.7 mA bzw. pro LED nur 5.35 mA. Also kann man noch viel mehr LEDs gleichzeitig betreiben. Vielleicht wäre es aber trotzdem das beste, wenn es einen IC gäbe, der mehr treiben kann. Das werde ich für die nächste Version überprüfen. Auch den Vorschlag die Taster für paar msec auszulesen werde ich mal überdenken. Doch jetzt brauche ich erstmal eine Weihnachtspause.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.