Hallo Leute,
ich bin, wie soll es auch anders sein, ich bin C Sharp Anfänger.
Ich habe ein kleines Projekt, dass Messdaten über eine serielle Schnittstelle empfangen und ausgewertet werden soll. Das Ganze ist natürlich recht komplizierter, aber ich möchte erst mal Daten empfangen können. Mehr vorerst nicht.
Also, meine Entwicklungsumgebung ist Visual C# 2005. Ein Lappi mit 2 USB2Seriell und ein Nullmodemkabel um die Verbindung aufzubauen und zu empfangen.
Es soll eine Windows Applikation werden. Also Windowsform und ich benutze erst mal ein label. Soviel zu dem grafischen.
Über HTerm (Terminalprogramm) möchte ich die Daten versenden und empfange Sie über mein Programm.
Ich bin auch schon dabei von Galileo das openbook zu lesen.
Mein Problem ist, dass ich nicht genau weiß ob beim „using“ noch ein Eintrag fehlt. Bei Zeile 22+23, weiß ich nicht ob er an der falschen Stelle ist(Hab es auch mal nach oben verschoben) oder wie ich nochmal den „buffer“. Definiere. Denn wenn ich es Debugge kommt dann die Meldung „ Der Name buffer ist nicht im aktuellen Kontext vorhanden.
Ich weiß, dass ich es definieren muss. Eine Hilfestellung wäre schön und eine Lösung noch schöner!^^
Vielen Dank im voraus und wer Schreibfehler findet darf sie gern behalten!^^
Der Code:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63:
| using System; using System.Collections.Generic; using System.IO.Ports; using System.Windows.Forms; using System.Text;
namespace Messdaten { class Program { private SerialPort port = new SerialPort("COM1", 9600, Parity.None, 8, StopBits.One); [STAThread] static void Main(string[] args) { Label label1 = new Label(); label1.Text += ByteArrayToHexString(buffer); new Program(); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); }
private static string ByteArrayToHexString(object buffer) { throw new Exception("The method or operation is not implemented."); }
private Program() { port.Handshake = System.IO.Ports.Handshake.RequestToSend; port.ReceivedBytesThreshold = 1; port.Open(); }
private string ByteArrayToHexString(byte[] data) { StringBuilder sb = new StringBuilder(data.Length * 3); foreach (byte b in data) sb.Append(Convert.ToString(b, 16).PadLeft(2, '0').PadRight(3, ' ')); return sb.ToString().ToUpper(); }
} } |