Hallo Zusammen, nach langjähriger Pause möchte ich wieder in die Elektronik als Hobby einsteigen. Und zu aller erst will ich ein wenig mit den AVR Tiny Mikrocontrollern rumspielen und dabei meine Sporen in der ASM Programmierung verdienen. Nun habe ich ein kleines Logikproblem mit der externen Beschaltung für Ein- und Ausgabe am AVR. Ich möchte mich noch nicht auf einen bestimmten Typen festlegen (momentan habe ich ATtiny24 und ATtiny25 zur Verfügung), daher die Bezeichnung IO_0-2 in der Skizze. Das Ziel: Ich habe zwei Signalleitungen nach außen, hier kann ich mit einem Taster die Leitung überbrücken und so ein Signal (Taster gedrückt) erzeugen. Ebenso sollte über die beiden Leitungen eine Duo-LED angeschlossen werden, die Farbe wird hier durch umpolen der Versorgungsspannung erreicht. (die beiden Dioden in Reihe sollen einen gewissen Spannungsabfall erwirken, für die Idee mit: 3.3V LED off, 5V LED on) Zustand IO_0 IO_1 | Polung Spannung -------------------------------------- 0 Lo Lo | X 3.3V (LED off) 1 Hi Lo | + - 5.0V (LED rot) 2 Lo Hi | - + 5.0V (LED grün) 3 Hi Hi | X 3.3V (LED off) Alternative: Zustand IO_0 | Spannung -------------------------------------- 0 Lo 3.3V (LED off) 1 Hi 5.0V (LED on) Zustand IO_1 | Polung -------------------------------------- 0 Lo + - 1 Hi - + Die 3.3V Grundspannung dient zur Funktionserhaltung des Tastendrucks auch wenn LED off. (Beispiel) Taster IO_0 IO_1 | IO_2 -------------------------------------- 0 X X | 0 1 X X | 1 Ebenso sollte die Schaltung im Zustand 0/3 möglichst wenig Strom verbrauchen (da Batteriebetrieb). Zustand 3 sollte softwaretechnisch ausgeschlossen werden, könnte aber bei Reset des ATtiny dennoch auftreten. Das Problem: Ich bin in der Lage beide Ziele einzeln zu lösen ... Taster: -------------------------------------- SIGNAL_0.0 - IO_2 SIGNAL_0.1 - GROUND LED: -------------------------------------- IO_0 - Right Side H-Bridge IO_1 - Left Side H-Bridge VCC - Top H-Bridge GROUND - Bottom H-Bridge SIGNAL_0.0 - Out_0 H-Bridge SIGNAL_0.1 - Out_1 H-Bridge ... jedoch stehe ich mit der Kombination der beiden Funktionen etwas auf dem Schlauch. Habt ihr mir hier ein paar Anregungen/Ideen/Tips evtl. reicht auch ein Schlagwort, nachdem ich suchen kann? Fest sind die 2 Signalleitungen und möglichst wenig IOs am ATtiny. Und natürlich soll das Ganze möglichst elegant mit wenig unterschiedlichen Bauteilen funktionieren, da der Platz für die Beschaltung wie immer Mangelware ist. :-) Vielen Dank schon ma im Vorraus für eure Mühe, Theo.
Ich habe zwar normalerweise keine Probleme mit Textaufgaben, aber hier verstehe ich weder den Sinn noch die Aufgabenstellung. Was soll das denn werden? Im Titel steht was von Fernbedienung, soll der Taster und die LED getrennt sein oder soll an zwei Orten eine Kombination aus LED und Taster sein? Wenn schon die Innenbeschaltung unklar ist, dann sollte vielleicht die externe Aufteilung deutlicher sein. Um in der ferne eine LED leuchten zu lassen, brauchts jedenfalls keinen Attiny.
Theodor Karillion schrieb: > 1 Hi Lo | + - 5.0V (LED rot) > 2 Lo Hi | - + 5.0V (LED grün) Du willst da +-5V anschliessen und dann sollen die LEDs leuchten? Da wirst du bestenfalls ein kurzes "Aufleuchten" sehen, und dann sind die Dinger kaputt. Wozu sind in dieser Geschichte hier eigentlich die beiden Dioden? Zur künstlichen Erhöhung der Durchlasspannung? Was ist an dieser Aufgabe gegeben und was willst du erreichen? Ich sehe es so: Du hast zwei Adern verlegt. Du willst darüber eine rote und eine grüne LED leuchten lassen und zudem einen Taster abfragen.
Danke, das ist die Essenz: Lothar Miller schrieb: > Du hast zwei Adern verlegt. > Du willst darüber eine rote und eine grüne LED leuchten lassen und > zudem einen Taster abfragen. Ob 2 LEDs oder Duo-LED ist ja egal. OK, ich gebe zu mein Text ist etwas wirr, aber steht alles drin. Vorgabe: 2 Signalleitungen (SIGNAL_0.0 und SIGNAL_0.1) Anschluss von X Tastern (siehe Schaubild) Anschluss von X Duo LEDs (siehe Schaubild) Wenig IOs vom ATtiny (mit meinem Lösungsansatz IO_0-2) Zustände siehe Logikdiagramm aber nochmal (IO_0 und IO_1): LED AUS LED GRÜN LED ROT In jedem Zustand Tastenklick erkennen -> IO_2 Zur Umgebung: Ich habe eine Black-Box, da ist ein ATtiny drin mit etwas Schaltung. Aus der Box herraus ragen 2 Käbelchen an die ich parallel mehrere Taster und LEDs hängen möchte. Problem: das "etwas Schaltung" ist mir gerade noch zu Hoch und bitte hier um Hilfe/Rat/Tips. Lothar Miller schrieb: > Du willst da +-5V anschliessen und dann sollen die LEDs leuchten? > Da wirst du bestenfalls ein kurzes "Aufleuchten" sehen, und dann sind > die Dinger kaputt. Ein Lösungsansatz meinerseit war: 3.3V -> LED aus, 5.0V -> LED an Da dienen die beiden anderen Dioden zur Erhöhung der Durchlasspannung. (von mir aus auch 3 Dioden 3 x 0.7V = 2.1V Spannungserhöhung, aber das ist ja nur Beispielsweise!) Und dass mir die LEDs bei 5V nicht hopps gehen, dazu ist der Widerstand da (die 5K sind nur als Beispiel!). Wenn ihr andere Tips habt, wie ich ganz einfach die Funktion Taster + LEDs lösen kann, bin ich dem nicht abgeneigt (meines war ja nur ein Lösungsansatz :-) ).
Naja, irgendein serielles Interface + Chip auf der anderen Seite macht vermutlich mehr Sinn, als so ne Konstruktion, grade da du ja von "X" Leds und "X" Tastern redest. Irgendwie geht es sicher, aber wie du schon gesehen hast sind 2 Pins halt schwierig, ohne PWM und/oder schnelle Moduswechsel der Pins oder serielle Übertragung wirds nicht gehen.
Hallo Theodor, also mehrere Taster und mehrere DuoLEDs an 2 Signalleitungen wird nicht funktionieren. Es sei denn, Du baust bei den LEDs und Tastern so etwas wie einen TwoWire-Slave auf. Einen Taster und eine DuoLED an 2 Signalleitungen ist aber schon möglich: Schließ den Taster und die DuoLED einfach parallel und dann damit in Reihe einen Widerstand, z.B. 1kOhm. Daran lötest Du deine Signalleitungen. Die anderen Enden der Signalleitungen sind mit 2 AVR-PortPins verbunden. Durch Umpolen kannst Du (wie oben beschrieben) die beiden Farben leuchten lassen. (Zusätzliche Dioden brauchst Du dafür nicht.) Alle 100ms schaltest Du mal einen Port auf "L" und den anderen auf "H". Danach schaltest Du den H-Port auf Eingang und wertest den Logikpegel aus. Wenn es immer noch "H" ist, war der Taster nicht gedrückt. Bei "L"-Pegel war der Taster gedrückt. Das geht so schnell, da werden die LEDs nicht sichtbar flackern. Falls die Leitungskapazität nicht ausreicht (der Port "zieht" als Eingang max. 1uA) schaltest Du noch 1nF parallel zum Taster. Aber Achtung: Dann muß das H-Signal auch etwas länger anliegen, weil der 1nF über den Widerstand mit aufgeladen werden muß (über 0,7V). Grüße
Ich will mal den ADC mit in die Diskussion einwerfen. Man kann recht viele Taster an eine der LED-Leitungen hängen, mit jeweils anderem Spannungswert über entsprechende Widerstände. Diese mittelohmig an einen Pin dran. Beide Pins auf Eingang und den mit den Tastern messen. Sind die Pins Ausgänge stören die Taster nicht, sind sie Eingänge stören die LEDs nicht. Geht natürlich nicht gleichzeitig messen und leuchten.
Darf die gerade Leuchtende LED ausgehen, wenn der Taster gedrückt wird? Leuchtet bei unbetätigtem Schalter immer eine der beiden LEDn?
1 | _____ |
2 | | .--*--------*---------* |
3 | P0|-*----------. .--. / _|_ _|_ | |
4 | µC | | \/ \/ \ /rot ^ grün *| Taster |
5 | | | /\ /\ _V_D1 /_\D2 *| |
6 | P1|-+--*-------´ `--´ \ | | | |
7 | _____| | | Leitung `--*--------*---------* |
8 | | | |
9 | R1 R2 |
10 | 1k 1k |
11 | | | |
12 | VCC--*--* |
Die Leitungen werden "hart" nach GND gezogen, d.h. emuliere hier an P0 und P1 jeweils einen Open-Collector-Ausgang(sonst ist eine LED futsch). Wenn die rote LED an sein soll, wird P1 nach GND gezogen, P0 ist dann der Tastereingang. Wenn die grüne LED an sein soll, wird P0 nach GND gezogen, P1 ist dann der Tastereingang. Bei 2 Portpins gibt es nur 4 mögliche Spannungen zwischen den Pins: a) 0V (beide lo) b) VCC (einer hi der andere lo) c) -VCC(einer lo der andere hi) d) 0V (beide hi) Dummerweise sind die 2x 0V weder dazu geeignet, LEDs leuchten zu lassen noch den Taster zu bestromen, um ihn abfragen zu können. Es gibt allerdings eine Lösung, die mit ein weing passiven Bauelementen keine LED angehen lässt aber dennoch eine Tasterabfrage gestattet. Dazu an der Tastereinheit noch einen Serienwiderstand vor jede LED und einen Kondensator parallel zu jeder LED. Wenn man die Zustände b) und c) genug schnell umschaltet, leuchtet keine LED, der Tastendruck wird jedoch erkannt. Wenn man eine LED anhaben will, dann so wie oben. Tastendrücke werden dann natürlich trotzdem erkannt. mfg mf PS: damit bei der obigen Schaltung eine 1 bei roter LED zuverlässig erkannt wird, ist es u.U. nötig, dort eine Diode vorzuschalten(U_f≈1,6V, nachher dann 2,3V wie bei der grünen). Mir sind aber auch schon grüne LEDn mit U_f < 2V untergekommen.
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.