Hallo wertes mikrocontroller.net-Forum, ich hab da mal eine klitze kleine Frage nach Erfahrungen: Ich habe meinen Raspberry pi um derzeit 4 kleine Schieberegister 74HC595 von ti erweitert. Mein Code in Python schiebt die Daten mit 30,3kB/s raus, per bitbanging. Die Register funktionieren ohne Probleme, die Qs werden beschaltet wie gewünscht. Physikalischer Aufbau wie folgt: RPi - 50cm Leitung - 74HC595 - 25cm Leitung - 74HC595 - 25cm Leitung - 74HC595 - 25cm Leitung - 74HC595 Ich plane später noch schmitt Trigger zu verbauen, aber aktuell würde mich mal interessieren, ob Jemand schon die CLK und DS Leitung per pull up auf 3,3V gezogen hat und die LATCH mit pull down auf 0V. Mir geht es darum zum umschalten der CLK und DS Leitung mehr zu sinken, als zu sourcen. 30,3kB/s sind in diesem Fall eine Frequenz von ~250kHz. LG Blevox (Sebastian)
Was willst du denn jetzt wissen? Pullups und Pulldowns an Eingängen dienen dazu, definierte Zustände herzustellen. Ob es wirklich notwendig ist, ist von der Schaltung des davor liegenden Ausgangs abhängig. Schaden tut es in aller Regel nicht.
:
Bearbeitet durch User
Beitrag "Re: Unterschied 595er 596er Schieberegister" Kaskadiert gehen die 596er besser... StromTuner
Ich möchte nur wissen, ob das schon Jemand getan hat; Ich fragte nach Erfahrungsberichten, der 74HC595 ist ein sehr geläufiger Chip, vor allem hier im Forum. @thomase: Ein kleines Gedankenspiel, ich überlege den Raspberry etwas zu entlasten. - Szenario: Sink pro Pin am Pi 16mA, Source pro Pin am Pi bis zu 16mA, jedoch gibt die 3.3V Versorgung nur 50mA her. Bei CLK+DS sind zwei Pins auf HIGH zu ziehen, da mein Code aktuell vorsieht bis zu 4 Arrays von 74HC595, von unbekannter Länge zu unterstützen und im Zweifel alle per Threading parallel rauszushiften. - Option 1: Optokoppler fast direkt an die GPIO per NPN Transistoren geschaltet. (Meine EL817 sind zu lahm dafür, bräuchte daher einen neuen Typen) - Option 2: 74HC14 - Option 3: Pull up aus einem dedizierten 3.3V (LD1117) @axelr: Es geht mir um das sinken am GPIO des Raspberry Pi für die Datenleitungen, nicht am Schieberegister. Sorry war vielleicht etwas unverständlich ausgedrückt. Die 74HC595 funktionieren tadellos für meine Anwendung.
PS: Option 1 gefällt mir am besten, da ich die Pegel dann auch auf 5V ziehen könnte. PPS: LG Blevox (Sebastian) PPPS: Wird Zeit, dass ich mich registriere, dann kann ich meine Beiträge editieren. :-)
Blevox schrieb: > Ein kleines Gedankenspiel, ich überlege den Raspberry etwas zu > entlasten. Dann lass die Pullups/-downs weg. Hast du den Eingangsstrom eines CMOS-IC schon mal gemessen? Vergiss es, so hochwertiges Equipment hast du nicht.
:
Bearbeitet durch User
So, nun bin ich registriert. Solche Werte wären im Datenblatt ganz toll und wenn es nur μA sind. Die Summe macht es, dazu Leitungswiderstand. Ich mach mir manchmal vielleicht einfach nur zuviele Gedanken, dennoch muss eine dedizierte 3.3v Versorgung ran. 74HC595 Supply current 70mA und der Pi liefert nur 50mA, aktuell sind meine Ausgänge vom 74HC595 noch mit 1kOhm in Serie und somit bei nur 3.3mA, aber 16 Ausgänge zur selben Zeit. Es ist noch viel zu tun. :-) Thomas E. schrieb: > Dann lass die Pullups/-downs weg. Aber eben diese kämen aus einem LD1117.
Sebastian D. schrieb: ... > .... dazu Leitungswiderstand. genau!, den musste UNBEDIGT beachten {/ironieee off} 74HC125 dazwischen und die 595 an ein eigenes NT den 74HC125 an 3v3 die 595 koennen dann auch an 5V VlG Charly
Charly B. schrieb: > 74HC125 dazwischen und die 595 an ein eigenes NT > > den 74HC125 an 3v3 die 595 koennen dann auch an 5V Die 74HC125 sind leider nicht als DIP verfügbar, aber natürlich gut. Charly B. schrieb: > genau!, den musste UNBEDIGT beachten {/ironieee off} Naja, auch Kleinvieh macht Mist, vor allem in Masse. Habe wie gesagt derzeit knapp 1,25m Leitungslänge, 4 Register und Code ist erweiterbar auf 4 Stränge. Sprich es könnten später auch gern überspitzt ausgedrückt 20 am Strang sein, und dann vier Stränge zu befeuern sein. Natürlich der Line Driver würde mein theoretisches Problem mit einem Schlag lösen, ich schau mal, ob ich was im DIP finde.
Sebastian D. schrieb: > Solche Werte wären im Datenblatt ganz toll und wenn es nur μA sind. Die > Summe macht es, dazu Leitungswiderstand. Bei CMOS-Eingängen, die nicht mit expliziten Pull-Up- oder Pull-Down-Widerständen ausgestattet sind, musst man schon sehr viele parallelschalten, um den statischen Eingangsstrom messen zu können. Für die ersten Versuche empfehle ich tausend oder eine Million Eingänge parallel. Dann könnte man vielleicht auf ein Mikroampere kommen, sollte aber aufpassen, die Werte nicht durch z.B. durch Flussmittelreste oder Fingerabdrücke auf der Leiterplatte zu verfälschen. Ach so, die Leiterplatten und Kabel sollten sich im Dunkeln befinden, da sie bei Lichteinfall deutlich leitender als die CMOS-Eingänge werden könnten. Viel entscheidender ist allerdings die Eingangskapazität, welche zu erheblich größeren dynamischen Strömen bei Schaltvorgängen führt. Bei Leitungsleitungen im Bereich von 1m sollte auch die Anstiegsgeschwindigkeit der Logiksignale nicht zu hoch sein, d.h. insbesondere der Taktleitungen, da ansonsten das "Klingeln" zu mehrfach erkannten Taktimpulsen führen kann. Im einfachsten Fall fügt man an den Ausgängen kleine Serienwiderstände (ca. 20-50 Ohm) ein, ggf. auch mit z.B. 100pF als Tiefpass erster Ordnung.
Sebastian D. schrieb: > Die 74HC125 sind leider nicht als DIP verfügbar, aber natürlich gut. sry, aber SELTEN so ein schwachsinn gelesen............. http://k-urz.de/D39C
:
Bearbeitet durch User
Charly B. schrieb: > Sebastian D. schrieb: >> Die 74HC125 sind leider nicht als DIP verfügbar, aber natürlich gut. > > sry, aber SELTEN so ein schwachsinn gelesen............. > > > > > http://k-urz.de/D39C > > > Kommando zurück, ich hab nur 74HC125 gesucht. Die ersten beiden Datenblätter gaben kein DIP her. Du hast natürlich recht.
Andreas S. schrieb: > Im einfachsten Fall fügt man an den > Ausgängen kleine Serienwiderstände (ca. 20-50 Ohm) ein, ggf. auch mit > z.B. 100pF als Tiefpass erster Ordnung. Bloß nicht! Wenn dein eingefügtes C direkt am quellseitigen Serienwiderstand sitzt, dann provozierst du erst recht ein Problem! Der Serienwiderstand ist gut und sorgt für eine quellseitige Terminierung; an der Empfangsseite ist aber eine Totalrefelxion vorhanden und gewollt, um den korrekten Logikpegel zu erhalten und die dann im quellseitigen Serienwiderstand terminiert wird. Sitzt jetzt quellseitig nach dem Widerstand noch ein C, dann kommt es zu weiteren Reflexionen, die dann zu mehrfachen Taktflanken führen können. Ein C hat an einer digitalen Leitung nichts verloren! Wenn du schon Störungen unterdrücken musst, dann direkt vor dem Eingang, der aber dann ein Schmitt-Trigger sein muss.
Andreas S. schrieb: > Bei CMOS-Eingängen, die nicht mit expliziten Pull-Up- oder > Pull-Down-Widerständen ausgestattet sind, musst man schon sehr viele > parallelschalten, um den statischen Eingangsstrom messen zu können. Für > die ersten Versuche empfehle ich tausend oder eine Million Eingänge > parallel. Dann könnte man vielleicht auf ein Mikroampere kommen, sollte > aber aufpassen, die Werte nicht durch z.B. durch Flussmittelreste oder > Fingerabdrücke auf der Leiterplatte zu verfälschen. Ach so, die > Leiterplatten und Kabel sollten sich im Dunkeln befinden, da sie bei > Lichteinfall deutlich leitender als die CMOS-Eingänge werden könnten. ! Ok, bin ich wohl etwas zu paranoid. Ich geh trotzdem mal die Hände waschen. :-)
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.