Serial Port programm will nicht richtig

OP #3405256
Lesenswert?
• ▲
▼
Hallo
Ich hänge seit Tagen Fest und bekomme es nicht Gelöst und muss Jetzt 
Leider doch Fragen hatte Gehofft es so hin zubekommen naja.

Ich habe es so Weit das es Jetzt Optisch und Technisch(fast)Fertig ist 
nur Laufen Tuts nicht so wie ich das Will.
soll heißen wenn ich auf Port A oder B öffnen klicke kommt nur eine 
Meldung kein Port gefunden und schlisst sich wieder.

Klicke ich auf Port C oder D öffnen kommt gleich gar nix.
Und Microsoft Visual Studio 2010 findet auch keine Fehler mehr.
Könnte sich das mal wer ansehen und mir sagen was da genau nicht stimmt 
?

DANKE
Angehängte Dateien:
Gast #3405272
Lesenswert?
• ▲
▼
was soll denn dieser Block machen?

            {
                MessageBox.Show("Kein serieller Port verfügbar", "Sorry 
no Bonus, insert coin to continue the game");
                Environment.Exit(1);
            }


damit kommt doch immer eine Fehlermeldung. auch wenn alles ok ist.
Gast #3405273
Lesenswert?
• ▲
▼
nachtrag:

Wenn man 4mal (fast) den gleichen Code schreibt, sollte man sich fragen 
was man tut. Oder wirst du nach Code-Zeilen bezahlt? Wenn nein, dann 
würde ich das zu einer Funktion zusammenfassen. Denn kann so etwas nicht 
passieren das Port D anderen code hat wie A und B.
Gast #3405450
Lesenswert?
• ▲
▼
DAVID ------ schrieb:
> OK danke habe den tipp von dir befolgt jetzt gehen die ersten beiden
> also A und B richtig aber C und D noch nicht wie bekomme ich das hin ?

Du hast keine eventhandler für den Click von C und D hinterlegt. (Bei 
den Buttons muss das onClick Event mit deiner Funktion cbOpenPortX_Click 
verbunden werden)
Gast #3406049
Lesenswert?
• ▲
▼
DAVID ------ schrieb:
> Ist doch habe grade noch mal nach gesehen gibt für alle
> Heisen so
> cbOpenPortA_Click
> cbOpenPortB_Click
> cbOpenPortC_Click
> cbOpenPortD_Click

ja aber du hast du 2 der Buttons mit den Funktionen "verbunden" Woher 
soll denn der Computer wissen wenn du ButtonC drückst das er 
cbOpenPortC_Click
aufrufen soll?
Gast #3406143
Lesenswert?
• ▲
▼
DAVID ------ schrieb:
> Nur eine frage wie komme ich die com ports fest ?
> also com1 bei A    com2 bei B    com3 bei C    und com4 bei D ?

musst die Vorauswahl der Selectboxen anpassen.

                cbSerialPortA.SelectedIndex = 0;
                cbSerialPortB.SelectedIndex = 0;
                cbSerialPortC.SelectedIndex = 0;
                cbSerialPortD.SelectedIndex = 0;

hier sagt du das das erste Element gewählt werden soll, das musst du 
ändern. Aber beachte das eventuell nicht immer alle ComPort bei anderen 
Leuten verfügbar sind.
Gast #3406164
Lesenswert?
• ▲
▼
lutz h. schrieb:
> Diese Änderung musste ich in der Main machen.
> Dann habe ich auf taste  C  und D (doppelt)mit Maus gedruckt. War kein
> Code vorhanden.

ich verstehen nicht was du damit sagen willst

> Wie das ?
> würde nur mit controler gehen was ich aber nicht verwalten kann mache
> das mit mosfet und relais.

Wenn man es nicht selber bauen kann/will dann kaufen

http://www.ebay.de/itm/like/320980238170?lpid=91&_configDebug=ViewItemDictionary.ENABLE_PAYMENTS_IN_HLP:true

oder gleich übers Netzwerk

http://www.pollin.de/shop/dt/NjI5OTgxOTk-/Bausaetze_Module/Bausaetze/AVR_NET_IO_Fertigmodul.html
#3406189
Lesenswert?
• ▲
▼
Peter II schrieb:
> ich verstehen nicht was du damit sagen willst

Peter II schrieb:
> ich sehe keine Events

Was wollte ich sagen?
Etwa das gleiche, durch Doppelclick im Designer wird der Event Handler
für einen Click angelegt.

Ich kenne keine Spezifikation, bei der mehrere Geräte an einer Seriellen 
Schnittstelle kommunizieren dürfen. Ich kenne diese nur als Punkt zu 
Punkt Verbindung.
Gast #3406193
Lesenswert?
• ▲
▼
lutz h. schrieb:
> Waswollte ich sagen?
> Etwa das gleiche, durch Doppelclick im Designer wird der Event Handler
> für einen Click angelegt.

er hat aber die Funktion schon, er soll keine neu Anlegen. Dafür kann 
man sie einfach in der Combobox bei dem OnClick Event auswählen.

> Ich kenne keine Spezifikation, bei der mehrere Geräte an einer Seriellen
> Schnittstelle Kommunizieren dürfen. Ich kenne diese nur als Punkt zu
> Punkt Verbindung.
wer sagt dann das es mehre Geräte sein müssen. Er braucht ja nur 8IO 
Anschlüsse. Das geht doch geht sogar ohne µC mit einem einfachen Serial 
zu Parallel Schaltkreis.
Gast #3406233
Lesenswert?
• ▲
▼
DAVID ------ schrieb:
> du schreibst aber nur ich muss es ändern aber nicht in was wenn ich 1-4
> vergebe muss ich jeden port im tool selber aus wählen weils keine vor
> wahl gibt.

ich würde einfach

                cbSerialPortA.SelectedIndex = 0;
                cbSerialPortB.SelectedIndex = 1;
                cbSerialPortC.SelectedIndex = 2;
                cbSerialPortD.SelectedIndex = 3;

schreiben
Gast #3406257
Lesenswert?
• ▲
▼
DAVID ------ schrieb:
> Und wie versprochen die fertige exe für andere user.

ist zwar nett von dir, aber wie hoch ist die Wahrscheinlichkeit das 
jemand die gleiche unbekannte Hardware und auch Strohkugeln hat damit er 
irgendetwas mit der exe anfangen kann?

Du solltest wenn dann auch den Quellcode mit anhängen, dann könnte es 
jemand noch anpassen. Aber der Quellcode ist leider nicht so "schön" das 
er als gutes Beispiel durchgeht.
#3406262
Lesenswert?
• ▲
▼
Die Zuordnung kann auch in der Systemsteuerung gemacht werden,
dort werden die Namen Com1  und so weiter vergeben.

Die Frage nach der Baugruppe richtet sich danach ,was das Gerät 
erwartet, was
angesteuert wird.
In dem COM- Programm hier wird, wenn ich es richtig überflogen habe, ein 
Signal auf der COM Buchse geschaltet und es sind 4 COM Buchsen 
ansteuerbar. Diese Ausgangssignale sind irgendwas im Bereich -15V bis 
15V und einige mA.

Angesteuert werden Lampen, die haben etwa  220V 1A , und noch irgendwas 
soll in der Helligkeit geändert werden.

Um geeignete andere Möglichkeiten zu finden braucht es genauere 
Informationen.

Peter II schrieb:
> Ebay-Artikel Nr. 320980238170

Solche Relais sind sicherlich geeignet das, Licht ein und auszuschalten.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren