@ Ver 12.3.0 by LSJ
- 2025.02.27 - Ver 12.2.1 Modify - Framework : SmartX Framework V3.2.4(update: 2021.01.20) - SerialDll 사용 Serial callback 수정(string) serialRcvPacketStrMsgCallback serialRcvErrPacketStrMsgCallbackmaster^2 V12.3.0
parent
b603f079d2
commit
e917bd6fb9
|
@ -142,7 +142,7 @@ namespace INT69DC_7C.Forms
|
||||||
}
|
}
|
||||||
private void DefaultSetting()
|
private void DefaultSetting()
|
||||||
{
|
{
|
||||||
this.labelDisplayVer.Text = "12.2.1";
|
this.labelDisplayVer.Text = "12.3.0";
|
||||||
if(this.ParentForm.SystemConfig.EquipmentMode == 7)
|
if(this.ParentForm.SystemConfig.EquipmentMode == 7)
|
||||||
this.labelTitleMainboardName.Text = "INT68M-2A";
|
this.labelTitleMainboardName.Text = "INT68M-2A";
|
||||||
else
|
else
|
||||||
|
|
|
@ -515,14 +515,16 @@ namespace INT69DC_7C.Forms
|
||||||
|
|
||||||
|
|
||||||
// DllSerial 사용여부 설정
|
// DllSerial 사용여부 설정
|
||||||
this.FlagDllSerial = false;
|
this.FlagDllSerial = true;
|
||||||
if (this.FlagDllSerial == true)
|
if (this.FlagDllSerial == true)
|
||||||
{
|
{
|
||||||
// SerialDll Initialize
|
// SerialDll Initialize
|
||||||
this.ComPortMainToLCD = "COM2:";
|
this.ComPortMainToLCD = "COM2:";
|
||||||
SerialMgrComm.IntializeSerialManager();
|
SerialMgrComm.IntializeSerialManager();
|
||||||
SerialMgrComm.SerialPortMessageReceive += this.SerialPort_MessageReceive;
|
//SerialMgrComm.SerialPortMessageReceive += this.SerialPort_MessageReceive;
|
||||||
SerialMgrComm.SerialPortErrMessageReceive += this.SerialPort_ErrMessageReceive;
|
//SerialMgrComm.SerialPortErrMessageReceive += this.SerialPort_ErrMessageReceive;
|
||||||
|
SerialMgrComm.SerialPortStrMessageReceive += this.SerialPort_StrMessageReceive;
|
||||||
|
SerialMgrComm.SerialPortErrStrMessageReceive += this.SerialPort_ErrStrMessageReceive;
|
||||||
SerialMgrComm.SerialPortGetVersionDataEvent += this.Serialport_GetVersionDataEvent;
|
SerialMgrComm.SerialPortGetVersionDataEvent += this.Serialport_GetVersionDataEvent;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -590,6 +592,13 @@ namespace INT69DC_7C.Forms
|
||||||
this.Serialport_ReceiveDataEvent(data.ToString());
|
this.Serialport_ReceiveDataEvent(data.ToString());
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
private void SerialPort_StrMessageReceive(object data)
|
||||||
|
{
|
||||||
|
this.UI_Invoke(delegate
|
||||||
|
{
|
||||||
|
this.Serialport_ReceiveDataEvent(data.ToString());
|
||||||
|
});
|
||||||
|
}
|
||||||
private void SerialPort_ErrMessageReceive(object data)
|
private void SerialPort_ErrMessageReceive(object data)
|
||||||
{
|
{
|
||||||
this.UI_Invoke(delegate
|
this.UI_Invoke(delegate
|
||||||
|
@ -598,6 +607,14 @@ namespace INT69DC_7C.Forms
|
||||||
this.smartFileCommunicationLog.WriteString(string.Format("Receive ({0:yyyy-MM-dd HH:mm:ss}): {1} : Dll(Err MSG)", DateTime.Now, data));
|
this.smartFileCommunicationLog.WriteString(string.Format("Receive ({0:yyyy-MM-dd HH:mm:ss}): {1} : Dll(Err MSG)", DateTime.Now, data));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
private void SerialPort_ErrStrMessageReceive(object data)
|
||||||
|
{
|
||||||
|
this.UI_Invoke(delegate
|
||||||
|
{
|
||||||
|
if (this.IsCommunicationLogOpen == true)
|
||||||
|
this.smartFileCommunicationLog.WriteString(string.Format("Receive ({0:yyyy-MM-dd HH:mm:ss}): {1} : Dll(Err MSG)", DateTime.Now, data));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
private void TrasferSystemParameter(SystemConfigurationItem item)
|
private void TrasferSystemParameter(SystemConfigurationItem item)
|
||||||
{
|
{
|
||||||
|
|
|
@ -27,9 +27,15 @@ namespace INT69DC_7C.SerialManger
|
||||||
public delegate void fnSerialMgrRcvPacketCB(StringBuilder commPort, IntPtr pData, int length);
|
public delegate void fnSerialMgrRcvPacketCB(StringBuilder commPort, IntPtr pData, int length);
|
||||||
public static fnSerialMgrRcvPacketCB fnSerialMgrRcvPacketCallback;
|
public static fnSerialMgrRcvPacketCB fnSerialMgrRcvPacketCallback;
|
||||||
|
|
||||||
|
public delegate void fnSerialMgrRcvPacketStrCB(StringBuilder commPort, StringBuilder pMessage, int length);
|
||||||
|
public static fnSerialMgrRcvPacketStrCB fnSerialMgrRcvPacketStrCallback;
|
||||||
|
|
||||||
public delegate void fnSerialMgrRcvErrPacketCB(StringBuilder commPort, IntPtr pData, int length);
|
public delegate void fnSerialMgrRcvErrPacketCB(StringBuilder commPort, IntPtr pData, int length);
|
||||||
public static fnSerialMgrRcvErrPacketCB fnSerialMgrRcvErrPacketCallback;
|
public static fnSerialMgrRcvErrPacketCB fnSerialMgrRcvErrPacketCallback;
|
||||||
|
|
||||||
|
public delegate void fnSerialMgrRcvErrPacketStrCB(StringBuilder commPort, StringBuilder pMessage, int length);
|
||||||
|
public static fnSerialMgrRcvErrPacketStrCB fnSerialMgrRcvErrPacketStrCallback;
|
||||||
|
|
||||||
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
|
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
|
||||||
public static extern void DLL_SerialMgr_Register_DebugCB(fnSerialMgrDebugCB func);
|
public static extern void DLL_SerialMgr_Register_DebugCB(fnSerialMgrDebugCB func);
|
||||||
|
|
||||||
|
@ -42,9 +48,15 @@ namespace INT69DC_7C.SerialManger
|
||||||
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
|
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
|
||||||
public static extern void DLL_SerialMgr_Register_RcvPacketCB(fnSerialMgrRcvPacketCB func);
|
public static extern void DLL_SerialMgr_Register_RcvPacketCB(fnSerialMgrRcvPacketCB func);
|
||||||
|
|
||||||
|
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
|
||||||
|
public static extern void DLL_SerialMgr_Register_RcvPacketStrCB(fnSerialMgrRcvPacketStrCB func);
|
||||||
|
|
||||||
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
|
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
|
||||||
public static extern void DLL_SerialMgr_Register_RcvErrPacketCB(fnSerialMgrRcvErrPacketCB func);
|
public static extern void DLL_SerialMgr_Register_RcvErrPacketCB(fnSerialMgrRcvErrPacketCB func);
|
||||||
|
|
||||||
|
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
|
||||||
|
public static extern void DLL_SerialMgr_Register_RcvErrPacketStrCB(fnSerialMgrRcvErrPacketStrCB func);
|
||||||
|
|
||||||
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
|
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
|
||||||
public static extern void DLL_SerialMgr_HelloWorld();
|
public static extern void DLL_SerialMgr_HelloWorld();
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,9 @@ namespace INT69DC_7C.SerialManger
|
||||||
{
|
{
|
||||||
public delegate void ObjectEventHandler(object data);
|
public delegate void ObjectEventHandler(object data);
|
||||||
public static event ObjectEventHandler SerialPortMessageReceive;
|
public static event ObjectEventHandler SerialPortMessageReceive;
|
||||||
|
public static event ObjectEventHandler SerialPortStrMessageReceive;
|
||||||
public static event ObjectEventHandler SerialPortErrMessageReceive;
|
public static event ObjectEventHandler SerialPortErrMessageReceive;
|
||||||
|
public static event ObjectEventHandler SerialPortErrStrMessageReceive;
|
||||||
public static event ObjectEventHandler SerialPortGetVersionDataEvent;
|
public static event ObjectEventHandler SerialPortGetVersionDataEvent;
|
||||||
|
|
||||||
public static void IntializeSerialManager()
|
public static void IntializeSerialManager()
|
||||||
|
@ -31,11 +33,17 @@ namespace INT69DC_7C.SerialManger
|
||||||
fnSerialVersionCallback = serialVersionCallback;
|
fnSerialVersionCallback = serialVersionCallback;
|
||||||
DLL_SerialMgr_Register_VersionCB(fnSerialVersionCallback);
|
DLL_SerialMgr_Register_VersionCB(fnSerialVersionCallback);
|
||||||
|
|
||||||
fnSerialMgrRcvPacketCallback = serialRcvPacketMsgCallback;
|
//fnSerialMgrRcvPacketCallback = serialRcvPacketMsgCallback;
|
||||||
DLL_SerialMgr_Register_RcvPacketCB(fnSerialMgrRcvPacketCallback);
|
//DLL_SerialMgr_Register_RcvPacketCB(fnSerialMgrRcvPacketCallback);
|
||||||
|
|
||||||
fnSerialMgrRcvErrPacketCallback = serialRcvErrPacketMsgCallback;
|
fnSerialMgrRcvPacketStrCallback = serialRcvPacketStrMsgCallback;
|
||||||
DLL_SerialMgr_Register_RcvErrPacketCB(fnSerialMgrRcvErrPacketCallback);
|
DLL_SerialMgr_Register_RcvPacketStrCB(fnSerialMgrRcvPacketStrCallback);
|
||||||
|
|
||||||
|
//fnSerialMgrRcvErrPacketCallback = serialRcvErrPacketMsgCallback;
|
||||||
|
//DLL_SerialMgr_Register_RcvErrPacketCB(fnSerialMgrRcvErrPacketCallback);
|
||||||
|
|
||||||
|
fnSerialMgrRcvErrPacketStrCallback = serialRcvErrPacketStrMsgCallback;
|
||||||
|
DLL_SerialMgr_Register_RcvErrPacketStrCB(fnSerialMgrRcvErrPacketStrCallback);
|
||||||
|
|
||||||
// test
|
// test
|
||||||
//DLL_SerialMgr_HelloWorld();
|
//DLL_SerialMgr_HelloWorld();
|
||||||
|
@ -90,7 +98,6 @@ namespace INT69DC_7C.SerialManger
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// https://stackoverflow.com/questions/22938756/how-to-marshal-c-array-to-c-sharp-via-intptr
|
|
||||||
public static void serialRcvPacketMsgCallback(StringBuilder commPort, IntPtr pData, int length)
|
public static void serialRcvPacketMsgCallback(StringBuilder commPort, IntPtr pData, int length)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
@ -108,39 +115,29 @@ namespace INT69DC_7C.SerialManger
|
||||||
|
|
||||||
if (SerialPortMessageReceive != null)
|
if (SerialPortMessageReceive != null)
|
||||||
SerialPortMessageReceive(sdata);
|
SerialPortMessageReceive(sdata);
|
||||||
|
|
||||||
#if TEST_CB
|
|
||||||
String commPortStr = commPort.ToString();
|
|
||||||
|
|
||||||
serialPortMessageByte(commPortStr, data, length);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
//Console.Write("comm port : " + commPort + ", length = " + length.ToString() + "\n");
|
|
||||||
#if TEST_DEBUG
|
|
||||||
// https://stackoverflow.com/questions/1342922/console-writeline-as-hexadecimal
|
|
||||||
int index = 0;
|
|
||||||
foreach (byte temp in data)
|
|
||||||
{
|
|
||||||
Console.Write(temp.ToString("X2") + " ");
|
|
||||||
index++;
|
|
||||||
|
|
||||||
if (index % 16 == 0) Console.Write("\n");
|
|
||||||
}
|
|
||||||
|
|
||||||
Console.Write("\n");
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//data = null;
|
|
||||||
|
|
||||||
//GC.Collect();
|
|
||||||
//GC.WaitForPendingFinalizers();
|
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
throw (e);
|
throw (e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
public static void serialRcvPacketStrMsgCallback(StringBuilder commPort, StringBuilder pMessage, int length)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
if (commPort.Length == 0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (length == 0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (SerialPortStrMessageReceive != null)
|
||||||
|
SerialPortStrMessageReceive(pMessage);
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public static void serialRcvErrPacketMsgCallback(StringBuilder commPort, IntPtr pData, int length)
|
public static void serialRcvErrPacketMsgCallback(StringBuilder commPort, IntPtr pData, int length)
|
||||||
{
|
{
|
||||||
|
@ -159,41 +156,29 @@ namespace INT69DC_7C.SerialManger
|
||||||
|
|
||||||
if (SerialPortErrMessageReceive != null)
|
if (SerialPortErrMessageReceive != null)
|
||||||
SerialPortErrMessageReceive(sdata);
|
SerialPortErrMessageReceive(sdata);
|
||||||
|
|
||||||
//String commPortStr = commPort.ToString();
|
|
||||||
//serialPortMessageByte(commPortStr, data, length);
|
|
||||||
|
|
||||||
//Console.Write("Err : comm port : " + commPort + ", length = " + length.ToString() + "\n");
|
|
||||||
|
|
||||||
#if (TEST_DEBUG1)
|
|
||||||
// https://stackoverflow.com/questions/1342922/console-writeline-as-hexadecimal
|
|
||||||
int index = 0;
|
|
||||||
foreach (byte temp in data)
|
|
||||||
{
|
|
||||||
Console.Write(temp.ToString("X2") + " ");
|
|
||||||
index++;
|
|
||||||
|
|
||||||
if (index == 5) break;
|
|
||||||
|
|
||||||
if (index % 16 == 0) Console.Write("\n");
|
|
||||||
}
|
|
||||||
|
|
||||||
Console.Write("\n");
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// https://dhshin94.tistory.com/135
|
|
||||||
//data = null;
|
|
||||||
|
|
||||||
//GC.Collect();
|
|
||||||
//GC.WaitForPendingFinalizers();
|
|
||||||
|
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
throw (e);
|
throw (e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
public static void serialRcvErrPacketStrMsgCallback(StringBuilder commPort, StringBuilder pMessage, int length)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
if (commPort.Length == 0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (length == 0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (SerialPortErrStrMessageReceive != null)
|
||||||
|
SerialPortErrStrMessageReceive(pMessage);
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
#endregion // DLL_CALLBACK
|
#endregion // DLL_CALLBACK
|
||||||
|
|
||||||
#region DLL_COMMAND
|
#region DLL_COMMAND
|
||||||
|
@ -204,7 +189,6 @@ namespace INT69DC_7C.SerialManger
|
||||||
|
|
||||||
DLL_SerialMgr_PortOpen(pCommPort, BaudRate, stopBit, parity, dataBit);
|
DLL_SerialMgr_PortOpen(pCommPort, BaudRate, stopBit, parity, dataBit);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void serialPortClose(String commPort)
|
public static void serialPortClose(String commPort)
|
||||||
{
|
{
|
||||||
IntPtr pCommPort = Marshal.StringToBSTR(commPort.ToString());
|
IntPtr pCommPort = Marshal.StringToBSTR(commPort.ToString());
|
||||||
|
@ -212,7 +196,6 @@ namespace INT69DC_7C.SerialManger
|
||||||
DLL_SerialMgr_PortClose(pCommPort);
|
DLL_SerialMgr_PortClose(pCommPort);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public static void serialPortMessageByte(String commport, byte[] data, int length)
|
public static void serialPortMessageByte(String commport, byte[] data, int length)
|
||||||
{
|
{
|
||||||
IntPtr pCommPort = Marshal.StringToBSTR(commport.ToString());
|
IntPtr pCommPort = Marshal.StringToBSTR(commport.ToString());
|
||||||
|
@ -229,9 +212,6 @@ namespace INT69DC_7C.SerialManger
|
||||||
// if (SerialPortMessageReceive != null)
|
// if (SerialPortMessageReceive != null)
|
||||||
// SerialPortMessageReceive(sdata);
|
// SerialPortMessageReceive(sdata);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//https://stackoverflow.com/questions/13418795/convert-byte-array-to-structure-in-the-compact-framework
|
|
||||||
public static void serialPortMessage(String commPort, String Message)
|
public static void serialPortMessage(String commPort, String Message)
|
||||||
{
|
{
|
||||||
IntPtr pCommPort = Marshal.StringToBSTR(commPort.ToString());
|
IntPtr pCommPort = Marshal.StringToBSTR(commPort.ToString());
|
||||||
|
|
|
@ -23,6 +23,15 @@
|
||||||
멀티형 8,10,12열 컨베어/스틱 계량기
|
멀티형 8,10,12열 컨베어/스틱 계량기
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ Ver 12.3.0 by LSJ
|
||||||
|
- 2025.02.27
|
||||||
|
- Ver 12.2.1 Modify
|
||||||
|
- Framework : SmartX Framework V3.2.4(update: 2021.01.20)
|
||||||
|
- SerialDll 사용
|
||||||
|
Serial callback 수정(string)
|
||||||
|
serialRcvPacketStrMsgCallback
|
||||||
|
serialRcvErrPacketStrMsgCallback
|
||||||
|
|
||||||
@ Ver 12.2.1 by LSJ
|
@ Ver 12.2.1 by LSJ
|
||||||
- 2025.01.02
|
- 2025.01.02
|
||||||
- Ver 12.2.0 Modify
|
- Ver 12.2.0 Modify
|
||||||
|
|
Loading…
Reference in New Issue