25103101 配置为4个串口扫码枪

This commit is contained in:
moxiliang
2025-10-31 11:56:23 +08:00
parent 5d98792d3e
commit deecfd3acb
24 changed files with 931 additions and 263 deletions

View File

@@ -18,7 +18,7 @@ namespace SLC1_N
private void Port_Load(object sender, EventArgs e)
{
// 串口扫码枪初始化
if(Form1.f1.serialport_saoma_Enabled)
if (Form1.f1.serialport_saoma_Enabled)
SerialPort_Init();
// TCP扫码枪初始化
@@ -35,7 +35,9 @@ namespace SLC1_N
uiTabControlMenu1.TabPages[1].Enabled = false;
uiTabControlMenu1.SelectTab($"tabPage_SerialPort");
// 扫码枪1
var jsconfig = new JsonConfig("config.json");
// 串口扫码枪1
if (Form1.f1.SerialPort_CH1Saoma.IsOpen)
{
lb_CH1Com_status.Text = "已打开";
@@ -52,9 +54,8 @@ namespace SLC1_N
lb_CH1Com_status.Text = "未打开";
lb_CH1Com_status.ForeColor = Color.Red;
var jsconfig = new JsonConfig("config.json");
cb_CH1PortName.Text = jsconfig.GetValue<string>("SerialPort_CH1BaudRate", "COM21");
cb_CH1BaudRate.Text = jsconfig.GetValue<int>("SerialPort_CH1PortName", 9600).ToString();
cb_CH1PortName.Text = jsconfig.GetValue<string>("SerialPort_CH1PortName", "COM21");
cb_CH1BaudRate.Text = jsconfig.GetValue<int>("SerialPort_CH1BaudRate", 9600).ToString();
cb_CH1PortName.Enabled = true;
cb_CH1BaudRate.Enabled = true;
@@ -78,14 +79,63 @@ namespace SLC1_N
lb_CH2Com_status.Text = "未打开";
lb_CH2Com_status.ForeColor = Color.Red;
var jsconfig = new JsonConfig("config.json");
cb_CH2PortName.Text = jsconfig.GetValue<string>("SerialPort_CH2BaudRate", "COM22");
cb_CH2BaudRate.Text = jsconfig.GetValue<int>("SerialPort_CH2PortName", 9600).ToString();
cb_CH2PortName.Text = jsconfig.GetValue<string>("SerialPort_CH2PortName", "COM22");
cb_CH2BaudRate.Text = jsconfig.GetValue<int>("SerialPort_CH2BaudRate", 9600).ToString();
cb_CH2PortName.Enabled = true;
cb_CH2BaudRate.Enabled = true;
bt_CH2Connect.Enabled = true;
}
// 串口扫码枪3
if (Form1.f1.SerialPort_CH3Saoma.IsOpen)
{
lb_CH3Com_status.Text = "已打开";
lb_CH3Com_status.ForeColor = Color.Green;
cb_CH3PortName.Text = Form1.f1.SerialPort_CH3Saoma.PortName;
cb_CH3BaudRate.Text = Form1.f1.SerialPort_CH3Saoma.BaudRate.ToString();
cb_CH3PortName.Enabled = false;
cb_CH3BaudRate.Enabled = false;
bt_CH3Connect.Enabled = false;
}
else
{
lb_CH3Com_status.Text = "未打开";
lb_CH3Com_status.ForeColor = Color.Red;
cb_CH3PortName.Text = jsconfig.GetValue<string>("SerialPort_CH3PortName", "COM21");
cb_CH3BaudRate.Text = jsconfig.GetValue<int>("SerialPort_CH3BaudRate", 9600).ToString();
cb_CH3PortName.Enabled = true;
cb_CH3BaudRate.Enabled = true;
bt_CH3Connect.Enabled = true;
}
// 串口扫码枪4
if (Form1.f1.SerialPort_CH4Saoma.IsOpen)
{
lb_CH4Com_status.Text = "已打开";
lb_CH4Com_status.ForeColor = Color.Green;
cb_CH4PortName.Text = Form1.f1.SerialPort_CH4Saoma.PortName;
cb_CH4BaudRate.Text = Form1.f1.SerialPort_CH4Saoma.BaudRate.ToString();
cb_CH4PortName.Enabled = false;
cb_CH4BaudRate.Enabled = false;
bt_CH4Connect.Enabled = false;
}
else
{
lb_CH4Com_status.Text = "未打开";
lb_CH4Com_status.ForeColor = Color.Red;
cb_CH4PortName.Text = jsconfig.GetValue<string>("SerialPort_CH4PortName", "COM21");
cb_CH4BaudRate.Text = jsconfig.GetValue<int>("SerialPort_CH4BaudRate", 9600).ToString();
cb_CH4PortName.Enabled = true;
cb_CH4BaudRate.Enabled = true;
bt_CH4Connect.Enabled = true;
}
}
// TCP扫码枪初始化
@@ -101,7 +151,7 @@ namespace SLC1_N
tb_CH2TCP_port.Text = jsconfig.GetValue<int>("Saoma_Port2", 51111).ToString();
}
// 串口扫码枪1连接
// 串口扫码枪1连接按钮
private void CodeCon_Click(object sender, EventArgs e)
{
try
@@ -133,7 +183,7 @@ namespace SLC1_N
}
}
// 串口扫码枪2连接
// 串口扫码枪2连接按钮
private void CH2CodeCon_Click(object sender, EventArgs e)
{
try
@@ -165,6 +215,70 @@ namespace SLC1_N
}
}
// 串口扫码枪3连接按钮
private void bt_CH3Connect_Click(object sender, EventArgs e)
{
try
{
//设置端口的参数,包括波特率等
Form1.f1.SerialPort_CH3Saoma.BaudRate = Convert.ToInt32(cb_CH3BaudRate.Text);
Form1.f1.SerialPort_CH3Saoma.PortName = cb_CH3PortName.Text;
Form1.f1.SerialPort_CH3Saoma.DataBits = 8;
Form1.f1.SerialPort_CH3Saoma.StopBits = System.IO.Ports.StopBits.One;
Form1.f1.SerialPort_CH3Saoma.Parity = System.IO.Ports.Parity.None;
Form1.f1.SerialPort_CH3Saoma.Open();
if (Form1.f1.SerialPort_CH3Saoma.IsOpen)
{
lb_CH3Com_status.Text = "已打开";
lb_CH3Com_status.ForeColor = Color.Green;
cb_CH3PortName.Enabled = false;
cb_CH3BaudRate.Enabled = false;
bt_CH3Connect.Enabled = false;
//将端口和波特率进行存储
var jsconfig = new JsonConfig("config.json");
jsconfig.SetValue("SerialPort_CH3BaudRate", cb_CH3BaudRate.Text);
jsconfig.SetValue("SerialPort_CH3PortName", cb_CH3PortName.Text);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
// 串口扫码枪4连接按钮
private void bt_CH4Connect_Click(object sender, EventArgs e)
{
try
{
//设置端口的参数,包括波特率等
Form1.f1.SerialPort_CH4Saoma.BaudRate = Convert.ToInt32(cb_CH4BaudRate.Text);
Form1.f1.SerialPort_CH4Saoma.PortName = cb_CH4PortName.Text;
Form1.f1.SerialPort_CH4Saoma.DataBits = 8;
Form1.f1.SerialPort_CH4Saoma.StopBits = System.IO.Ports.StopBits.One;
Form1.f1.SerialPort_CH4Saoma.Parity = System.IO.Ports.Parity.None;
Form1.f1.SerialPort_CH4Saoma.Open();
if (Form1.f1.SerialPort_CH4Saoma.IsOpen)
{
lb_CH4Com_status.Text = "已打开";
lb_CH4Com_status.ForeColor = Color.Green;
cb_CH4PortName.Enabled = false;
cb_CH4BaudRate.Enabled = false;
bt_CH4Connect.Enabled = false;
//将端口和波特率进行存储
var jsconfig = new JsonConfig("config.json");
jsconfig.SetValue("SerialPort_CH4BaudRate", cb_CH4BaudRate.Text);
jsconfig.SetValue("SerialPort_CH4PortName", cb_CH4PortName.Text);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
// 串口扫码枪1刷新
private void CodeRefresh_Click(object sender, EventArgs e)
{
@@ -181,6 +295,22 @@ namespace SLC1_N
cb_CH2PortName.Items.AddRange(ports);
}
// 串口扫码枪3刷新
private void bt_CH3Refresh_Click(object sender, EventArgs e)
{
cb_CH3PortName.Items.Clear();
string[] ports = System.IO.Ports.SerialPort.GetPortNames();
cb_CH3PortName.Items.AddRange(ports);
}
// 串口扫码枪4刷新
private void bt_CH4Refresh_Click(object sender, EventArgs e)
{
cb_CH4PortName.Items.Clear();
string[] ports = System.IO.Ports.SerialPort.GetPortNames();
cb_CH4PortName.Items.AddRange(ports);
}
// 串口扫码枪1关闭
private void CodeBreak_Click(object sender, EventArgs e)
{
@@ -209,10 +339,38 @@ namespace SLC1_N
}
}
// 串口扫码枪3关闭
private void bt_CH3Break_Click(object sender, EventArgs e)
{
Form1.f1.SerialPort_CH3Saoma.Close();
if (!Form1.f1.SerialPort_CH3Saoma.IsOpen)
{
lb_CH3Com_status.Text = "未打开";
lb_CH3Com_status.ForeColor = Color.Red;
cb_CH3PortName.Enabled = true;
cb_CH3BaudRate.Enabled = true;
bt_CH3Connect.Enabled = true;
}
}
// 串口扫码枪4关闭
private void bt_CH4Break_Click(object sender, EventArgs e)
{
Form1.f1.SerialPort_CH4Saoma.Close();
if (!Form1.f1.SerialPort_CH4Saoma.IsOpen)
{
lb_CH4Com_status.Text = "未打开";
lb_CH4Com_status.ForeColor = Color.Red;
cb_CH4PortName.Enabled = true;
cb_CH4BaudRate.Enabled = true;
bt_CH4Connect.Enabled = true;
}
}
// 网口扫码枪1重连
private void bt_CH1TCP_Reconnect_Click(object sender, EventArgs e)
{
if(tb_CH1TCP_ip.Text.Trim().IsNullOrEmpty() || tb_CH1TCP_port.Text.Trim().IsNullOrEmpty())
if (tb_CH1TCP_ip.Text.Trim().IsNullOrEmpty() || tb_CH1TCP_port.Text.Trim().IsNullOrEmpty())
return;
try
@@ -322,6 +480,41 @@ namespace SLC1_N
cb_CH2BaudRate.Enabled = true;
bt_CH2Connect.Enabled = true;
}
// 串口扫码枪3
if (Form1.f1.SerialPort_CH3Saoma.IsOpen)
{
lb_CH3Com_status.Text = "已打开";
lb_CH3Com_status.ForeColor = Color.Green;
cb_CH3PortName.Enabled = false;
cb_CH3BaudRate.Enabled = false;
bt_CH3Connect.Enabled = false;
}
else
{
lb_CH3Com_status.Text = "未打开";
lb_CH3Com_status.ForeColor = Color.Red;
cb_CH3PortName.Enabled = true;
cb_CH3BaudRate.Enabled = true;
bt_CH3Connect.Enabled = true;
}
// 串口扫码枪4
if (Form1.f1.SerialPort_CH4Saoma.IsOpen)
{
lb_CH4Com_status.Text = "已打开";
lb_CH4Com_status.ForeColor = Color.Green;
cb_CH4PortName.Enabled = false;
cb_CH4BaudRate.Enabled = false;
bt_CH4Connect.Enabled = false;
}
else
{
lb_CH4Com_status.Text = "未打开";
lb_CH4Com_status.ForeColor = Color.Red;
cb_CH4PortName.Enabled = true;
cb_CH4BaudRate.Enabled = true;
bt_CH4Connect.Enabled = true;
}
// 网口扫码枪1
if (Form1.f1.saomaClient1 != null && Form1.f1.saomaClient1.isRunning)
{
@@ -345,5 +538,8 @@ namespace SLC1_N
lb_CH2TCP_ConnectStatus.ForeColor = Color.Red;
}
}
}
}