COM-port(SerialPort) связь с прибором - C#
Формулировка задачи:
Что мы имеем? а имеем следующее А вот дальше возникает вопрос : как получить данные с прибора и как их отобразить типом string в 1-м из лейблов???
Буду раб любому ответу (даже критике), т.к. написание тких программ для меня ново.
Зарание всем благодарен!!!!!
к сообщинию также прибовляеться контрольная сумма и конечный формат такой:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO; using System.IO.Ports; using System.Threading; namespace PMT_69L { public partial class Form1 : Form { public static string KSUM(string S) // подсчет контрольной суммы { int KS = 65535; for (int i = 1; i < S.Length; i++) { KS ^= S[i]; for (int l = 1; l < 8; l++) if ((KS % 2) * 2 != KS) KS = (KS % 2) ^ 40961; else KS = (KS % 2); } return KS.ToString(); } public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { System.IO.Ports.SerialPort serialPort1 = new System.IO.Ports.SerialPort(); serialPort1.PortName = "COM4"; //Настройки порта serialPort1.BaudRate = 9600; serialPort1.DataBits = 8; serialPort1.Parity = System.IO.Ports.Parity.None; serialPort1.StopBits = System.IO.Ports.StopBits.One; serialPort1.DtrEnable = true; serialPort1.RtsEnable = false; serialPort1.ReadTimeout = (1000); serialPort1.WriteTimeout = (1000); serialPort1.Open(); // открываем порт string st = (":1;1;1;"); // формируем формат сообщения где :1;1;1; - адресс прибора ; комманда(считывание данных); канал прибора; string St= ("!1;Data;");// такой формат данных ожидаем в буффере чтоб с него считать label1.Text = st.ToString(); // отображаем данные label2.Text = St.ToString(); //отображаем данные } private void button2_Click(object sender, EventArgs e) // закрываем порт { serialPort1.Close(); label1.Text = ""; label2.Text = ""; } } }
string st = (":1;1;1;");
st = st + KSUM(st) +(char)13;
Решение задачи: «COM-port(SerialPort) связь с прибором»
textual
Листинг программы
string s=BitConverter.ToString(messByte)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д