FrmMain.cs
4.1 KB
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace RFID_PuYue_Debug
{
public partial class FrmMain : Form
{
private Asa.RFID.IPuYue rfid;
private bool autoMode;
public FrmMain()
{
InitializeComponent();
}
private void SetEnabled(bool enabled)
{
BtnInit.Enabled = enabled;
BtnAutoMode.Enabled = enabled;
BtnManual.Enabled = enabled;
if (!autoMode)
{
BtnWrite.Enabled = enabled;
BtnRead.Enabled = enabled;
}
}
private void Rfid_Received(string ip, string uid, string data)
{
this.Invoke(new Action(() =>
{
TxtRead.AppendText(string.Format("[{0:HH:mm:ss.fff}] UID:{1} NO.{2}\r\n", DateTime.Now, uid, data));
}));
}
private void FrmMain_Load(object sender, EventArgs e)
{
//string[] letter = new string[26];
//for (int i = 0; i < letter.Length; i++)
// letter[i] = ((char)(65 + i)).ToString();
//CboLetter.Items.AddRange(letter);
//CboLetter.SelectedIndex = 0;
Frm_moduleselect frm_Moduleselect = new Frm_moduleselect();
frm_Moduleselect.ShowDialog();
if (frm_Moduleselect.Module == Asa.RFID.ModuleEnum.FR540SP)
rfid = new Asa.RFID.PuYue_FR540SP();
else
rfid = new Asa.RFID.PuYue();
rfid.Received += Rfid_Received;
}
private void FrmMain_FormClosing(object sender, FormClosingEventArgs e)
{
if (rfid.IsConn)
rfid.Close();
}
private void BtnOpen_Click(object sender, EventArgs e)
{
if (rfid.IsConn)
rfid.Close();
else
{
rfid.IP = TxtIP.Text;
rfid.Open();
}
if(rfid.IsConn)
{
BtnOpen.Text = "关闭";
autoMode = rfid.GetAutoMode();
SetEnabled(true);
LblMode.Text = "当前模式" + (autoMode ? "自动" : "手动");
}
else
{
BtnOpen.Text = "打开";
SetEnabled(false);
}
}
private void BtnInit_Click(object sender, EventArgs e)
{
rfid.Init();
MessageBox.Show("OK");
}
private void BtnAutoMode_Click(object sender, EventArgs e)
{
rfid.TriggerMode(true);
BtnWrite.Enabled = false;
BtnRead.Enabled = false;
LblMode.Text = "当前模式自动";
MessageBox.Show(BtnAutoMode.Text);
}
private void BtnManual_Click(object sender, EventArgs e)
{
rfid.TriggerMode(false);
BtnWrite.Enabled = true;
BtnRead.Enabled = true;
LblMode.Text = "当前模式手动";
MessageBox.Show(BtnManual.Text);
}
private void BtnWrite_Click(object sender, EventArgs e)
{
var format = textBox_start.Text;
var nf = format.TrimEnd('0');
var num = format.Substring(nf.Length);
string id = nf + NudNumber.Value.ToString(num);
bool rtn = rfid.WriteData(Encoding.ASCII.GetBytes(id));
if (rtn)
{
LblRfid.Text = "Write:" + id;
if (ChkAutoAdd.Checked)
NudNumber.Value++;
}
else
LblRfid.Text = "Write Error";
}
private void BtnRead_Click(object sender, EventArgs e)
{
bool rtn = rfid.ReadData(out string id,20);
if (rtn)
LblRfid.Text = "Read:" + id;
else
LblRfid.Text = "Read Error";
}
}
}