Hallo, ich habe ein echtes Problem und Goolge hat mir auch noch nicht im ausreichenden Maße geholfen… Ich habe eine Sonde mit einem ADuC7060 gebaut die über die UART->RS485 mit 1600Hz je 11Byte an Messwerten sendet (Baudrate 320000). Nun möchte ich bis zu 8 Sonden des gleichen Typs in einer Art Netzwerk verbinden. D.h. also ich benötige einen µC der idealerweise bis zu 8 RS485/UART Schnittstellen besitzt und eine USB/Ethernet Schnittstelle um die Daten an den PC weiterzuleiten. Nebenbei soll dieser µC die aufkommenden Daten auf SD-Karte o.ä. zwischenspeichern. Ich dachte eventuell an die Prozessorfamilie PIC32MX5XX oder eine Raspberry PI mit entsprechenden Schnittstellenerweiterungen. Jedoch scheint mir der Programmieraufwand recht hoch zu sein… Hat eventuell schon jemand etwas ähnliches realisiert (8 mal UART(320000Baud) + SD + USB oder Ethernet) und könnte mir ein paar Tipps geben? Vielen Dank im Voraus
Du könntest einen Renesas R32 verwenden. Die hatten 9xserielle Multifunktionseinheiten. (also RS232, SPI, I2C) Allerdings kein Ethernet. Ich könnte mir auch vorstellen das dies etwas problematisch wird. Es scheint wohl eine Trennung zu geben zwischen Controllern die sich eher an Consumer Multimedia usw wenden und Controllern die speziell fuer industrielle Steuerungen gedacht sind. Olaf
Dir ist aber schon bewußt, dass du bei RS485 mehrere Teilnehmer anschließen kannst: http://www.mikrocontroller.net/articles/RS-485 Warum du jetzt einen Controller mit 8 Anschlüssen brauchst ist mir nicht ganz klar....
Die frage is ob die Software in den Sensoren darauf ausgelegt ist an einem Bus betrieben zu werden. RS485 spezifiziert und die elektrischen Eigenschaften... nicht das Protokol. Wer darf dann wan senden und so dinge ...
Martin P....... schrieb: > Die frage is ob die Software in den Sensoren darauf ausgelegt ist an > einem Bus betrieben zu werden. RS485 spezifiziert und die elektrischen > Eigenschaften... nicht das Protokol. Wer darf dann wan senden und so > dinge ... Steht doch im Link, dass das Protokoll das steuert. Aber es kann natürlich sein, dass der TE nur RS485 gewählt hat, weil man damit höhere Übertragungsraten hin bekommt....
Nimm einfach einen Controller mit externem Adress-/Datenbus und externe UARTs. Eine Möglichkeit wäre z.B. der NXP SC28L198, der 8 Kanäle hat und auf jedem Kanal bis zu 1MBit/s fahren kann. Das ist eine Weiterentwicklung des Motorola 68681. Wenn Du etwas 16C550-kompatibles haben willst, gibts z.B. den SC16C654B mit 4 Kanälen und 64 Byte FIFOs. Von diesen hier bräuchtest Du zwei Stück. Es gibt auch noch den SC16IS762 mit zwei Kanälen und I2C/SPI-Interface, wobei I2C zu langsam ist. Siehe hier: http://ics.nxp.com/literature/other/interface/pdf/UARTS_Bridge_ICs.pdf fchk
Daniel V. schrieb: > Dir ist aber schon bewußt, dass du bei RS485 mehrere Teilnehmer > anschließen kannst: > http://www.mikrocontroller.net/articles/RS-485 > > Warum du jetzt einen Controller mit 8 Anschlüssen brauchst ist mir nicht > ganz klar.... Vielen Dank erstmal für die schnellen Antworten! Um die 11 Byte 1600 mal in der Sekunde zu übertragen benötige ich eine relativ hohe Datenrate. Mein Favorit wäre eigentlich auch die Buslösung gewesen. Aber wie sich herausgestellt hat ist die maximale Übertragungsrate die der ADuC7060 mit UART schafft 320000 Baud und dabei ist die Schnittstelle schon mit einer Sonde hast komplett ausgelastet (140800Bit/s + Delay beim Senden der einzelnen Byte da ADuC7060 kein DMA unterstützt). Daher benötige ich 8 Schnittstellen welche die Daten auf eine schnellere Schnittstelle umsetzen. Das Hardwarelayout steht leider schon komplett und kann nicht mehr verändert werden.
Frank K. schrieb: > Eine Möglichkeit wäre z.B. der NXP SC28L198, der 8 Kanäle hat und auf > jedem Kanal bis zu 1MBit/s fahren kann. Ich habe bei dem keine Hardwareunterstützung für die Sender-/Empfängerumschaltung von RS485-Treibern gesehen, war ich nur zu oberflächlich beim Datenblattlesen oder kann der das wirklich nicht?
Rufus Τ. Firefly schrieb: > Frank K. schrieb: >> Eine Möglichkeit wäre z.B. der NXP SC28L198, der 8 Kanäle hat und auf >> jedem Kanal bis zu 1MBit/s fahren kann. > > Ich habe bei dem keine Hardwareunterstützung für die > Sender-/Empfängerumschaltung von RS485-Treibern gesehen, war ich nur zu > oberflächlich beim Datenblattlesen oder kann der das wirklich nicht? Der 68681 konnte das auch nicht, deswegen wirst Du wohl recht haben. fchk
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.