www.mikrocontroller.net

Forum: Analoge Elektronik und Schaltungstechnik Frage zu Transistoren


Autor: Stefan T. (stefan_t)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich hätte da mal eine Frage zu Transistoren.
Muss dabei sagen das ich nicht viel Ahnung habe.....

Erkläre erst mal worum es genau geht.

Ich habe 16 Ausgänge zur verfügung die sich auf Grnd. schalten lassen.
An diesen Ausgängen sollen Lampen (Ge555 6,3V) angeschlossen werden.
Diese 16 Ausgänge sind viel zu wenig.
Jetzt habe ich mir eine alte Platine geschnappt auf der 4 decoder sind 
(MC14514) diese kann ich nun mit 8 Ausgängen verbinden so das sich 60 
Schaltungen ergeben.
Habe mir zum testen eine Platine mit 60 LED´s gelötet.
Soweit funktioniert da auch wie ich mir das vorgestellt habe.
Kann jetzt jede beliebige der 60 LED´s anschalten.

Hinter den Ausgängen von den MC14514 sind 60 Triacs geschaltet.
Diese sind 24x MCR-106 (für 2 Lampen gleichzeitig) und 36x 2N5060 für 
jeweils eine Lampe.

jetzt ergibt sich das Problem das die Triacs ihren Schaltzustand 
beibehalten, bedeutet das sich die LED`s (die später durch o.g. Lampen 
ersetzt werden sollen) nicht wieder ausschalten lassen.

Wie kann ich das bewerkstelligen das ich die Lampen (am liebsten 
natürlich über die gleichen 8 Adressleitungen mit dem selben Grnd 
Signal) ein UND ausschalten kann ?

Im Original wird die Platine wohl mit einer Pulsierenden Gleichspannung 
betrieben wodurch die Lampen dann wieder ausgehen, was für mich aber 
eher schlecht ist.


Bin für Hilfe wirklich Dankbar und hoffe das Problem gut genug 
beschrieben zu haben.

MFG
Stefan

Autor: bloat (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stefan T. schrieb:
> Im Original wird die Platine wohl mit einer Pulsierenden Gleichspannung
> betrieben wodurch die Lampen dann wieder ausgehen, was für mich aber
> eher schlecht ist.

Richtig, damit ist auch sichergestellt, das der Triak nach dem Zünden 
wieder ausgeht. Bei Gleichspannung solltest du lieber MosFets nehmen.

Autor: Nilix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
du wirst die (60) Triacs dann wohl oder übel durch z.B. logic level 
MOS-Fets ersetzen müssen. Such mal im Fourm nach solchen Halbleitern.

Autor: HildeK (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stefan T. schrieb:
> jetzt ergibt sich das Problem das die Triacs ihren Schaltzustand
> beibehalten, bedeutet das sich die LED`s (die später durch o.g. Lampen
> ersetzt werden sollen) nicht wieder ausschalten lassen.
Ja. Außer du unterbrichst den Stromfluss durch die Triacs.

> Im Original wird die Platine wohl mit einer Pulsierenden Gleichspannung
> betrieben wodurch die Lampen dann wieder ausgehen, was für mich aber
> eher schlecht ist.
Genau deshalb gehen die Triacs auch wieder aus.

Was war aber die Frage zu Transistoren - ich lese nur was von Triacs.
Mit Transistoren würde es allerdings gehen, die kann man wieder 
ausschalten ...

Autor: MaWin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du hast kein Problem mit Transistoren, auch nicht mit TRIACs, sondern 
eins mit Thyristoren.

Die kann man nur einschalten.

Zum Ausschalten warten die darauf, bis man den Strom abschaltet.

Das passiert bei Wechselstrom 100 mal pro Sekunde, aber nicht bei 
Gleichstrom.

Der Thyristor ist für deinen Zweck ungeeignet.

Du brauchst tatsächlich Transitoren.

