Re: Daten von mehreren RS232 Ports gleichzeitig verarbeiten

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance



das ist mir soweit klar, das dies nur auf Mehrprozessorsystemen funktioniert
Ich glaube das aber nicht, selbst Multiprozessorsystem müssen sich ggf. Resourcen teilen.

nochmals kurz zu der Software, sie soll Firmwareupdates auf Geräten
durchführen, die entweder durch USB, LAN oder Seriell verbuden sind (USB und
LAN funktionieren bereits einwandfrei, muss nun noch über Seriell erweitert
werden). Hierfür gibt es ein Dialog der sämtliche Geräte sucht und auflistet,
anschließend können so viele Geräte wie benötigt selektiert werden (egal ob
LAN, USB oder Seriell), dann wird bei jedem Gerät überprüft welches Firmware
File es benötigt und anschließend muß der Benutzer die Firmwarefiles
auswählen. Danach wird für jedes selektierte Gerät ein neuer Thread gestartet
und innerhalb dieses threads werden je nach Gerät verschieden Kommandos und
das Firmware File ans Gerät gesendet, weiters wird der Fortschritt des
Updates jedes einzelnen Gerätes mittels Delegate auf einer Form dargestellt!

Ist das die Geschichte vom "langen Marsch". USB und LAN funktionieren aber RS232 bekommst Du nicht geregelt?

Bin soweit dass er die Daten über das DataReceived Ereignis in einer Liste
speichert (mit dem jeweiligen Port und den empfangenen Daten).

Nun möchte ich die Daten auswerten und durchsuche die Liste nach den Daten
die zu diesem Port empfangen wurden, nun ist aber das Problem, dass beim
durchsuchen der Liste sich die Liste durch ein neues DataReceived Event
verändert, dadurch verändert sich auch der aktuelle Port (variable in der
Klasse) der gerade verwendet wird und ich bekomme die Daten eines anderen
Ports die wiederum ein Timeout auslösen!!
(das Problem Threading)

Gibt es nun eine möglichkeit ohne Threads diese Geräte paralell upzudaten,
ohne dass ich x SerialPort Objekte mit DataReceived Events im code habe, da
es ja beliebig viele Geräte sind und dies nicht klar definiert ist ob nun 1,
2 oder 6 Geräte ein update bekommen??!!

Welcher Rechner besitzt 6 RS232-Schnittstellen?

Irgendwie sinkt Deine Glaubwürdigkeit immens. Niemand würde auf die Idee kommen bis zu 6 Geräte gleichzeitig upzudaten. Entschuldige aber Du hast wirklich nicht Problematik erkannt und siehst die Relativität nicht. Dein Thread begann vor fast 5 Tagen. Soll ich mal rechnen: 5 Tage * 8 Stunden / 10 Minuten pro Gerät = 240 Geräte.
Meinst Du nicht das hier etwas faul ist?
Ich unterstelle Dir einfach, dass Du den wahren Grund für Dein Vorhaben einfach verschweigst, genauso wie Du es mit Deiner Identität tust(Alex <Alex@xxxxxxxxxxxxxxxxxxxxxxxxx>).
Zwischen Deinem ersten Posting und Deinem nächsten Posting liegen fast 4 Tage! Du hast mittlerweile von 3 Entwicklern Antworten bekommen, ich weiß das Peter und Armin sicherlich nicht unbedarft auf diesem Gebiet sind, mich selber möchte ich mal nicht bewerten. Doch kann ich Dir eins verraten, ich habe schon etliche Projekte verfasst, die nicht nur über die RS232 kommunizieren.
Von Dir haben wir noch nicht ein Stück Code gesehen. Erwartest Du von uns das wir Dir jetzt die passenden Codezeilen präsentieren? Selbst einen Ausschnitt aus dem Protokoll gibt es nicht. Peter würde gerne mit einen definiert großen Empfangspuffer arbeiten. Ich persönlich mache das nie, mir ist das egal was dort ankommt, ich werte nur die/ das Protokoll(e) aus.
Peters Lösung wäre sicherlich einfacher, wenn man genau weiß wie viel Daten zurückkommen müssten, meiner Lösung ist das egal. Uns ist aber jeder Zeit bewusst bewusst über welchen Port die Daten kommen und zu welcher Anfrage die Antwort gehört.

Also lass uns mal eine Blick auf Deine bisherige Source werfen(Vergiss dabei nicht einen Auszug des Protokolls)
--
Gruß Scotty

.



Relevant Pages

  • Re: USB router for ADSL
    ... >> 1., I only have one NIC, which is reserved for the LAN side. ... > USB Ethernet for your LAN side would work well. ... >> You cannot run a webserver on port 80 behind one of these devices, ... I also have bad experience with USB on freeBSD (and also ...
    (comp.unix.bsd.freebsd.misc)
  • Re: hp laserjet to usb
    ... | laserjet uses some sort of very small 36-pin connector. ... All USB to Parallel port solutions assume a standard Centronics ... printer using a print server over a LAN and it is available to ALL nodes via TCP/IP ...
    (microsoft.public.windowsxp.general)
  • Re: Connect an external USB drive to LAN port
    ... Is there any device out there that can make it possible to connect my extrenal USB drive to my router LAN port? ... some kind of device that "translate" the USB plug to a LAN plug and coverts the signal so it acts like a LAN external drive? ...
    (alt.comp.hardware.pc-homebuilt)
  • Knoppix cannot see my USB network/dsl connection
    ... My computer it connected to my router via the USB ... port, rather than my LAN card, since my onboard lan seems to be not ... It only sees the inoperative LAN port. ... Is there a way for Knoppix to find this usb connection? ...
    (comp.os.linux.networking)
  • Knoppix cannot see my USB network/dsl connection
    ... My computer it connected to my router via the USB ... port, rather than my LAN card, since my onboard lan seems to be not ... It only sees the inoperative LAN port. ... Is there a way for Knoppix to find this usb connection? ...
    (comp.os.linux.setup)