Hallo,
ich arbeit gerade daran meinen Microkontroller mit dem PC zu verbinden.
Um eine Maschiene gescheit steuern zu können reichen mir die ganzen
Terminal Programme nicht aus, drum wollte ich es mal mit einem Windows
Forms in C# veruchen.
Ich habe jetzt ein Programm geschieben wo ich einen String in eine
TextBox schreibe und dieser mit Enter drücken an den Microkontroller
gesendet wird. Bis hier hin klappt alles. doch nun soll der
Microkontroller eine bestätigung zurück senden aber nix passiert nur
eine Fehlermeldung kommt:
Eine nicht behandelte Ausnahme des Typs "System.IO.IOException" ist in
System.dll aufgetreten.
Zusätzliche Informationen: Der E/A-Vorgang wurde wegen eines Threadendes
oder einer Anwendungsanforderung abgebrochen.
Mein coode:
1 | private void textBox1_KeyDown(object sender, KeyEventArgs e)
|
2 | {
|
3 | if (e.KeyCode == Keys.Enter)
|
4 | {
|
5 |
|
6 | serialPort1.WriteLine(textBox1.Text);
|
7 |
|
8 | textBox1.Clear();
|
9 |
|
10 | }
|
11 | }
|
12 |
|
13 | private void Form1_Load(object sender, EventArgs e)
|
14 | {
|
15 | CheckForIllegalCrossThreadCalls = false;
|
16 | serialPort1.Open();
|
17 | }
|
18 |
|
19 | private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
|
20 | {
|
21 | label1.Text = serialPort1.ReadLine();
|
22 | }
|