Da deine 6.3V Lampen 250mA ziehen werden, 2 parallel also 500mA und im 
Einschaltmoment 5A, du diese Transistoren aus einem CMOS-IC ansteuern 
möchtest der bei 5V nicht mehr als ca. 1mA liefern kann, reichen keine 
normalen bipolaren Transistoren wie BC369 mit 1k2 Basisvorwiderstand 
aus, sondern du solltest mit 5V ansteuerbare LogicLevel N-Kanal MOSFETs 
wie IRF7331/Si9926 (gleich 2 in einem Gehäuse, du brauchst 30) nehmen, 
oder NPN-Darlington-Transistoren wie BD674 (die kosten aber über 1 Volt, 
deine Lampen bekommen also 1V weniger, wenn du das nicht mit höherer 
Betriebsspannung ausgleichen kannst würde ich bei den MOSFETs 
zugreifen).

Als Alternative nimm ULN2803 Treiber, da sind 8 in einem gehäuse, sie 
haben aber dasselbe Problem  wie die Darlingtns, du brauchst ca. 1V mehr 
Betriebsspannung. Allerdings haben deine Thyristoren ebensoviel 
gefressen. Wenn es dir mit denen also hell genug war, passt auch der 
Darlington und dieser IC (von dem du immer noch 8 brauchst).

Autor: Stefan T. (stefan_t)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Deshalb frage ich ja, würde die 60 Triacs gerne Tauschen, nur gegen was 
?
Nach Logic level MOS-Fets werde ich mal suchen. Danke schon mal für den 
Tipp.

Den Stromfluss zu unterbrechen würde bedeuten das alle ausgehen, möchte 
aber auch da jede einzeln schalten können.

Gruß
Stefan

Autor: HildeK (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stefan T. schrieb:
> Den Stromfluss zu unterbrechen würde bedeuten das alle ausgehen, möchte
> aber auch da jede einzeln schalten können.

Mit einer ungesiebten pulsierenden Gleichspannung direkt nach dem 
Brückengleichrichter gehen zwar alle 100 mal in der Sekunde aus, aber 
eben nicht merklich. Das war ja auch die Methode auf der 
Originalplatine. Diejenigen, die noch angesteuert werden, gehen damit 
auch wieder an.
                    .-------------Versorgung Lampen
                    |
                    |              Spannungsregler
                    |   D           .------.
              +-+---o-->|------o----|      '----- + Versorgung Digitalteil
              A A              | +  '---o--'
           ---+ |             ###       |
           ---(-+          C  ---       |
              A A              |        |
              +-+--------------o--------o-------'GND
(created by AACircuit v1.28.6 beta 04/19/05 www.tech-chat.de)
Mit der Variante müsstest du nicht deine vielen Tyhristoren wegwerfen 
und dafür MosFets kaufen ...

Autor: Stefan T. (stefan_t)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das geht ja sehr flott hier !

Vielen Dank für die Hilfe.

Das Problem ist aber das wenn ich eine Pulsierende Gleichspannung nehme 
ich die Lampen die an bleiben sollen ja immer wieder wieder ansteuern 
müsste.
Was bei 60 Lampen extrem viel trafic bedeuten würde.
Der befehl zum erneuten zünden müsste doch dann andauernd neu gesendet 
werden.

Hab mir mal den ULN2803 angesehen.
Der schaltet den output hin und her beim Eingangssignal Und würde meine 
Triacs ersetzten ?

Den IRF7331 hab ich nicht wirklich verstanden :-(
Warum 2 Ausgänge ?

Gruß
Stefan

Autor: MaWin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Das Problem ist aber das wenn ich eine Pulsierende Gleichspannung nehme
> ich die Lampen die an bleiben sollen ja immer wieder wieder ansteuern
> müsste.
> Was bei 60 Lampen extrem viel trafic bedeuten würde.

Das passiert dir auch bei Transistoren.
Die speichern dein Anstauersignal ja auch nicht.
Du kannst nur eine Lampe zu einer Zeit leuchten lassen.

Wenn du was anderes willst, hilft dir der MC14514 nicht weiter, sondern 
du brauchst 64 x 74HC259 oder 75HC595 (TPIC6B595 = 74HC595 + ULN2803).

Autor: bloat (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stefan T. schrieb:
> Was bei 60 Lampen extrem viel trafic bedeuten würde.
> Der befehl zum erneuten zünden müsste doch dann andauernd neu gesendet
> werden.

Ich würde ja die Decoder ausbauen und durch Serial-in/Parallel-Out 
latches ersetzten.

http://www.nxp.com/documents/data_sheet/74HC_HCT595.pdf

Dann hast du deine Signale für die Lampen permanent verfügbar und kannst 
wohlgemut deine Thyristoren kurz abschalten und deine Lampen brennen 
sofort wieder alle. ! Dein "traffic" dürfte sich auch verkleinern. 
Insgesamt kommst du mit 17 mal Umschalten aus und du brauchst auch nicht 
die vollen 16 bit sondern nur 10 (1xRESET, 1xCLOCK, 8xDATA)

Autor: HildeK (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stefan T. schrieb:
> Den IRF7331 hab ich nicht wirklich verstanden :-(
> Warum 2 Ausgänge ?

Drain ist einfach auf zwei Pins gelegt, z.B. weil die Pins frei waren im 
DIL8 und sich dabei auch die Wäremableitung verbessert. Einfach beide D 
aussen auch verbinden und so tun, als ob es ein Pin wäre.

Autor: bloat (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
bloat schrieb:
> 10 (1xRESET, 1xCLOCK, 8xDATA)

ä vertan, du brauchst 11 (ST_CP, siehe datenblatt)

Autor: Stefan T. (stefan_t)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Uff...
Ich bin ja froh das ich den MC14514 verstanden habe.
Hört sich alles doch komplizierter an wie ich dachte.

Um das noch mal klar zu stellen.
Es geht darum jede einzelne Lampe zu einer x beliebigen zeit ein sowie 
ausschalten zu können, auch mehrere unabhängig von einander.

Mir stehen bis zu 16 Ausgänge zur verfügung die auf Grnd. schalten.
Eine matrix schliesse ich aus wegen mehrfach brenenden Lampen die dann 
auftreten würden.

Dachte es gäbe evtl. Transistoren die den Schaltzustand beibehalten wie 
die verbauten, die man aber auch wieder einzeln abschalten kann.

War echt froh das der MC14514 ja sogar nur 8 Adressleitungen benötigt 
wodurch sich das bei meinen 16 Ausgängen ja verdoppeln würde.

Zitat:
du brauchst 64 x 74HC259 oder 75HC595 (TPIC6B595 = 74HC595 + ULN2803).

Befürchte dann müsste ich wohl eine komplett neue Platine nehmen.
Von diesen älteren Platinen wo die MC14514 und die Triacs drauf sind hab 
ich noch welche da, deshalb habe ich dazu gegriffen.

Versuche mich morgen da mal rein zu lesen in der hoffnung einen 
bruchteil zu kapieren....

Gruß
Stefan

Autor: MaWin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> du brauchst 64 x 74HC259 oder 75HC595

ä auch vertan, du brauchst 8 (siehe datenblatt)

(für 60 ein- und ausschaltbare Lampenausgänge).

Wenn du die Thyrister-Platinen schon da hast,
würde ich überlegen, ob du den Traffic nicht auf
dich nimmst:

Mache die Versorgungsspannung der Lampen abschaltbar,

z.B. durch einen LogicLevel-P-Kanal-MOSFET wie IRF7425,
der schaltet 12A (das reicht nicht ganz für deine 60
Lämpchen, schalte die Hälfte mit einem und die
andere Hälfte mit einem zweiten).

      +5V  (upps, bei mehr als 5V noch mal nachdenken)
       |S
uC ---|I IRF7425
       |
    Lämpchen

Dann schreibst du ein Programm, welches schnell alle
Lampen, die an sein sollen, mit deinen vorhandenen Platinen
einschalten.
Soll auch nur eine Lampe aus gehen, schaltest du alle
Lampen aus in dem du kurz diese Transistoren abschaltest.
(uC-Pin auf HIGH und wieder auf LO)
Dann läuft dein Code wieder, der alle eigentlich
eingeschaltetetn Lampen wieder einschaltet.
Das geht so schnell, daß du nicht mal ein Flimmern siehst,
Glühlampen sind träge,

Und du kannst deine vorhandene Elektronik weiterverwenden.

Autor: Stefan T. (stefan_t)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Leider bin ich von der Software her ziemlich beschnitten.
Ich kann lediglich eine delay time einstellen die die Ausgänge auf Grnd. 
liegen.
Wenn ich jetzt jedem einzelnen Thyristor die Spannung kurzfristig 
wegnehmen kann wäre das ja ok.
Den Gedanken hatte ich ja mit noch einer baugleichen Platine 60 strippen 
zu der Spannungsversorgung der ersten Platine bzw deren einzelner 
Thyristoren zu legen.
Was die Sache nicht gerade optisch verfeinern würde.
Zumal das anders gehen muss.

Von mir aus würde ich auch auf die vorhandene Platine verzichten und was 
ganz neues machen.

Wenns für mich in einem machbaren Rahmen bleibt.

Dachte ehrlich nicht das das so schwer ist.
Ich möchte doch im Prinzip nur nach dem MC14514 einen Schalter betätigen 
der seinen Zustand bis zum nächsten betätigen bei behält.

Gruß
Stefan

Autor: Stefan T. (stefan_t)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Funktionsweise des 74HC259 scheine ich wohl verstanden zu haben im 
gegensatz zum 74HC595.
Was aber ist bitte der unterschied zum verbauten MC14514 ? Das man 
dahinter direkt die Lampen legen kann ?
Und warum dann noch + ULN2803 ?
Wie ich das sehe kann ich pro IC nur 8 Ausgänge steuern und bräuchte für 
den input low und high. Ich kann nur den Ausgang der steuerplatine der 
zum IC gehen soll auf Grnd. legen.
Diese Ausgänge sind ursprünglich für jeweils eine Lampe gedacht welche 
ich aber vervielfachen möchte.

IRF7331 hat Conrad leider nicht hätte ich sonst heute mal besorgt und 
Experimente gemacht. Gibt es da eine Alternative ?

Gruß
Stefan

Autor: oskar (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich erklär dir den hc595


er besteht aus 2 teilen, 1) ein FIFO-Schieberegister  2) ein Latch


wichtige PINS am IC heissen:


SCK : Shift Register Clock Input

RCK: Storage Register Clock Input

SER: Serial Data Input

SCLR: Shift Register Clear


Fangen wir mal an mit dem FIFO
Es ist eine Kette von 8 Speicherzellen (FLIPFLOP)

Es gibt also eine Speicherzelle Nr. 0, dann kommt Nr. 1, 2,... bis Nr. 7

Dann gibt es einen Dateneingang (SER).

Folgende Funktion des ganzen: Wenn du die SCK Leitung von Low auf High 
änderst, wird in der Speicherstelle Nr. 0 der Wert eingespeichert, der 
am Dateneingang (SER) anliegt. Zusätzlich wird aber der alte Wert von 
Speicherstelle 0 in die Speicherstelle 1 übetragen, dessen alter Inhalt 
in die Speicherstelle 2, usw..... Es werden also alle Bits um eins nach 
rechts verschoben, sodass am Ende natürlich auch ein Bit rausfällt 
(interessiert uns aber nicht)

Mathematisch kann man das so schreiben:
(für x = 1 bis 7) Q(x) = Q(x-1)
Q(0) = SER

Wenn du 8 mal die SCK Leitung betätigt hast, wurden nacheinander 8 Bits 
von deinem Eingang hinein in die Speicherzellen geschoben, die alten 
Daten sind alle rausgefallen. Deswegen heist es eben 
Schieberegister(Shift R.).

Jetzt ist die Übetragung vollständig und dein LATCH kommt ins Spiel.

Das Latch ist ein Zwischenspeicher, das die alten Daten festhält, 
während du die neuen reinschiebst. Sowie du RCK betätigst, werden alle 8 
Bits aus dem Schieberegister in den Zwischenspeicher übetragen und somit 
auch die Ausgänge deines IC umgeschaltet, die Richtigen Lampen leuchten 
also.

Autor: oskar (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Achja die Ausgangspins, an die du deine Thyristoren anschliessen kannst, 
heissen Qa Qb Qc Qd Qe Qf Qg Qh, die musst du halt irgendwie verdrahten 
mit deinen Thyristoren

zudem gibt es einen output_enable pin, der sollte einfach fest mit dem 
Masseanschluss verdrahtet werden. SCLR mit dem Pluspol

mehr brauchst du eigentlich nicht, um den chip zu betreiben.

womit steuerst du das ganze eigentlich?

Autor: oskar (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
oskar schrieb:
> (für x = 1 bis 7) Q(x) = Q(x-1)
> Q(0) = SER

oder besser so
(für x = 7 bis 1) Q(x) = Q(x-1)
Q(0) = SER

Autor: Stefan T. (stefan_t)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich glaube das soweit verstanden zu haben.
Nur frage ich mich was ist der Vorteil ?
Kann ich dahinter (ohne Transistor) direkt die Lampen hängen ?
Wenn ja, wäre das zwar ein Vorteil.
Aber das würde doch auch bedeuten das für jede neue Kombination an 
leuchtenden Lampen, die bereits Leuchtenden (die für diese zeit an sein 
sollen) wieder beinhalten müssten.
Was mich wieder an die Software grenzen stoßen würde.

Ich habe mal gemessen, was hier nicht viele verwundern dürfte ist das 
hinter dem geschalteten MC14514 zum zünden des Triacs 5V im mom des 
schaltens 5V sind.
War mir nicht wirklich klar....
Wie sieht das aus mit MCT6 bzw. ILD74 funktionieren die wie ein Relay ?
Könnte man die nicht vor die durch andere Transistoren (IRF540 zb.) 
ersetzten Triacs schalten.

Ich kann mir beim besten willen nicht vorstellen das es nichts einfaches 
gibt womit man bei einem 5V Impuls (vom MC14514 kommend) einen 
Transistor ein und auch wieder ausschalten kann.

Sorry das ich mich so daran klammere, aber das ist Technik die ich 
gerade noch so verstehe und für mich noch nachvollziehbar ist.
Bin ja froh das ich die Lampen auf diesem Wege an bekomme ;-)

Gruß
Stefan
Und Danke für die ganzen Erklärungen !

Autor: Stefan T. (stefan_t)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich steuer das über ein Mikrocontrollerboard das huckepack auf einer 
Treiber Platine sitzt worauf bereits Optos und Transistoren zum 
ansteuern von Lampen verbaut sind. Wobei ich aber in der Software 
ziemlich festgenagelt bin.
Kann sein das sich das noch bessert.
Allerdings sind die Ausgänge leider viel zu wenig für mich.

Gruß
Stefan

Autor: MaWin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Was aber ist bitte der unterschied zum verbauten MC14514

Man kann die (8) Ausgänge einzeln und beliebig und unabhängig 
voneinander ein und ausschalten.

> Und warum dann noch + ULN2803 ?

Weil der 74HC259 nicht genug Strom für die Lampen liefern kann schaltet 
der ULN2803 genug Strom.

Autor: Stefan T. (stefan_t)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ULN2803 hab ich schon mal bekommen.
Dahinter brauche ich aber denn KEINE Transistoren mehr oder ?
Hält das so ne Streifenraster Platine überhaupt aus oder schmilzt die 
mir dann weg ?
Da sollen ja immerhin 60 Lampen dran.
Evtl. dann ja sogar noch mehr.


Aber nochmal die frage...
Sowas wie MCT6 bzw. ILD74 gibt es da nicht was vergleichbares was den 
schalt zustand beibehalten kann bis zum nächsten Impuls ?
Ich frage nur deshalb so penetrant nach weil ich mir vorstellen könnte 
auf diese art und weise die vorhandene Platine weiter nutzen zu können.
Triacs raus und Optos mit Transistoren dahinter dafür rein.

Wenn das mit den 2803 ohne Transistoren geht ist das ja auch eine 
Kostenfrage.


Gruß
Stefan, der für jede Hilfe Dankbar ist.

Autor: Stefan T. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bin endlich mal dazu gekommen die ULN2803 zu testen.
Funktioniert soweit prima.
Hab die Spannung auf ca. 8 V erhöhen können um den Verlust 
auszugleichen.
Somit brennen die Lampen so wie sie sollen.

Einen 74HC259 oder 595 hab ich leider noch nicht.
Werde ich mich aber wohl oder übel noch mit beschäftigen.

Mich juckt aber immer noch die frage ob es nicht ein IC oder einen 
Transistor gibt der wenn ich ihm kurz 5V am Eingang gebe quasi einen 
schalter umlegt und 5V am Ausgang schaltet,diese auch hält. Bei erneuten 
5V am Eingang wieder die 5V am Ausgang abschaltet.
Das würde mein Problem doch lösen.

Gruß
Stefan

Autor: Stefan T. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Meld mich noch mal kurz zu wort.

Habe jetzt den 74HC259 auf dem steckbrett getestet und wohl doch nicht 
so ganz verstanden.

Bekomme zwar Lampen angesteuert, aber nicht gezielt wieder aus bzw. 
resetet.
So wie ich das verstehe ist das genau umgekehrt wie das was ich 
bräuchte.
Bekomme nur die anderen Lampen aus.
Das bedeutet das von der soft die anderen erneut angesteuert werden 
müssten...
Woher soll die Software das wissen.
Dachte halt man könnte mehrere Ausgänge kombinieren und somit codes für 
jede einzelne Lampe erhalten.
Der zustand wird aber nicht gespeichert also von der soft quasi nach dem 
schalten wieder vergessen, also erneutes ansteuern dieser Kombination 
nicht mehr möglich.

Anyway.
Die Sache wird zu aufwändig für mein kleines brain.

Das Problem ist ja nach wie vor das ich eigentlich nur Grnd. schalten 
kann.

Habe mir ein weiters AVR bestellt das ich wohl mal versuchen werde über 
die Ausgänge des ersten anzusteuern um dann ggf. daran ein paar Lampen 
mehr raus zu quetschen.

Möchte halt so wenig Ausgänge am Board 1 wie möglich verschwenden (weil 
für andere dinge benötigt) um möglichst viele Lampen ansteuern zu 
können.

Gruß
Stefan

Autor: Stefan T. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auch wenn ich Gefahr laufe Alleinunterhalter zu sein...


Habe die letzten Tage viel gelesen und getestet.
Auch über die 74HC595.

Das Zauberwort heißt wohl Porterweiterung.....

Das mit dem Schieberegister und der Kaskadierung habe ich soweit 
verstanden.
Auch wenn das eine blööde frage sein sollte...

Ich verstehe nicht wie man zb. nur das letzte bit ändern kann ohne die 
vorherigen zu beeinflussen.

Nehmen wir an am 595 hängen 8 Led´s (später soll das ja ein ULN2803 sein 
wegen Lampen)
Jetzt möchte ich in dem mom wo zb. Lampe (bzw LED) 1-4 an sind und 5-8 
aus nur LED 8 an machen ohne die Lampen 1-7 dadurch zu beinflussen.
So wie ich das verstehe muss ich doch dann alle 8 bits erneut eingeben ?

2te frage die sich mir aufdrängt ist.
Wie kann ich das generell ansteuern ?
Bzw. wie kann man den Lampen Namen zuordnen so das sie durch diesen 
Abrufbar sind.

Sorry für die Anfängerfragen...
Hab Gestern erst das Arduino board bekommen und bis jetzt nur kleine 
tests gemacht. Button, debounce und anstuerung einer LED über einen 
Eingang.
Also noch absoluter newbie ;-)

Gruß
Stefan

Autor: MaWin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Ich verstehe nicht wie man zb. nur das letzte bit
> ändern kann ohne die vorherigen zu beeinflussen.

Der 595
http://www.nxp.com/documents/data_sheet/74HC_HCT595.pdf
besteht aus 2 Registern:

Dem 8 bit shift register (Schieberegister)
und dem 8 bit storage Register (Latch).

Letztlich also 16 Speicherzellen.

Du schiebst alle 8 bit ins Schieberegiste rein
(und wenn du Spaß hat noch mal 8 andere oder 8 weitere)
und nur auf einen Impuls an ST_CP übernimmt der Chip
die (zuletzt reingeschobenen) 8 bit auf die 8 Ausgänge.

So lange du ST_CP nicht aktivierst, bleiben die Ausgänge
so wie vorher.

(Bei Glühlampen ist es sogar egal ob ST_CP dauernd aktiv
ist, denn so schnell wie in uC schiebt, sieht man kein
Flimmern, selbst wenn die Ausgänge mitgehen wird es kein
Lauflicht.)

Autor: Stefan T. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die Antwort.
Das habe ich soweit auch verstanden.
Verstehe auch soweit das erst wenn die 8 bit gelandet sind und man ST_CP 
betätigt sie erst dann in den latch kommen.


Das bedeutet ich muss die ganze Kette erneut senden um eine Änderung an 
einem Ausgang zu haben ?

Das frage ich mich die ganze zeit.

Wenn ich sagen wir Lampe 34 anhaben möchte und ich ihr einen Namen 
zugeordnet bekommen würde, müsste ich doch den zustand der anderen 
Lampen kennen um diesen nicht zu ändern.

Plump ausgedrückt ich muss doch für jeden schaltvorgang allen Lampen 
miteilen was sie zu tun haben, auch wenn ich nur eine einzige zb. 
ausschalten möchte muss ich den anderen eine 1 senden damit sie an 
bleiben. Oder sehe ich das falsch ?

Gruß
Stefan

Autor: Jens G. (jensig)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Das bedeutet ich muss die ganze Kette erneut senden um eine Änderung an
>einem Ausgang zu haben ?

Ja - ist schließlich ein 8bit Seriell-Schieberegister, mit 
Parallelausgängen.
Da kannst Du also kein Bit einzeln gezielt adressieren, sondern schiebst 
immer eine Kette von Bits durch. Egal, wieviele Bits du durchschiebst - 
bei Aktivieren von ST_CP werden nur die zuletzt eingeschobenen Bits 
gelatcht, bzw. auf die Ausgänge geschaltet.

>Wenn ich sagen wir Lampe 34 anhaben möchte und ich ihr einen Namen
>zugeordnet bekommen würde, müsste ich doch den zustand der anderen
>Lampen kennen um diesen nicht zu ändern.

So isses - egal mit oder ohne Namen ;-)
Du mußt im µC-Programm quasi Buch führen über die gewünschten Pegel der 
Ausgänge.

>Plump ausgedrückt ich muss doch für jeden schaltvorgang allen Lampen
>miteilen was sie zu tun haben, auch wenn ich nur eine einzige zb.
>ausschalten möchte muss ich den anderen eine 1 senden damit sie an
>bleiben. Oder sehe ich das falsch ?

Nö - siehste nicht falsch.

Autor: Stefan T. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oh man....

Das war dann wohl das Todesurteil für mein unterfangen.
Bekomme nicht mal eine Lichtschranke die das auslösen soll vernünftig 
ans laufen. Ist wohl nicht meine Liga :-(

Muss ich wohl doch versuchen eine Matrix zu machen in der Hoffnung nicht 
so viele Lampen fälschlicherweise anzusteuern, genau das was ich 
vermeiden wollte.

Danke trotzdem für eure infos.
Frag mich nur was mache ich jetzt mit dem Arduino.....

Gruß
Stefan

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.