Die Variante von Mike ist die einzig sinnvolle für so eine Anwendung. Egal ob PIC oder AVR. Die 60 Displays sind doch bestimmt nicht in einem Raum oder?
Was ist denn mit nem einfachen 74hc595???
Der iss 1. billig und 2. leicht anzusteuern und 3. braucht er bei 60 displays immer noch nur 3 leitungen am controller...
Du bräuchtest dann zwar 60 Chips aber das iss nicht wirklich teuer und angemessen für son Projekt...
Martin
Linus Torvalds, Entwickler von LinuxIch will Microsoft wirklich nicht zerstören. Das wird nur ein gänzlich unbeabsichtigter Nebeneffekt sein.
Die Variante von Mike ist die einzig sinnvolle für so eine Anwendung. Egal ob PIC oder AVR. Die 60 Displays sind doch bestimmt nicht in einem Raum oder?
BlackBox
Hallo
Zudem ist I2C mehr für kurze Entfernung gebaut, und damit mehr oder wenig unbrauchbar. Es gibt zwar spezielle Chips um die Reichweite zu erhöhen, aber dann wird es ja noch mehr ein IC Grab.
Daher ist der Vorschlag von Mike schon die richtige Richtung.
MFG
Dieter
So ein Schmarrn.Zudem ist I2C mehr für kurze Entfernung gebaut, und damit mehr oder wenig unbrauchbar. Es gibt zwar spezielle Chips um die Reichweite zu erhöhen, aber dann wird es ja noch mehr ein IC Grab.
Der I²C-Bus wurde zwar ursprünglich als Busssystem innerhalb von
Geräten entwickelt, aber das ist schon laaaaaaaaaange her.
Einen I²C-Bus auf über 100m aufzubauen ist heutzutage kein Problem mehr.
Es gibt genug ICs (und Schaltungen), die es ermöglichen diese Reichweiten
zu schaffen und sogar sicher zu übetragen.
Das gängiste wird der P82B715 sein, gefolgt vom P82B96, mit dem man lt.
Phillips noch schönere Sachen anstellen kann.
(z.B. Differential-Bus etc. )
Also ist die Aussage, daß der I²C-Bus nur für kürzeste Strcken geeignet ist,
völlig antiquiert.
Nein. Man braucht insgesamt einen MAX4572. Zu diesem führt der I²C-Bus vom Controller.muss man etwa für jedes LCD ein PCF8574 & ein PCF8574A verwenden (120 ICs)?? und dazu noch ein MAX4572?? und vier I²C-Busse??
Vom MAX4572 aus kann man bis zu 7 Subbusse wegführen.
Den MAX4572 muß man sich wie einen einfachen Schalter vorstellen,
bei dem Man den vom Controller kommen Bus auf bis zu 7 verschiedenen
"Leitungen" (Bussen) umschalten kann.
Nur wird dieser nicht per Hand, sondern über den I²C-Bus angesteuert.
Für jedes Display benötgt man exakt einen PCF8574 oder PCF8574A
Mit je 8 PCF8574 und 8 PCF8574A kann man an einem Subbus bis zu 16
Displays anschließen.
(Der PCF8574A hat einen anderen Adressbereich, als der PCF8574 ohne A)
Mit Hilfe eines MAX4572 könnte man so z.B. bis zu 112 Displays betreiben.
ciao ...
was habt ihr denn immer alle mit eurem teuren i²c?
warum einfach wenn auch schwer geht?
nen 74hc595 iss nen 8-bit portexpander bloß mit 3 ttl-kompatiblen steuer- und datanleitungen. man kann ihn überall einsetzten, er ist kaskadierbar und kann bis zu 100MHz schalten.
Da die leitungen ttl-kompatibel sind isses auch einfach das über längere strecken zu machen.
martin
Linus Torvalds, Entwickler von LinuxIch will Microsoft wirklich nicht zerstören. Das wird nur ein gänzlich unbeabsichtigter Nebeneffekt sein.
so viele schöne Ideen...
mit den meisten hier vorgeschlagenen Ideen hängt auch viel Arbeit!! Mit Ausnahme, die Idee von peterguy. Hier braucht man sich um die LCDs selbst nicht mehr kümmern. Die Controller übernehmen alles, z.B die Initialiesierung der 60 LCDs. Wenn man ein Zeichen schreiben möchte, da schickt man nur die Addresse, Command und das Zeichen. d.h. man muss Steuerung für das LCD auch nicht programmieren. Man programmiert nur die I²C-Routinen. Auch noch nicht mal Busse umschalten!!! Lesen geht es mit dem Teil auch.
Was auch da gut ist: mit einem Befehl kann man die 7 benutzer def. Zeichen ins CGRAM schreiben. Diese können gespeichert werden, und werden immer automatisch beim Start ins CGRAM wieder geschrieben.
Also man macht das nur einmal, bis man andere Zeichen haben möchte.
@x-ryder
Schieberegister wären hier Spielerei.
Denn Lege einmal eine mehrere Meter lange Leitung zu den SRs und
schalte in der Nähe einmal eine Leuchtstoffröhre ein.
Hier gibts die schönsten Effekte.
SR mögen zwar billig sein, aber dafür sind diese auch seeeeehr Empfindlich,
was Einstreuungen über die Signalleitungen angeht. (Data, Shift, Strobe)
Die Lösung über I²C ist wahrscheinlich vom Preis/Leisungsverhältnis und dem nötigem
Aufwand die beste.
Die Lösung von peterguy ist wieder etwas teuerer.
Mit PCF8574 fährt man wirklich am günstigesten.
Man bekommt diesen Portexpander bei entsprechender Stückzahl schon unter EUR 2,-.
Der MAX4572 ist mit fast EUR 7,- etwas teurer. Aber man benötigt nur einen.
Wenn Du alles selber lötest, kommst Du ca. auf 300 bis 350 EUR. (ohne Displays)
Und Arbeit macht die PCF8574-Lösung wahrscheinlich am wenigsten.
Es gibt hierfür schon etliche Platinen oder sogar schon fertige Displays
in allen möglichen Größen, die so angesteuert werden.
Und softwareseitig sollte das auch kein größeres Problem werden,
da es für viele µController bereits passende Routinen gibt.
Schau einfach mal hier unter Links in die Kategorie "Bezugsquellen für Elektronik/Roboterteile".
Oder google einfach einmal nach "LCD Interface PCF8574 Platine".
Da ist sicher etwas dabei.
ciao ...
Es sollen auf einigen der Displays gleichzeitig verschiedene Nummern angezeigt werden. Meistens jedoch nicht auf allen gleichzeitig. Die 5-steilligen Ziffern können verschieden sein. Bin mir noch nicht ganz sicher, vielleicht reicht es auch, wenn überall die selbe Nummer steht, wobei in dem Fall dann einige Displays gespart werden könnten und es per LED realisiert werden kann. Daher gehe ich momentan noch davon aus, daß versch. Werte gleichzeitig ausgegeben werden sollen.Zitat von tristate
Also es sollten ganz normale Displays sein, leine 7-segment Anzeigen. Wie diese angesteuert werden bin ich mir eben noch nicht ganz sicher. Die Überlegung ist z.b. über den I²C bus, oder eben irgendwie anders...Seh ich das richtig das das ganz"normale" LCD's mit nem 8Bit Bus sind? Oder kann man die direkt mit I²C steuern? Oder meinst du nur 7Segment Anzeigen?
jaZitat von peterguy
Ja das kostenproblem habe ich auch schon entdeckt, aber dies stört vorerst einmal nicht. Insbesondere da ich es momentan sowieso erst mal im kleine Rahmen testen möchte um es später aber dann vielleicht auf mehere Displays 60 oder ggf. mehr erweitern möchte.Zitat von peterguy
Ich möchte gerne auf den Displays versch. Nummern ausgeben, daß man an Hand der Nummern direkt sehen kann welcher Artikel unter dem Display liegt, um hierüber die einzelnen Artikel zu sortieren. Daher soll es am Anfang wie gesagt auch erst einmal nur im kleinen getestet werden. Also z.b. mit 4 Displays oder so und ggf. später auf mehr erweitert werden, daher auch direkt die Anfrage damit auch alle auf einaml adressiert werden können.Zitat von peterguy
Die Werte auf den Displays sollen vermutlich verschieden sein und abhängi g ob ein Artikel vorhanden ist, einen Wert ausgeben. ..
gut, das hört sich so in etwa an, wie ich es mir auch überlegt hatte. Ich dachte vorher nur, daß es vielleicht noch eine andere Variante als das Muxen gibt. Aber zur Not könnte es auch so gelöst werden.Zitat von Anonymous
Lesezeichen