├── .gitattributes ├── .vs ├── HCTestDemo │ ├── FileContentIndex │ │ ├── 5bd3cca6-8bd0-46ef-85c6-60dd013429db.vsidx │ │ └── read.lock │ └── v17 │ │ └── .suo └── VSWorkspaceState.json ├── HCTestDemo.sln ├── HCTestDemo ├── App.config ├── Control │ ├── BootLoadBinFile.Designer.cs │ ├── BootLoadBinFile.cs │ ├── BootLoadBinFile.resx │ ├── HanSenPowerControl.Designer.cs │ ├── HanSenPowerControl.cs │ ├── HanSenPowerControl.resx │ ├── ParameModifica.Designer.cs │ ├── ParameModifica.cs │ ├── ParameModifica.resx │ ├── RealTimeSample.cs │ ├── RealTimeSample.resx │ ├── WoSenPowerControl.Designer.cs │ ├── WoSenPowerControl.cs │ └── WoSenPowerControl.resx ├── EVWB双向直流电源通讯协议(1).doc ├── Form │ ├── AnalogKB.Designer.cs │ ├── AnalogKB.cs │ ├── AnalogKB.resx │ ├── ExcelPathNameInit.Designer.cs │ ├── ExcelPathNameInit.cs │ ├── ExcelPathNameInit.resx │ ├── HC_23KW_PowerSta.Designer.cs │ ├── HC_23KW_PowerSta.cs │ ├── HC_23KW_PowerSta.resx │ ├── HC_2p5kw.Designer.cs │ ├── HC_2p5kw.cs │ ├── HC_2p5kw.resx │ ├── HC_3kw_Pump.Designer.cs │ ├── HC_3kw_Pump.cs │ ├── HC_3kw_Pump.resx │ ├── HC_4p5_Fan.Designer.cs │ ├── HC_4p5_Fan.cs │ ├── HC_4p5_Fan.resx │ ├── HC_5kw_Fan.Designer.cs │ ├── HC_5kw_Fan.cs │ ├── HC_5kw_Fan.resx │ ├── HC_800w.Designer.cs │ ├── HC_800w.cs │ ├── HC_800w.resx │ ├── HC_L1.Designer.cs │ ├── HC_L1.cs │ ├── HC_L1.resx │ ├── HC_M2A_Pump.Designer.cs │ ├── HC_M2A_Pump.cs │ ├── HC_M2A_Pump.resx │ ├── LinearReg.Designer.cs │ ├── LinearReg.cs │ ├── LinearReg.resx │ ├── LoadFrm.Designer.cs │ ├── LoadFrm.cs │ └── LoadFrm.resx ├── HCTestDemo.csproj ├── HCTestDemo.csproj.user ├── Lib │ ├── ICSharpCode.SharpZipLib.dll │ ├── NModbus4.dll │ ├── NPOI.OOXML.dll │ ├── NPOI.OpenXml4Net.dll │ ├── NPOI.OpenXmlFormats.dll │ ├── NPOI.dll │ ├── SunnyUI.Common.dll │ ├── SunnyUI.dll │ └── TmctlAPINet.dll ├── Program.cs ├── Properties │ ├── AssemblyInfo.cs │ ├── Resources.Designer.cs │ ├── Resources.resx │ ├── Settings.Designer.cs │ └── Settings.settings ├── PublicClass │ ├── ControlCAN.cs │ ├── IDBCManager.cs │ ├── LoadResourceDll.cs │ ├── NpoiHelper.cs │ └── connection.cs ├── bin │ └── Debug │ │ ├── BIN │ │ ├── BootApp.bin │ │ ├── HC32F460_HC.bin │ │ ├── hiiMotor(1).bin │ │ ├── hiiMotor.bin │ │ ├── kW4p5_Fan_V1.0.5.bin │ │ └── kWAuxStation.bin │ │ ├── ControlCAN.dll │ │ ├── ControlCAN1.dll │ │ ├── DbcFiles │ │ ├── 23K_TTcan.dbc │ │ ├── HC_235W_pump_710.dbc │ │ ├── HC_3kw_Pump_debug_Control_Generator_20220520.dbc │ │ ├── HC_3kw_Pump_debug_Control_Generator_20220520.ini │ │ ├── HC_5kW_Fan_201.dbc │ │ └── HC_Fan_4p5.dbc │ │ ├── HCTestDemo.exe │ │ ├── HCTestDemo.exe.config │ │ ├── HCTestDemo.pdb │ │ ├── HCTestDemo.vshost.exe │ │ ├── HCTestDemo.vshost.exe.config │ │ ├── LibDBCManager.dll │ │ ├── ParaFile │ │ └── CalibrationParam_3kw_2022_03_16_M5_Final.xlsx │ │ ├── YKMUSB.dll │ │ ├── kerneldlls │ │ ├── CAN232.dll │ │ ├── CANETE.dll │ │ ├── CANET_TCP.dll │ │ ├── PC104C2.dll │ │ ├── PC104CAN.dll │ │ ├── PCI5121.dll │ │ ├── gisadll.dll │ │ ├── gpcidll.dll │ │ ├── isa5420.dll │ │ ├── kerneldll.ini │ │ └── usbcan.dll │ │ └── tmctl.dll ├── dbc_demo.ico └── obj │ └── Debug │ ├── .NETFramework,Version=v4.5.AssemblyAttributes.cs │ ├── DesignTimeResolveAssemblyReferences.cache │ ├── DesignTimeResolveAssemblyReferencesInput.cache │ ├── HCTestDemo.AnalogKB.resources │ ├── HCTestDemo.BootLoadBinFile.resources │ ├── HCTestDemo.ExcelPathNameInit.resources │ ├── HCTestDemo.HC_23KW_PowerSta.resources │ ├── HCTestDemo.HC_2p5kw.resources │ ├── HCTestDemo.HC_3kw_Pump.resources │ ├── HCTestDemo.HC_4p5_Fan.resources │ ├── HCTestDemo.HC_5kw_Fan.resources │ ├── HCTestDemo.HC_800w.resources │ ├── HCTestDemo.HC_L1.resources │ ├── HCTestDemo.HC_M2A_Pump.resources │ ├── HCTestDemo.HanSenPowerControl.resources │ ├── HCTestDemo.LinearReg.resources │ ├── HCTestDemo.LoadFrm.resources │ ├── HCTestDemo.MsgFrm.resources │ ├── HCTestDemo.ParameModifica.resources │ ├── HCTestDemo.Properties.Resources.resources │ ├── HCTestDemo.WoSenPowerControl.resources │ ├── HCTestDemo.csproj.AssemblyReference.cache │ ├── HCTestDemo.csproj.CoreCompileInputs.cache │ ├── HCTestDemo.csproj.FileListAbsolute.txt │ ├── HCTestDemo.csproj.GenerateResource.cache │ ├── HCTestDemo.csprojResolveAssemblyReference.cache │ ├── HCTestDemo.exe │ ├── HCTestDemo.pdb │ ├── TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs │ ├── TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs │ ├── TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs │ └── WinFormsChartSamples.RealTimeSample.resources └── README.md /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | -------------------------------------------------------------------------------- /.vs/HCTestDemo/FileContentIndex/5bd3cca6-8bd0-46ef-85c6-60dd013429db.vsidx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/.vs/HCTestDemo/FileContentIndex/5bd3cca6-8bd0-46ef-85c6-60dd013429db.vsidx -------------------------------------------------------------------------------- /.vs/HCTestDemo/FileContentIndex/read.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/.vs/HCTestDemo/FileContentIndex/read.lock -------------------------------------------------------------------------------- /.vs/HCTestDemo/v17/.suo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/.vs/HCTestDemo/v17/.suo -------------------------------------------------------------------------------- /.vs/VSWorkspaceState.json: -------------------------------------------------------------------------------- 1 | { 2 | "ExpandedNodes": [ 3 | "" 4 | ], 5 | "SelectedNode": "\\HCTestDemo.sln", 6 | "PreviewInSolutionExplorer": false 7 | } -------------------------------------------------------------------------------- /HCTestDemo.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio 2013 4 | VisualStudioVersion = 12.0.21005.1 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HCTestDemo", "HCTestDemo\HCTestDemo.csproj", "{CFD0B514-EB16-4B2A-B3B8-727F8E5EE738}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|Any CPU = Debug|Any CPU 11 | Release|Any CPU = Release|Any CPU 12 | EndGlobalSection 13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 14 | {CFD0B514-EB16-4B2A-B3B8-727F8E5EE738}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 15 | {CFD0B514-EB16-4B2A-B3B8-727F8E5EE738}.Debug|Any CPU.Build.0 = Debug|Any CPU 16 | {CFD0B514-EB16-4B2A-B3B8-727F8E5EE738}.Release|Any CPU.ActiveCfg = Release|Any CPU 17 | {CFD0B514-EB16-4B2A-B3B8-727F8E5EE738}.Release|Any CPU.Build.0 = Release|Any CPU 18 | EndGlobalSection 19 | GlobalSection(SolutionProperties) = preSolution 20 | HideSolutionNode = FALSE 21 | EndGlobalSection 22 | EndGlobal 23 | -------------------------------------------------------------------------------- /HCTestDemo/App.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /HCTestDemo/Control/BootLoadBinFile.resx: -------------------------------------------------------------------------------- 1 |  2 | 3 | 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 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | -------------------------------------------------------------------------------- /HCTestDemo/Control/HanSenPowerControl.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel; 4 | using System.Drawing; 5 | using System.Data; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | using System.Windows.Forms; 10 | using Sunny.UI; 11 | using ControlCAN; 12 | using IDBCManager; 13 | using System.Runtime.InteropServices; 14 | 15 | namespace HCTestDemo 16 | { 17 | public partial class HanSenPowerControl : UserControl 18 | { 19 | bool getParamSet = false; 20 | int ledcount_pwr = 0;//直流电源CAN接收数据计数 21 | bool pwrConnect = false; 22 | public const uint Pwr_Mode = 0x181AF410; 23 | public const uint Pwr_Para = 0x1813F410; 24 | 25 | Func func; //用以接收DBC句柄的委托 26 | public HanSenPowerControl(Func fc) 27 | { 28 | func = fc; 29 | InitializeComponent(); 30 | cbxModeSelect.SelectedIndex = 0; 31 | cbx_Local.SelectedIndex = 1; 32 | cbx_Bot.SelectedIndex = 1; 33 | } 34 | #region 汉升电源 35 | 36 | private void btPowerStart_Click(object sender, EventArgs e) 37 | { 38 | if (pwrConnect) 39 | { 40 | Device.CanID = 0; 41 | DBCMessage msg_Pwr_Mode = GetDBCMessageById(Pwr_Mode); 42 | msg_Pwr_Mode.vSignals[0].nValue = cbxModeSelect.SelectedIndex + 1; 43 | msg_Pwr_Mode.vSignals[1].nValue = cbx_Local.SelectedIndex + 1; 44 | msg_Pwr_Mode.vSignals[3].nValue = 0; 45 | //电源开机 46 | if (btPowerStart.Text == "电源开机") 47 | { 48 | msg_Pwr_Mode.vSignals[2].nValue = 1; 49 | DBCSendMsg(msg_Pwr_Mode); 50 | btPowerStart.Text = "电源关机"; 51 | btPowerStart.Symbol = 62091; 52 | } 53 | //电源关机 54 | else 55 | { 56 | msg_Pwr_Mode.vSignals[2].nValue = 0; 57 | DBCSendMsg(msg_Pwr_Mode); 58 | btPowerStart.Text = "电源开机"; 59 | btPowerStart.Symbol = 61764; 60 | } 61 | Device.CanID = 1; 62 | } 63 | } 64 | 65 | private void cbxPramChange_Click(object sender, EventArgs e) 66 | { 67 | if (pwrConnect) 68 | { 69 | Device.CanID = 0; 70 | //参数修改 71 | DBCMessage msg_Pwr_Para = GetDBCMessageById(Pwr_Para); 72 | msg_Pwr_Para.vSignals[0].nValue = 0; 73 | msg_Pwr_Para.vSignals[1].nValue = Convert.ToUInt16(tex_SET_P.Text); 74 | msg_Pwr_Para.vSignals[2].nValue = Convert.ToUInt16(tex_SET_I.Text); 75 | msg_Pwr_Para.vSignals[3].nValue = Convert.ToUInt16(tex_SET_V.Text); 76 | DBCSendMsg(msg_Pwr_Para); 77 | Device.CanID = 1; 78 | UIPage ui = new UIPage(); 79 | ui.ShowSuccessTip("设定电压:" + tex_SET_V.Text + " 限定电流:" + tex_SET_I.Text + " 限定功率:" + tex_SET_P.Text); 80 | } 81 | 82 | } 83 | private void bt_PwrInit_Click(object sender, EventArgs e) 84 | { 85 | 86 | 87 | if (Device.m_bOpen != 1) 88 | { 89 | UIPage ui = new UIPage(); 90 | ui.ShowErrorTip("CAN盒未连接!"); 91 | pwrConnect = false; 92 | } 93 | else 94 | { 95 | if (!pwrConnect) 96 | { 97 | VCI_INIT_CONFIG config = new VCI_INIT_CONFIG(); 98 | CanChanelInit(Device.DevType, cbx_Bot.SelectedItem.ToString(), 0, config); 99 | 100 | if (tex_Data_V.Text=="0") 101 | { 102 | Device.CanID = 0; 103 | DBCMessage msg_Pwr_Mode = GetDBCMessageById(Pwr_Mode); 104 | msg_Pwr_Mode.vSignals[0].nValue = cbxModeSelect.SelectedIndex + 1; 105 | msg_Pwr_Mode.vSignals[1].nValue = cbx_Local.SelectedIndex + 1; 106 | msg_Pwr_Mode.vSignals[2].nValue = 0; 107 | msg_Pwr_Mode.vSignals[3].nValue = 0; 108 | DBCSendMsg(msg_Pwr_Mode); 109 | Device.CanID = 1; 110 | } 111 | getParamSet = true; 112 | pwrConnect = true; 113 | pwrLed.State = UILightState.On; 114 | UIPage ui = new UIPage(); 115 | ui.ShowSuccessTip("连接直流电源通讯成功"); 116 | 117 | } 118 | else 119 | { 120 | pwrConnect = false; 121 | pwrLed.State = UILightState.Off; 122 | UIPage ui = new UIPage(); 123 | ui.ShowErrorTip("断开直流电源通讯成功"); 124 | 125 | } 126 | 127 | 128 | } 129 | timer_recMsg.Enabled = pwrConnect == true ? true : false;//根据设备打开状态控制接收定时器的开关 130 | bt_PwrInit.Text = pwrConnect == true ? "断开连接" : "连接设备"; 131 | bt_PwrInit.Symbol = pwrConnect == true ? 61758 : 61475; 132 | 133 | } 134 | 135 | private void timer_recMsg_Tick(object sender, EventArgs e) 136 | { 137 | //电源柜接收报文,因为他的波特率与整车不符,只能将他放在第一路 138 | UInt32 pwrUrecNum = Device.VCI_GetReceiveNum(Device.DevType, 0, 0);//尚未被读取的帧数 139 | if (pwrUrecNum != 0) //判断是否有帧需要接收 140 | { 141 | UInt32 con_maxlen = 50;//用来接收的帧结构体数组的长度(本次接收的最大帧数,实际返回值小于等于这个值)。 142 | //用来接收的帧结构体VCI_CAN_OBJ数组的首指针。 143 | IntPtr pt_Pwr = Marshal.AllocHGlobal(Marshal.SizeOf(typeof(VCI_CAN_OBJ)) * (Int32)con_maxlen); 144 | UInt32 pwrRecNum = Device.VCI_Receive(Device.DevType, 0, 0, pt_Pwr, con_maxlen, 10);//实际读取到的帧数 145 | 146 | //CAN接收的数据 147 | if (pwrRecNum != 4294967295 && pwrRecNum > 0) 148 | { 149 | //构造LED闪烁来显示CAN数据的接收和发送动作正在进行 150 | ledcount_pwr++; 151 | if (ledcount_pwr >= 7) 152 | { 153 | ledcount_pwr = 0; 154 | pwrLed.State = UILightState.On; 155 | } 156 | else if (ledcount_pwr >= 3) 157 | { 158 | pwrLed.State = UILightState.Off; 159 | 160 | } 161 | 162 | for (UInt32 i = 0; i < pwrRecNum; i++) 163 | { 164 | 165 | VCI_CAN_OBJ rec_can0 = (VCI_CAN_OBJ)Marshal.PtrToStructure((IntPtr)((UInt32)pt_Pwr + i * Marshal.SizeOf(typeof(VCI_CAN_OBJ))), typeof(VCI_CAN_OBJ)); 166 | rec_can0.TimeStamp = 0; //设备接收到某一帧的时间标识。 时间标示从CAN卡上电开始计时,计时单位为0.1ms。 167 | 168 | //将接收到的数据转换成DBCMessage 169 | can_frame obj_old = new can_frame(); 170 | obj_old.data = rec_can0.Data; 171 | obj_old.can_dlc = rec_can0.DataLen; 172 | obj_old.can_id = rec_can0.ID; 173 | IntPtr ptr_msg = Marshal.AllocHGlobal((Marshal.SizeOf(typeof(DBCMessage)))); 174 | IntPtr ptr_frame = Marshal.AllocHGlobal((Marshal.SizeOf(typeof(can_frame)))); 175 | Marshal.StructureToPtr(obj_old, ptr_frame, false); 176 | Method.DBC_Analyse(func(), ptr_frame, ptr_msg); 177 | DBCMessage msg = (DBCMessage)Marshal.PtrToStructure((IntPtr)((UInt32)ptr_msg), typeof(DBCMessage)); 178 | 179 | if (msg.nID == 0x180310F4) 180 | { 181 | tex_Data_P.Text = msg.vSignals[1].nValue.ToString(); 182 | tex_Data_I.Text = msg.vSignals[2].nValue.ToString(); 183 | tex_Data_V.Text = msg.vSignals[3].nValue.ToString(); 184 | 185 | } 186 | 187 | if (msg.nID == 0x180610F4 && getParamSet) 188 | { 189 | tex_SET_P.Text = msg.vSignals[1].nValue.ToString(); 190 | tex_SET_I.Text = msg.vSignals[2].nValue.ToString(); 191 | tex_SET_V.Text = msg.vSignals[3].nValue.ToString(); 192 | getParamSet = false; 193 | } 194 | Marshal.FreeHGlobal(ptr_msg); 195 | Marshal.FreeHGlobal(ptr_frame); 196 | } 197 | Marshal.FreeHGlobal(pt_Pwr); 198 | } 199 | else 200 | { 201 | //判断CAN盒是否正常在线 202 | VCI_ERR_INFO canerror = new VCI_ERR_INFO(); 203 | Device.VCI_ReadErrInfo(Device.DevType, 0, 0, ref canerror); 204 | 205 | 206 | } 207 | } 208 | } 209 | 210 | #endregion 211 | 212 | DBCMessage GetDBCMessageById(uint id) 213 | { 214 | IntPtr ptr_msg = Marshal.AllocHGlobal((Marshal.SizeOf(typeof(DBCMessage)))); 215 | Method.DBC_GetMessageById(func(), id, ptr_msg); 216 | DBCMessage msg = (DBCMessage)Marshal.PtrToStructure((IntPtr)((UInt32)ptr_msg), typeof(DBCMessage)); 217 | Marshal.FreeHGlobal(ptr_msg); 218 | return msg; 219 | } 220 | 221 | void DBCSendMsg(DBCMessage msg) 222 | { 223 | IntPtr ptrpTransmit_data = Marshal.AllocHGlobal((Marshal.SizeOf(typeof(DBCMessage)))); 224 | Marshal.StructureToPtr(msg, ptrpTransmit_data, false); 225 | Method.DBC_Send(func(), ptrpTransmit_data); 226 | Marshal.FreeHGlobal(ptrpTransmit_data); 227 | 228 | } 229 | 230 | /// 231 | /// 初始化并启动CAN通道 232 | /// 233 | /// CAN设备代码,例如USBCAN2就是4 234 | /// 选择的CAN通道波特率 235 | /// 通道索引号 236 | /// 通道参数组名 237 | void CanChanelInit(uint m_devtype, string channelbot, UInt32 canind, VCI_INIT_CONFIG config) 238 | { 239 | config.AccCode = Convert.ToUInt32("0x00000000", 16); 240 | config.AccMask = Convert.ToUInt32("0xFFFFFFFF", 16); 241 | config.Filter = 0; 242 | config.Mode = 0; 243 | switch (channelbot) 244 | { 245 | case "250Kbps": 246 | config.Timing0 = 0x01;//波特率为250时,Timing0=01 Timing1=1C 247 | config.Timing1 = 0x1c; 248 | break; 249 | case "500Kbps": 250 | config.Timing0 = 0x00;//波特率为500时,Timing0=00 Timing1=1C 251 | config.Timing1 = 0x1c; 252 | break; 253 | case "100Kbps": 254 | config.Timing0 = 0x04;//波特率为100时,Timing0=04 Timing1=1C 255 | config.Timing1 = 0x1c; 256 | break; 257 | 258 | } 259 | switch (canind) 260 | { 261 | case 0: 262 | if (Device.VCI_InitCAN(m_devtype, 0, 0, ref config) == 0) 263 | { 264 | UIPage ui = new UIPage(); 265 | ui.ShowWarningTip("初始化CAN1失败"); 266 | } 267 | if (Device.VCI_StartCAN(m_devtype, 0, 0) == 1) //启动CAN通道0 268 | { 269 | pwrLed.State = UILightState.On; 270 | } 271 | else 272 | { 273 | UIPage ui = new UIPage(); 274 | ui.ShowWarningTip("启动CAN1失败"); 275 | } 276 | break; 277 | case 1: 278 | if (Device.VCI_InitCAN(m_devtype, 0, 1, ref config) == 0) 279 | { 280 | UIPage ui = new UIPage(); 281 | ui.ShowWarningTip("初始化CAN2失败"); 282 | } 283 | if (Device.VCI_StartCAN(m_devtype, 0, 1) == 1) //启动CAN通道1 284 | { 285 | pwrLed.State = UILightState.On; 286 | } 287 | else 288 | { 289 | UIPage ui = new UIPage(); 290 | ui.ShowWarningTip("启动CAN2失败"); 291 | } 292 | break; 293 | 294 | } 295 | 296 | } 297 | 298 | 299 | 300 | } 301 | } 302 | -------------------------------------------------------------------------------- /HCTestDemo/Control/HanSenPowerControl.resx: -------------------------------------------------------------------------------- 1 |  2 | 3 | 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 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | 17, 17 122 | 123 | -------------------------------------------------------------------------------- /HCTestDemo/Control/ParameModifica.resx: -------------------------------------------------------------------------------- 1 |  2 | 3 | 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 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | -------------------------------------------------------------------------------- /HCTestDemo/Control/RealTimeSample.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 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 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | -------------------------------------------------------------------------------- /HCTestDemo/Control/WoSenPowerControl.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel; 4 | using System.Drawing; 5 | using System.Data; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | using System.Windows.Forms; 10 | using Modbus.Device; 11 | using Sunny.UI; 12 | using System.IO.Ports; 13 | 14 | namespace HCTestDemo 15 | { 16 | public partial class WoSenPowerControl : UserControl 17 | { 18 | private IModbusMaster master; 19 | int SendNum, recNum; 20 | public WoSenPowerControl() 21 | { 22 | InitializeComponent(); 23 | } 24 | 25 | private void WoSenPowerControl_Load(object sender, EventArgs e) 26 | { 27 | string[] str = System.IO.Ports.SerialPort.GetPortNames(); 28 | if (str == null) 29 | { 30 | MessageBox.Show("本机没有串口!", "Error"); 31 | return; 32 | } 33 | //添加串口项目 34 | foreach (string s in System.IO.Ports.SerialPort.GetPortNames()) 35 | { 36 | //获取有多少个COM口 37 | cb_SerialNum.Items.Add(s); 38 | } 39 | cb_SerialNum.SelectedIndex = cb_SerialNum.Items.Count - 1; 40 | cb_BaudrateSel.SelectedIndex = 3; 41 | cb_DataBitSel.SelectedIndex = 2; 42 | cb_CheckBitSel.SelectedIndex = 0; 43 | cb_StopBitSel.SelectedIndex = 0; 44 | } 45 | 46 | private void bt_OpenSerial_Click(object sender, EventArgs e) 47 | { 48 | if (cb_SerialNum.SelectedItem != null) 49 | { 50 | 51 | if (sp_Com.IsOpen) 52 | { 53 | sp_Com.Close(); 54 | bt_OpenSerial.Text = "打开串口"; 55 | bt_OpenSerial.Symbol = 61475; 56 | Led_Device.State = UILightState.Off; 57 | cb_SerialNum.Enabled = true; 58 | cb_CheckBitSel.Enabled = true; 59 | cb_BaudrateSel.Enabled = true; 60 | cb_DataBitSel.Enabled = true; 61 | cb_StopBitSel.Enabled = true; 62 | } 63 | else 64 | { 65 | //设定串口参数 66 | sp_Com.PortName = cb_SerialNum.Text; //串口名称 67 | sp_Com.BaudRate = int.Parse(cb_BaudrateSel.Text); //波特率 68 | //校验位 69 | if (cb_CheckBitSel.Text == "无") 70 | { 71 | sp_Com.Parity = Parity.None; 72 | } 73 | else if (cb_CheckBitSel.Text == "奇校验") 74 | { 75 | sp_Com.Parity = Parity.Odd; 76 | } 77 | else if (cb_CheckBitSel.Text == "偶校验") 78 | { 79 | sp_Com.Parity = Parity.Even; 80 | } 81 | else if (cb_CheckBitSel.Text == "Mark") 82 | { 83 | sp_Com.Parity = Parity.Mark; 84 | } 85 | else if (cb_CheckBitSel.Text == "空格校验") 86 | { 87 | sp_Com.Parity = Parity.Space; 88 | } 89 | else 90 | { 91 | sp_Com.Parity = Parity.None; 92 | } 93 | //数据位 94 | sp_Com.DataBits = int.Parse(cb_DataBitSel.Text); 95 | //停止位 96 | if (cb_StopBitSel.Text == "1") 97 | { 98 | sp_Com.StopBits = StopBits.One; 99 | } 100 | else if (cb_StopBitSel.Text == "1.5") 101 | { 102 | sp_Com.StopBits = StopBits.OnePointFive; 103 | } 104 | else if (cb_StopBitSel.Text == "2") 105 | { 106 | sp_Com.StopBits = StopBits.Two; 107 | } 108 | else 109 | { 110 | sp_Com.StopBits = StopBits.None; 111 | } 112 | 113 | //创建ModbusRTU主站实例 114 | master = ModbusSerialMaster.CreateRtu(sp_Com); 115 | master.Transport.ReadTimeout = 2000; //读取从站报文回复的延迟 116 | master.Transport.WriteTimeout = 2000; //写入从站报文回复的延迟 117 | master.Transport.Retries = 1; 118 | //打开串口 119 | sp_Com.Open(); 120 | bt_OpenSerial.Text = "关闭串口"; 121 | bt_OpenSerial.Symbol = 61596; 122 | Led_Device.State = UILightState.On; 123 | 124 | 125 | } 126 | } 127 | else 128 | { 129 | MessageBox.Show("端口号为空!"); 130 | } 131 | } 132 | 133 | private void bt_PowerOn_Click(object sender, EventArgs e) 134 | { 135 | if (sp_Com.IsOpen) 136 | { 137 | //电源开机 138 | if (bt_PowerOn.Text == "电源开机") 139 | { 140 | ushort[] data = { 65280 }; 141 | 142 | master.WriteSingleRegister(1, 770, 3); 143 | SendNum ++; 144 | bt_PowerOn.Text = "电源关机"; 145 | bt_PowerOn.Symbol = 62091; 146 | } 147 | //电源关机 148 | else 149 | { 150 | 151 | master.WriteSingleRegister(1, 770, 1); 152 | SendNum ++; 153 | bt_PowerOn.Text = "电源开机"; 154 | bt_PowerOn.Symbol = 61764; 155 | } 156 | } 157 | } 158 | 159 | private void timer_sendReq_Tick(object sender, EventArgs e) 160 | { 161 | if (sp_Com.IsOpen) 162 | { 163 | var retunMsg = master.ReadHoldingRegisters(1, 518, 4);//查询电源状态 164 | dc_V.Text = retunMsg[0].ToString(); 165 | dc_I.Text = retunMsg[2].ToString(); 166 | SendNum ++; 167 | } 168 | } 169 | 170 | private void bt_ParaChange_Click(object sender, EventArgs e) 171 | { 172 | if (sp_Com.IsOpen) 173 | { 174 | ushort[] data=new ushort[7]; 175 | data[0] = Convert.ToUInt16(set_V.Text); 176 | data[3] = Convert.ToUInt16(set_I.Text); 177 | data[6] = Convert.ToUInt16(set_P.Text); 178 | master.WriteMultipleRegisters(1, 898, data); 179 | SendNum ++; 180 | UIPage ui = new UIPage(); 181 | ui.ShowSuccessTip("设定电压:" + set_V.Text + " 限定电流:" + set_I.Text + " 限定功率:" + set_P.Text); 182 | } 183 | } 184 | 185 | private void sp_Com_DataReceived(object sender, SerialDataReceivedEventArgs e) 186 | { 187 | recNum+=1; 188 | if (recNum>int.MaxValue) 189 | { 190 | recNum = 0; 191 | } 192 | } 193 | 194 | 195 | } 196 | } 197 | -------------------------------------------------------------------------------- /HCTestDemo/Control/WoSenPowerControl.resx: -------------------------------------------------------------------------------- 1 |  2 | 3 | 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 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | 17, 17 122 | 123 | 124 | 706, 22 125 | 126 | -------------------------------------------------------------------------------- /HCTestDemo/EVWB双向直流电源通讯协议(1).doc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/EVWB双向直流电源通讯协议(1).doc -------------------------------------------------------------------------------- /HCTestDemo/Form/AnalogKB.Designer.cs: -------------------------------------------------------------------------------- 1 | namespace HCTestDemo 2 | { 3 | partial class AnalogKB 4 | { 5 | /// 6 | /// Required designer variable. 7 | /// 8 | private System.ComponentModel.IContainer components = null; 9 | 10 | /// 11 | /// Clean up any resources being used. 12 | /// 13 | /// true if managed resources should be disposed; otherwise, false. 14 | protected override void Dispose(bool disposing) 15 | { 16 | if (disposing && (components != null)) 17 | { 18 | components.Dispose(); 19 | } 20 | base.Dispose(disposing); 21 | } 22 | 23 | #region Windows Form Designer generated code 24 | 25 | /// 26 | /// Required method for Designer support - do not modify 27 | /// the contents of this method with the code editor. 28 | /// 29 | private void InitializeComponent() 30 | { 31 | this.label2 = new System.Windows.Forms.Label(); 32 | this.label1 = new System.Windows.Forms.Label(); 33 | this.Intercept = new System.Windows.Forms.TextBox(); 34 | this.Slope = new System.Windows.Forms.TextBox(); 35 | this.bt_OK = new System.Windows.Forms.Button(); 36 | this.bt_Cancel = new System.Windows.Forms.Button(); 37 | this.SuspendLayout(); 38 | // 39 | // label2 40 | // 41 | this.label2.AutoSize = true; 42 | this.label2.Location = new System.Drawing.Point(172, 21); 43 | this.label2.Name = "label2"; 44 | this.label2.Size = new System.Drawing.Size(23, 12); 45 | this.label2.TabIndex = 43; 46 | this.label2.Text = "B值"; 47 | // 48 | // label1 49 | // 50 | this.label1.AutoSize = true; 51 | this.label1.Location = new System.Drawing.Point(25, 21); 52 | this.label1.Name = "label1"; 53 | this.label1.Size = new System.Drawing.Size(23, 12); 54 | this.label1.TabIndex = 42; 55 | this.label1.Text = "K值"; 56 | // 57 | // Intercept 58 | // 59 | this.Intercept.Location = new System.Drawing.Point(174, 36); 60 | this.Intercept.Name = "Intercept"; 61 | this.Intercept.Size = new System.Drawing.Size(100, 21); 62 | this.Intercept.TabIndex = 41; 63 | this.Intercept.Text = "0"; 64 | // 65 | // Slope 66 | // 67 | this.Slope.Location = new System.Drawing.Point(27, 36); 68 | this.Slope.Name = "Slope"; 69 | this.Slope.Size = new System.Drawing.Size(100, 21); 70 | this.Slope.TabIndex = 40; 71 | this.Slope.Text = "0"; 72 | // 73 | // bt_OK 74 | // 75 | this.bt_OK.Location = new System.Drawing.Point(27, 95); 76 | this.bt_OK.Name = "bt_OK"; 77 | this.bt_OK.Size = new System.Drawing.Size(75, 23); 78 | this.bt_OK.TabIndex = 0; 79 | this.bt_OK.Text = "确定"; 80 | this.bt_OK.UseVisualStyleBackColor = true; 81 | this.bt_OK.Click += new System.EventHandler(this.button1_Click); 82 | // 83 | // bt_Cancel 84 | // 85 | this.bt_Cancel.Location = new System.Drawing.Point(174, 95); 86 | this.bt_Cancel.Name = "bt_Cancel"; 87 | this.bt_Cancel.Size = new System.Drawing.Size(75, 23); 88 | this.bt_Cancel.TabIndex = 45; 89 | this.bt_Cancel.Text = "取消"; 90 | this.bt_Cancel.UseVisualStyleBackColor = true; 91 | this.bt_Cancel.Click += new System.EventHandler(this.bt_Cancel_Click); 92 | // 93 | // AnalogKB 94 | // 95 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); 96 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 97 | this.ClientSize = new System.Drawing.Size(391, 130); 98 | this.Controls.Add(this.bt_Cancel); 99 | this.Controls.Add(this.bt_OK); 100 | this.Controls.Add(this.label2); 101 | this.Controls.Add(this.label1); 102 | this.Controls.Add(this.Intercept); 103 | this.Controls.Add(this.Slope); 104 | this.Name = "AnalogKB"; 105 | this.Text = "模拟量KB值输入"; 106 | this.ResumeLayout(false); 107 | this.PerformLayout(); 108 | 109 | } 110 | 111 | #endregion 112 | 113 | private System.Windows.Forms.Label label2; 114 | private System.Windows.Forms.Label label1; 115 | private System.Windows.Forms.TextBox Intercept; 116 | private System.Windows.Forms.TextBox Slope; 117 | private System.Windows.Forms.Button bt_OK; 118 | private System.Windows.Forms.Button bt_Cancel; 119 | } 120 | } -------------------------------------------------------------------------------- /HCTestDemo/Form/AnalogKB.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel; 4 | using System.Data; 5 | using System.Drawing; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | using System.Windows.Forms; 10 | 11 | namespace HCTestDemo 12 | { 13 | 14 | public partial class AnalogKB : Form 15 | { 16 | Action func; 17 | public AnalogKB(Action func2) 18 | { 19 | this.func = func2; 20 | InitializeComponent(); 21 | } 22 | public AnalogKB() 23 | { 24 | 25 | InitializeComponent(); 26 | } 27 | 28 | private void button1_Click(object sender, EventArgs e) 29 | { 30 | double[] msg = new double[2]; 31 | func(Convert.ToDouble(Slope.Text), Convert.ToDouble(Intercept.Text)); 32 | this.Close(); 33 | } 34 | 35 | private void bt_Cancel_Click(object sender, EventArgs e) 36 | { 37 | this.Close(); 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /HCTestDemo/Form/AnalogKB.resx: -------------------------------------------------------------------------------- 1 |  2 | 3 | 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 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | -------------------------------------------------------------------------------- /HCTestDemo/Form/ExcelPathNameInit.Designer.cs: -------------------------------------------------------------------------------- 1 | namespace HCTestDemo 2 | { 3 | partial class ExcelPathNameInit 4 | { 5 | /// 6 | /// Required designer variable. 7 | /// 8 | private System.ComponentModel.IContainer components = null; 9 | 10 | /// 11 | /// Clean up any resources being used. 12 | /// 13 | /// true if managed resources should be disposed; otherwise, false. 14 | protected override void Dispose(bool disposing) 15 | { 16 | if (disposing && (components != null)) 17 | { 18 | components.Dispose(); 19 | } 20 | base.Dispose(disposing); 21 | } 22 | 23 | #region Windows Form Designer generated code 24 | 25 | /// 26 | /// Required method for Designer support - do not modify 27 | /// the contents of this method with the code editor. 28 | /// 29 | private void InitializeComponent() 30 | { 31 | System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ExcelPathNameInit)); 32 | this.bt_Confirm = new Sunny.UI.UISymbolButton(); 33 | this.label43 = new System.Windows.Forms.Label(); 34 | this.label44 = new System.Windows.Forms.Label(); 35 | this.fileSaveName = new System.Windows.Forms.TextBox(); 36 | this.SaveInterval = new System.Windows.Forms.TextBox(); 37 | this.label55 = new System.Windows.Forms.Label(); 38 | this.label42 = new System.Windows.Forms.Label(); 39 | this.textBox1 = new System.Windows.Forms.TextBox(); 40 | this.bt_Cancel = new Sunny.UI.UISymbolButton(); 41 | this.SelectFiles = new Sunny.UI.UICheckBoxGroup(); 42 | this.SuspendLayout(); 43 | // 44 | // bt_Confirm 45 | // 46 | this.bt_Confirm.Cursor = System.Windows.Forms.Cursors.Hand; 47 | this.bt_Confirm.Font = new System.Drawing.Font("新宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); 48 | this.bt_Confirm.Location = new System.Drawing.Point(89, 137); 49 | this.bt_Confirm.Margin = new System.Windows.Forms.Padding(2); 50 | this.bt_Confirm.MinimumSize = new System.Drawing.Size(1, 1); 51 | this.bt_Confirm.Name = "bt_Confirm"; 52 | this.bt_Confirm.Size = new System.Drawing.Size(94, 31); 53 | this.bt_Confirm.Style = Sunny.UI.UIStyle.Custom; 54 | this.bt_Confirm.SymbolSize = 30; 55 | this.bt_Confirm.TabIndex = 0; 56 | this.bt_Confirm.Text = "确认"; 57 | this.bt_Confirm.TipsFont = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); 58 | this.bt_Confirm.Click += new System.EventHandler(this.bt_Confirm_Click); 59 | // 60 | // label43 61 | // 62 | this.label43.AutoSize = true; 63 | this.label43.Location = new System.Drawing.Point(11, 20); 64 | this.label43.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); 65 | this.label43.Name = "label43"; 66 | this.label43.Size = new System.Drawing.Size(65, 12); 67 | this.label43.TabIndex = 71; 68 | this.label43.Text = "保存间隔:"; 69 | // 70 | // label44 71 | // 72 | this.label44.AutoSize = true; 73 | this.label44.Location = new System.Drawing.Point(10, 57); 74 | this.label44.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); 75 | this.label44.Name = "label44"; 76 | this.label44.Size = new System.Drawing.Size(77, 12); 77 | this.label44.TabIndex = 73; 78 | this.label44.Text = "保存文件名:"; 79 | // 80 | // fileSaveName 81 | // 82 | this.fileSaveName.Location = new System.Drawing.Point(89, 54); 83 | this.fileSaveName.Margin = new System.Windows.Forms.Padding(2); 84 | this.fileSaveName.Name = "fileSaveName"; 85 | this.fileSaveName.Size = new System.Drawing.Size(157, 21); 86 | this.fileSaveName.TabIndex = 68; 87 | // 88 | // SaveInterval 89 | // 90 | this.SaveInterval.Location = new System.Drawing.Point(89, 17); 91 | this.SaveInterval.Margin = new System.Windows.Forms.Padding(2); 92 | this.SaveInterval.Name = "SaveInterval"; 93 | this.SaveInterval.Size = new System.Drawing.Size(46, 21); 94 | this.SaveInterval.TabIndex = 72; 95 | this.SaveInterval.Text = "100"; 96 | this.SaveInterval.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; 97 | // 98 | // label55 99 | // 100 | this.label55.AutoSize = true; 101 | this.label55.Font = new System.Drawing.Font("宋体", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); 102 | this.label55.Location = new System.Drawing.Point(137, 20); 103 | this.label55.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); 104 | this.label55.Name = "label55"; 105 | this.label55.Size = new System.Drawing.Size(21, 14); 106 | this.label55.TabIndex = 74; 107 | this.label55.Text = "ms"; 108 | // 109 | // label42 110 | // 111 | this.label42.AutoSize = true; 112 | this.label42.Location = new System.Drawing.Point(11, 96); 113 | this.label42.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); 114 | this.label42.Name = "label42"; 115 | this.label42.Size = new System.Drawing.Size(65, 12); 116 | this.label42.TabIndex = 69; 117 | this.label42.Text = "保存路径:"; 118 | // 119 | // textBox1 120 | // 121 | this.textBox1.Location = new System.Drawing.Point(89, 93); 122 | this.textBox1.Margin = new System.Windows.Forms.Padding(2); 123 | this.textBox1.Name = "textBox1"; 124 | this.textBox1.Size = new System.Drawing.Size(324, 21); 125 | this.textBox1.TabIndex = 70; 126 | // 127 | // bt_Cancel 128 | // 129 | this.bt_Cancel.Cursor = System.Windows.Forms.Cursors.Hand; 130 | this.bt_Cancel.DialogResult = System.Windows.Forms.DialogResult.Cancel; 131 | this.bt_Cancel.Font = new System.Drawing.Font("新宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); 132 | this.bt_Cancel.Location = new System.Drawing.Point(230, 137); 133 | this.bt_Cancel.Margin = new System.Windows.Forms.Padding(2); 134 | this.bt_Cancel.MinimumSize = new System.Drawing.Size(1, 1); 135 | this.bt_Cancel.Name = "bt_Cancel"; 136 | this.bt_Cancel.Size = new System.Drawing.Size(94, 31); 137 | this.bt_Cancel.Style = Sunny.UI.UIStyle.Custom; 138 | this.bt_Cancel.Symbol = 61453; 139 | this.bt_Cancel.SymbolSize = 30; 140 | this.bt_Cancel.TabIndex = 75; 141 | this.bt_Cancel.Text = "取消"; 142 | this.bt_Cancel.TipsFont = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); 143 | this.bt_Cancel.Click += new System.EventHandler(this.bt_Cancel_Click); 144 | // 145 | // SelectFiles 146 | // 147 | this.SelectFiles.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); 148 | this.SelectFiles.Items.AddRange(new object[] { 149 | "调试数据", 150 | "整车数据", 151 | "功率分析仪"}); 152 | this.SelectFiles.Location = new System.Drawing.Point(431, 1); 153 | this.SelectFiles.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); 154 | this.SelectFiles.MinimumSize = new System.Drawing.Size(1, 1); 155 | this.SelectFiles.Name = "SelectFiles"; 156 | this.SelectFiles.Padding = new System.Windows.Forms.Padding(0, 32, 0, 0); 157 | this.SelectFiles.SelectedIndexes = ((System.Collections.Generic.List)(resources.GetObject("SelectFiles.SelectedIndexes"))); 158 | this.SelectFiles.Size = new System.Drawing.Size(135, 167); 159 | this.SelectFiles.TabIndex = 76; 160 | this.SelectFiles.Text = "保存内容"; 161 | this.SelectFiles.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter; 162 | // 163 | // ExcelPathNameInit 164 | // 165 | this.AcceptButton = this.bt_Confirm; 166 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); 167 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 168 | this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(243)))), ((int)(((byte)(255))))); 169 | this.CancelButton = this.bt_Cancel; 170 | this.ClientSize = new System.Drawing.Size(594, 180); 171 | this.Controls.Add(this.SelectFiles); 172 | this.Controls.Add(this.bt_Cancel); 173 | this.Controls.Add(this.bt_Confirm); 174 | this.Controls.Add(this.label43); 175 | this.Controls.Add(this.label44); 176 | this.Controls.Add(this.fileSaveName); 177 | this.Controls.Add(this.SaveInterval); 178 | this.Controls.Add(this.label55); 179 | this.Controls.Add(this.label42); 180 | this.Controls.Add(this.textBox1); 181 | this.Name = "ExcelPathNameInit"; 182 | this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; 183 | this.Text = "EXCEL保存初始化"; 184 | this.Load += new System.EventHandler(this.ExcelPathNameInit_Load); 185 | this.ResumeLayout(false); 186 | this.PerformLayout(); 187 | 188 | } 189 | 190 | #endregion 191 | 192 | private Sunny.UI.UISymbolButton bt_Confirm; 193 | private System.Windows.Forms.Label label43; 194 | private System.Windows.Forms.Label label44; 195 | private System.Windows.Forms.TextBox fileSaveName; 196 | private System.Windows.Forms.TextBox SaveInterval; 197 | private System.Windows.Forms.Label label55; 198 | private System.Windows.Forms.Label label42; 199 | private System.Windows.Forms.TextBox textBox1; 200 | private Sunny.UI.UISymbolButton bt_Cancel; 201 | private Sunny.UI.UICheckBoxGroup SelectFiles; 202 | } 203 | } -------------------------------------------------------------------------------- /HCTestDemo/Form/ExcelPathNameInit.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel; 4 | using System.Data; 5 | using System.Drawing; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | using System.Windows.Forms; 10 | 11 | namespace HCTestDemo 12 | { 13 | public delegate void SaveMsgInitDelegate(string filepath, int time, List list, bool cmd); 14 | public partial class ExcelPathNameInit : Form 15 | { 16 | SaveMsgInitDelegate _saveMsgInit; 17 | string path; 18 | 19 | public ExcelPathNameInit(SaveMsgInitDelegate saveMsgInit,string path) 20 | { 21 | InitializeComponent(); 22 | this._saveMsgInit = saveMsgInit; 23 | this.path = path; 24 | } 25 | public ExcelPathNameInit() 26 | { 27 | InitializeComponent(); 28 | 29 | } 30 | 31 | 32 | private void ExcelPathNameInit_Load(object sender, EventArgs e) 33 | { 34 | 35 | fileSaveName.Text = DateTime.Now.ToString("HHmmss"); 36 | textBox1.Text =System.IO.Path.Combine(path, (DateTime.Now.ToString("HHmmss") + ".xlsx")); 37 | SelectFiles.SelectAll(); 38 | 39 | } 40 | 41 | private void bt_Confirm_Click(object sender, EventArgs e) 42 | { 43 | List selectIndex = new List(); ; 44 | selectIndex.AddRange(SelectFiles.SelectedIndexes); 45 | textBox1.Text = System.IO.Path.Combine(path, (fileSaveName.Text + ".xlsx")); 46 | int saveInterval; 47 | if (int.TryParse(SaveInterval.Text, out saveInterval)) 48 | { 49 | if (SelectFiles.SelectedIndexes.Count != 0) 50 | { 51 | _saveMsgInit(textBox1.Text, saveInterval, selectIndex, true); 52 | this.Close(); 53 | } 54 | else 55 | { 56 | MessageBox.Show("未选择保存项目!"); 57 | 58 | } 59 | 60 | } 61 | else 62 | { 63 | MessageBox.Show("保存间隔格式不对!"); 64 | } 65 | 66 | } 67 | 68 | private void bt_Cancel_Click(object sender, EventArgs e) 69 | { 70 | List selectIndex = new List(); ; 71 | selectIndex.AddRange(SelectFiles.SelectedIndexes); 72 | _saveMsgInit(textBox1.Text, 100, selectIndex, false); 73 | this.Close(); 74 | 75 | } 76 | 77 | 78 | 79 | 80 | } 81 | } 82 | -------------------------------------------------------------------------------- /HCTestDemo/Form/ExcelPathNameInit.resx: -------------------------------------------------------------------------------- 1 |  2 | 3 | 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 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | 122 | AAEAAAD/////AQAAAAAAAAAMAgAAAJoBbXNjb3JsaWIsIFZlcnNpb249NC4wLjAuMCwgQ3VsdHVyZT1u 123 | ZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj1iNzdhNWM1NjE5MzRlMDg5XV0sIG1zY29ybGliLCBWZXJzaW9u 124 | PTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjc3YTVjNTYxOTM0ZTA4OQUB 125 | AAAAL1N5c3RlbS5Db2xsZWN0aW9ucy5HZW5lcmljLkxpc3RgMVtbU3lzdGVtLkludDMyAwAAAAZfaXRl 126 | bXMFX3NpemUIX3ZlcnNpb24HAAAICAgCAAAACQMAAAAAAAAAAAAAAA8DAAAAAAAAAAgL 127 | 128 | 129 | -------------------------------------------------------------------------------- /HCTestDemo/Form/HC_L1.resx: -------------------------------------------------------------------------------- 1 |  2 | 3 | 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 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | 620, 15 122 | 123 | 124 | 737, 15 125 | 126 | -------------------------------------------------------------------------------- /HCTestDemo/Form/LinearReg.Designer.cs: -------------------------------------------------------------------------------- 1 | namespace HCTestDemo 2 | { 3 | partial class LinearReg 4 | { 5 | /// 6 | /// Required designer variable. 7 | /// 8 | private System.ComponentModel.IContainer components = null; 9 | 10 | /// 11 | /// Clean up any resources being used. 12 | /// 13 | /// true if managed resources should be disposed; otherwise, false. 14 | protected override void Dispose(bool disposing) 15 | { 16 | if (disposing && (components != null)) 17 | { 18 | components.Dispose(); 19 | } 20 | base.Dispose(disposing); 21 | } 22 | 23 | #region Windows Form Designer generated code 24 | 25 | /// 26 | /// Required method for Designer support - do not modify 27 | /// the contents of this method with the code editor. 28 | /// 29 | private void InitializeComponent() 30 | { 31 | System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea4 = new System.Windows.Forms.DataVisualization.Charting.ChartArea(); 32 | System.Windows.Forms.DataVisualization.Charting.Legend legend4 = new System.Windows.Forms.DataVisualization.Charting.Legend(); 33 | System.Windows.Forms.DataVisualization.Charting.Series series4 = new System.Windows.Forms.DataVisualization.Charting.Series(); 34 | this.chartLabTrend = new System.Windows.Forms.DataVisualization.Charting.Chart(); 35 | this.Slope = new System.Windows.Forms.TextBox(); 36 | this.Intercept = new System.Windows.Forms.TextBox(); 37 | this.label1 = new System.Windows.Forms.Label(); 38 | this.label2 = new System.Windows.Forms.Label(); 39 | ((System.ComponentModel.ISupportInitialize)(this.chartLabTrend)).BeginInit(); 40 | this.SuspendLayout(); 41 | // 42 | // chartLabTrend 43 | // 44 | chartArea4.Name = "ChartArea1"; 45 | this.chartLabTrend.ChartAreas.Add(chartArea4); 46 | legend4.Name = "Legend1"; 47 | this.chartLabTrend.Legends.Add(legend4); 48 | this.chartLabTrend.Location = new System.Drawing.Point(12, 12); 49 | this.chartLabTrend.Name = "chartLabTrend"; 50 | series4.ChartArea = "ChartArea1"; 51 | series4.Legend = "Legend1"; 52 | series4.Name = "Series1"; 53 | this.chartLabTrend.Series.Add(series4); 54 | this.chartLabTrend.Size = new System.Drawing.Size(613, 274); 55 | this.chartLabTrend.TabIndex = 0; 56 | // 57 | // Slope 58 | // 59 | this.Slope.Location = new System.Drawing.Point(73, 307); 60 | this.Slope.Name = "Slope"; 61 | this.Slope.Size = new System.Drawing.Size(100, 21); 62 | this.Slope.TabIndex = 36; 63 | // 64 | // Intercept 65 | // 66 | this.Intercept.Location = new System.Drawing.Point(286, 307); 67 | this.Intercept.Name = "Intercept"; 68 | this.Intercept.Size = new System.Drawing.Size(100, 21); 69 | this.Intercept.TabIndex = 37; 70 | // 71 | // label1 72 | // 73 | this.label1.AutoSize = true; 74 | this.label1.Location = new System.Drawing.Point(10, 310); 75 | this.label1.Name = "label1"; 76 | this.label1.Size = new System.Drawing.Size(23, 12); 77 | this.label1.TabIndex = 38; 78 | this.label1.Text = "K值"; 79 | // 80 | // label2 81 | // 82 | this.label2.AutoSize = true; 83 | this.label2.Location = new System.Drawing.Point(225, 307); 84 | this.label2.Name = "label2"; 85 | this.label2.Size = new System.Drawing.Size(23, 12); 86 | this.label2.TabIndex = 39; 87 | this.label2.Text = "B值"; 88 | // 89 | // LinearReg 90 | // 91 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); 92 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 93 | this.ClientSize = new System.Drawing.Size(648, 339); 94 | this.Controls.Add(this.label2); 95 | this.Controls.Add(this.label1); 96 | this.Controls.Add(this.Intercept); 97 | this.Controls.Add(this.Slope); 98 | this.Controls.Add(this.chartLabTrend); 99 | this.Name = "LinearReg"; 100 | this.Text = "LinearReg"; 101 | this.Load += new System.EventHandler(this.LinearReg_Load); 102 | ((System.ComponentModel.ISupportInitialize)(this.chartLabTrend)).EndInit(); 103 | this.ResumeLayout(false); 104 | this.PerformLayout(); 105 | 106 | } 107 | 108 | #endregion 109 | 110 | private System.Windows.Forms.DataVisualization.Charting.Chart chartLabTrend; 111 | private System.Windows.Forms.TextBox Slope; 112 | private System.Windows.Forms.TextBox Intercept; 113 | private System.Windows.Forms.Label label1; 114 | private System.Windows.Forms.Label label2; 115 | } 116 | } -------------------------------------------------------------------------------- /HCTestDemo/Form/LinearReg.cs: -------------------------------------------------------------------------------- 1 | using NPOI.HSSF.UserModel; 2 | using NPOI.SS.UserModel; 3 | using NPOI.XSSF.UserModel; 4 | using Sunny.UI; 5 | using System; 6 | using System.Collections.Generic; 7 | using System.ComponentModel; 8 | using System.Data; 9 | using System.Drawing; 10 | using System.IO; 11 | using System.Linq; 12 | using System.Text; 13 | using System.Threading.Tasks; 14 | using System.Windows.Forms; 15 | using System.Windows.Forms.DataVisualization.Charting; 16 | 17 | namespace HCTestDemo 18 | { 19 | public partial class LinearReg : Form 20 | { 21 | public LinearReg() 22 | { 23 | InitializeComponent(); 24 | } 25 | 26 | private void LinearReg_Load(object sender, EventArgs e) 27 | { 28 | IWorkbook readBook; 29 | ISheet readSheet; 30 | IRow readIrow; 31 | ICell cellY; 32 | ICell cellX; 33 | List xYvalue = new List(); 34 | List yYvalue = new List(); 35 | 36 | OpenFileDialog fileDlg = new OpenFileDialog(); 37 | fileDlg.Filter = "Excel文件|*.xlsx"; 38 | fileDlg.RestoreDirectory = true; 39 | fileDlg.InitialDirectory = Application.StartupPath; 40 | fileDlg.FilterIndex = 1; 41 | 42 | if (fileDlg.ShowDialog() == DialogResult.OK) 43 | { 44 | using (FileStream fs = File.OpenRead(fileDlg.FileName)) 45 | { 46 | //这里需要根据文件名格式判断一下 47 | //HSSF只能读取xls的 48 | //XSSF只能读取xlsx格式的 49 | readBook = new XSSFWorkbook(fs); 50 | if (Path.GetExtension(fs.Name) == ".xls") 51 | { 52 | readBook = new HSSFWorkbook(fs); 53 | } 54 | readSheet = readBook.GetSheetAt(0); 55 | for (int j = 1; j <= readSheet.LastRowNum; j++) 56 | { 57 | //得到当前的行 58 | readIrow = readSheet.GetRow(j); 59 | //将每行的第一和第二列赋值给两个list 60 | cellX = readIrow.GetCell(0, MissingCellPolicy.CREATE_NULL_AS_BLANK); 61 | cellY = readIrow.GetCell(1, MissingCellPolicy.CREATE_NULL_AS_BLANK); 62 | if (readIrow.Cells[1].ToString() != "") 63 | { 64 | xYvalue.Add(Convert.ToDouble(cellX.ToString())); 65 | yYvalue.Add(Convert.ToDouble(cellY.ToString())); 66 | } 67 | } 68 | 69 | } 70 | double molecule = 0;//分子 71 | double denominator = 0;//分母 72 | if (xYvalue.Count == yYvalue.Count) 73 | { 74 | 75 | for (int i = 0; i < xYvalue.Count; i++) 76 | { 77 | molecule += (xYvalue[i] - xYvalue.Average()) * (yYvalue[i] - yYvalue.Average()); 78 | denominator += (xYvalue[i] - xYvalue.Average()) * (xYvalue[i] - xYvalue.Average()); 79 | } 80 | Slope.Text = (molecule / denominator).ToString("f6");//斜率 81 | Intercept.Text = (yYvalue.Average() - (molecule / denominator) * xYvalue.Average()).ToString("f6");//截距 82 | } 83 | else 84 | { 85 | UIPage ui = new UIPage(); 86 | ui.ShowWarningTip("数据输入有误,个数不对应!"); 87 | return; 88 | 89 | } 90 | #region 画点 91 | chartLabTrend.ChartAreas[0].AxisX.CustomLabels.Clear(); 92 | chartLabTrend.ChartAreas[0].AxisX.MajorGrid.Enabled = false; 93 | chartLabTrend.ChartAreas[0].AxisY.MajorGrid.Enabled = false; 94 | List lx = new List(); 95 | List l1 = new List(); 96 | for (int i = 1; i <= xYvalue.Count; i++) 97 | { 98 | CustomLabel label1 = new CustomLabel(); 99 | label1.Text = xYvalue[i - 1].ToString(); 100 | label1.ToPosition = i * 2; 101 | label1.GridTicks = GridTickTypes.Gridline; 102 | chartLabTrend.ChartAreas[0].AxisX.CustomLabels.Add(label1); 103 | lx.Add(i); 104 | l1.Add(yYvalue[i - 1]); 105 | } 106 | chartLabTrend.Series[0].ChartType = SeriesChartType.Point; //设置为点位 107 | chartLabTrend.Series[0].Name = "线性回归图"; 108 | chartLabTrend.Series[0].Points.DataBindXY(lx, l1); 109 | #endregion 110 | 111 | 112 | } 113 | 114 | 115 | } 116 | } 117 | } 118 | -------------------------------------------------------------------------------- /HCTestDemo/Form/LinearReg.resx: -------------------------------------------------------------------------------- 1 |  2 | 3 | 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 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | -------------------------------------------------------------------------------- /HCTestDemo/Form/LoadFrm.Designer.cs: -------------------------------------------------------------------------------- 1 | namespace HCTestDemo 2 | { 3 | partial class LoadFrm 4 | { 5 | /// 6 | /// Required designer variable. 7 | /// 8 | private System.ComponentModel.IContainer components = null; 9 | 10 | /// 11 | /// Clean up any resources being used. 12 | /// 13 | /// true if managed resources should be disposed; otherwise, false. 14 | protected override void Dispose(bool disposing) 15 | { 16 | if (disposing && (components != null)) 17 | { 18 | components.Dispose(); 19 | } 20 | base.Dispose(disposing); 21 | } 22 | 23 | #region Windows Form Designer generated code 24 | 25 | /// 26 | /// Required method for Designer support - do not modify 27 | /// the contents of this method with the code editor. 28 | /// 29 | private void InitializeComponent() 30 | { 31 | System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(LoadFrm)); 32 | this.panel1 = new System.Windows.Forms.Panel(); 33 | this.lbx_TestForm = new System.Windows.Forms.ListBox(); 34 | this.label1 = new System.Windows.Forms.Label(); 35 | this.bt_OpenTest = new Sunny.UI.UISymbolButton(); 36 | this.label2 = new System.Windows.Forms.Label(); 37 | this.label3 = new System.Windows.Forms.Label(); 38 | this.SuspendLayout(); 39 | // 40 | // panel1 41 | // 42 | this.panel1.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("panel1.BackgroundImage"))); 43 | this.panel1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom; 44 | this.panel1.Location = new System.Drawing.Point(3, 1); 45 | this.panel1.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); 46 | this.panel1.Name = "panel1"; 47 | this.panel1.Size = new System.Drawing.Size(409, 211); 48 | this.panel1.TabIndex = 0; 49 | // 50 | // lbx_TestForm 51 | // 52 | this.lbx_TestForm.FormattingEnabled = true; 53 | this.lbx_TestForm.ItemHeight = 18; 54 | this.lbx_TestForm.Location = new System.Drawing.Point(441, 55); 55 | this.lbx_TestForm.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); 56 | this.lbx_TestForm.Name = "lbx_TestForm"; 57 | this.lbx_TestForm.Size = new System.Drawing.Size(311, 454); 58 | this.lbx_TestForm.TabIndex = 1; 59 | this.lbx_TestForm.SelectedIndexChanged += new System.EventHandler(this.lbx_TestForm_SelectedIndexChanged); 60 | // 61 | // label1 62 | // 63 | this.label1.AutoSize = true; 64 | this.label1.Font = new System.Drawing.Font("宋体", 15F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); 65 | this.label1.Location = new System.Drawing.Point(436, 20); 66 | this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); 67 | this.label1.Name = "label1"; 68 | this.label1.Size = new System.Drawing.Size(193, 30); 69 | this.label1.TabIndex = 2; 70 | this.label1.Text = "测试项目集合"; 71 | // 72 | // bt_OpenTest 73 | // 74 | this.bt_OpenTest.Cursor = System.Windows.Forms.Cursors.Hand; 75 | this.bt_OpenTest.FillColor = System.Drawing.Color.Teal; 76 | this.bt_OpenTest.FillHoverColor = System.Drawing.Color.DarkSlateGray; 77 | this.bt_OpenTest.FillPressColor = System.Drawing.Color.DarkSlateGray; 78 | this.bt_OpenTest.FillSelectedColor = System.Drawing.Color.DarkSlateGray; 79 | this.bt_OpenTest.Font = new System.Drawing.Font("新宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); 80 | this.bt_OpenTest.Location = new System.Drawing.Point(37, 431); 81 | this.bt_OpenTest.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); 82 | this.bt_OpenTest.MinimumSize = new System.Drawing.Size(1, 1); 83 | this.bt_OpenTest.Name = "bt_OpenTest"; 84 | this.bt_OpenTest.RectColor = System.Drawing.Color.Teal; 85 | this.bt_OpenTest.RectHoverColor = System.Drawing.Color.DarkSlateGray; 86 | this.bt_OpenTest.RectPressColor = System.Drawing.Color.DarkSlateGray; 87 | this.bt_OpenTest.RectSelectedColor = System.Drawing.Color.DarkSlateGray; 88 | this.bt_OpenTest.Size = new System.Drawing.Size(141, 47); 89 | this.bt_OpenTest.Style = Sunny.UI.UIStyle.Custom; 90 | this.bt_OpenTest.StyleCustomMode = true; 91 | this.bt_OpenTest.Symbol = 61912; 92 | this.bt_OpenTest.SymbolSize = 28; 93 | this.bt_OpenTest.TabIndex = 32; 94 | this.bt_OpenTest.Text = "打开测试项"; 95 | this.bt_OpenTest.TipsFont = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); 96 | this.bt_OpenTest.Click += new System.EventHandler(this.bt_OpenTest_Click); 97 | // 98 | // label2 99 | // 100 | this.label2.AutoSize = true; 101 | this.label2.Font = new System.Drawing.Font("宋体", 15F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); 102 | this.label2.Location = new System.Drawing.Point(31, 292); 103 | this.label2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); 104 | this.label2.Name = "label2"; 105 | this.label2.Size = new System.Drawing.Size(148, 30); 106 | this.label2.TabIndex = 33; 107 | this.label2.Text = "选择项目:"; 108 | // 109 | // label3 110 | // 111 | this.label3.AutoSize = true; 112 | this.label3.Font = new System.Drawing.Font("宋体", 15F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); 113 | this.label3.Location = new System.Drawing.Point(51, 359); 114 | this.label3.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); 115 | this.label3.Name = "label3"; 116 | this.label3.Size = new System.Drawing.Size(148, 30); 117 | this.label3.TabIndex = 34; 118 | this.label3.Text = "选择项目:"; 119 | // 120 | // LoadFrm 121 | // 122 | this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 18F); 123 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 124 | this.AutoSize = true; 125 | this.BackColor = System.Drawing.Color.White; 126 | this.ClientSize = new System.Drawing.Size(783, 545); 127 | this.Controls.Add(this.label3); 128 | this.Controls.Add(this.label2); 129 | this.Controls.Add(this.bt_OpenTest); 130 | this.Controls.Add(this.label1); 131 | this.Controls.Add(this.lbx_TestForm); 132 | this.Controls.Add(this.panel1); 133 | this.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); 134 | this.Name = "LoadFrm"; 135 | this.Text = "测试项目选择"; 136 | this.Load += new System.EventHandler(this.LoadFrm_Load); 137 | this.ResumeLayout(false); 138 | this.PerformLayout(); 139 | 140 | } 141 | 142 | #endregion 143 | 144 | private System.Windows.Forms.Panel panel1; 145 | private System.Windows.Forms.ListBox lbx_TestForm; 146 | private System.Windows.Forms.Label label1; 147 | private Sunny.UI.UISymbolButton bt_OpenTest; 148 | private System.Windows.Forms.Label label2; 149 | private System.Windows.Forms.Label label3; 150 | } 151 | } -------------------------------------------------------------------------------- /HCTestDemo/Form/LoadFrm.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel; 4 | using System.Data; 5 | using System.Drawing; 6 | using System.Linq; 7 | using System.Reflection; 8 | using System.Text; 9 | using System.Threading.Tasks; 10 | using System.Windows.Forms; 11 | 12 | namespace HCTestDemo 13 | { 14 | public partial class LoadFrm : Form 15 | { 16 | public LoadFrm() 17 | { 18 | InitializeComponent(); 19 | } 20 | 21 | private void LoadFrm_Load(object sender, EventArgs e) 22 | { 23 | List names = new List(); 24 | foreach (var type in this.GetType().Assembly.GetTypes()) 25 | { 26 | if (typeof(Form).IsAssignableFrom(type)) 27 | { 28 | try 29 | { 30 | using (Form form = Activator.CreateInstance(type) as Form) 31 | { 32 | names.Add(form.Name); //names.Add(form.name) 33 | lbx_TestForm.Items.Add(form.Name); 34 | } 35 | } 36 | catch 37 | { 38 | throw new Exception(string.Format("类型为 {0} 的窗体没有无参的构造函数,无法获取其名称", type)); 39 | } 40 | } 41 | } 42 | //从items里去除一些非项目主界面的窗体名称 43 | lbx_TestForm.Items.Remove("ExcelPathNameInit"); 44 | lbx_TestForm.Items.Remove("LoadFrm"); 45 | lbx_TestForm.Items.Remove("LinearReg"); 46 | lbx_TestForm.Items.Remove("AnalogKB"); 47 | lbx_TestForm.SelectedIndex = 0; 48 | lbx_TestForm.Font = new Font(this.Font.FontFamily, 15);//20改成你想要的字体大小; 49 | } 50 | 51 | private void bt_OpenTest_Click(object sender, EventArgs e) 52 | { 53 | //反射调用窗体名打开窗体 54 | Assembly assembly = Assembly.GetExecutingAssembly(); 55 | 56 | //反射调用有参的构造方法 57 | //将关闭主测试程序命令传给测试项目,也可以将方法,参数等传递 58 | object[] ObjArray = new object[1]; 59 | ObjArray[0] = new Action(() => { this.Show(); }); 60 | Form form = assembly.CreateInstance("HCTestDemo." + lbx_TestForm.SelectedItem.ToString(), true, BindingFlags.Default, null, ObjArray, null, null) as Form; 61 | 62 | //反射调用无参的构造方法 63 | //Form form = (Form)assembly.CreateInstance("HCTestDemo." + lbx_TestForm.SelectedItem.ToString()); 64 | 65 | //打开选中的项目窗体 66 | form.Show(); 67 | //隐藏主窗体 68 | this.Hide(); 69 | } 70 | 71 | private void lbx_TestForm_SelectedIndexChanged(object sender, EventArgs e) 72 | { 73 | 74 | //反射调用窗体名打开窗体 75 | Assembly assembly = Assembly.GetExecutingAssembly(); 76 | //反射调用无参的构造方法 77 | Form form = (Form)assembly.CreateInstance("HCTestDemo." + lbx_TestForm.SelectedItem.ToString()); 78 | label3.Text = form.Text; 79 | } 80 | } 81 | } 82 | -------------------------------------------------------------------------------- /HCTestDemo/HCTestDemo.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | Debug 6 | AnyCPU 7 | {CFD0B514-EB16-4B2A-B3B8-727F8E5EE738} 8 | WinExe 9 | Properties 10 | HCTestDemo 11 | HCTestDemo 12 | v4.5 13 | 512 14 | false 15 | 发布\ 16 | true 17 | Disk 18 | false 19 | Foreground 20 | 7 21 | Days 22 | false 23 | false 24 | true 25 | 0 26 | 1.0.0.%2a 27 | false 28 | true 29 | 30 | 31 | AnyCPU 32 | true 33 | full 34 | false 35 | bin\Debug\ 36 | DEBUG;TRACE 37 | prompt 38 | 4 39 | true 40 | true 41 | 42 | 43 | AnyCPU 44 | pdbonly 45 | true 46 | bin\Release\ 47 | TRACE 48 | prompt 49 | 4 50 | 51 | 52 | dbc_demo.ico 53 | 54 | 55 | true 56 | 57 | 58 | 59 | Lib\ICSharpCode.SharpZipLib.dll 60 | False 61 | 62 | 63 | Lib\NModbus4.dll 64 | False 65 | 66 | 67 | Lib\NPOI.dll 68 | False 69 | 70 | 71 | Lib\NPOI.OOXML.dll 72 | False 73 | 74 | 75 | Lib\NPOI.OpenXml4Net.dll 76 | False 77 | 78 | 79 | Lib\SunnyUI.dll 80 | False 81 | 82 | 83 | Lib\SunnyUI.Common.dll 84 | False 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | Lib\TmctlAPINet.dll 99 | False 100 | 101 | 102 | 103 | 104 | UserControl 105 | 106 | 107 | BootLoadBinFile.cs 108 | 109 | 110 | UserControl 111 | 112 | 113 | UserControl 114 | 115 | 116 | WoSenPowerControl.cs 117 | 118 | 119 | UserControl 120 | 121 | 122 | HanSenPowerControl.cs 123 | 124 | 125 | Form 126 | 127 | 128 | AnalogKB.cs 129 | 130 | 131 | Form 132 | 133 | 134 | ExcelPathNameInit.cs 135 | 136 | 137 | UserControl 138 | 139 | 140 | ParameModifica.cs 141 | 142 | 143 | Form 144 | 145 | 146 | HC_3kw_Pump.cs 147 | 148 | 149 | Form 150 | 151 | 152 | HC_5kw_Fan.cs 153 | 154 | 155 | Form 156 | 157 | 158 | HC_L1.cs 159 | 160 | 161 | Form 162 | 163 | 164 | LinearReg.cs 165 | 166 | 167 | Form 168 | 169 | 170 | LoadFrm.cs 171 | 172 | 173 | Form 174 | 175 | 176 | HC_2p5kw.cs 177 | 178 | 179 | Form 180 | 181 | 182 | HC_4p5_Fan.cs 183 | 184 | 185 | Form 186 | 187 | 188 | HC_M2A_Pump.cs 189 | 190 | 191 | Form 192 | 193 | 194 | HC_800w.cs 195 | 196 | 197 | Form 198 | 199 | 200 | HC_23KW_PowerSta.cs 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | BootLoadBinFile.cs 211 | 212 | 213 | RealTimeSample.cs 214 | 215 | 216 | AnalogKB.cs 217 | 218 | 219 | ExcelPathNameInit.cs 220 | 221 | 222 | HC_3kw_Pump.cs 223 | 224 | 225 | HC_5kw_Fan.cs 226 | 227 | 228 | HC_L1.cs 229 | 230 | 231 | LinearReg.cs 232 | 233 | 234 | LoadFrm.cs 235 | 236 | 237 | WoSenPowerControl.cs 238 | 239 | 240 | HanSenPowerControl.cs 241 | 242 | 243 | ParameModifica.cs 244 | 245 | 246 | HC_2p5kw.cs 247 | 248 | 249 | HC_4p5_Fan.cs 250 | 251 | 252 | HC_M2A_Pump.cs 253 | 254 | 255 | HC_800w.cs 256 | 257 | 258 | HC_23KW_PowerSta.cs 259 | 260 | 261 | ResXFileCodeGenerator 262 | Resources.Designer.cs 263 | Designer 264 | 265 | 266 | True 267 | Resources.resx 268 | 269 | 270 | SettingsSingleFileGenerator 271 | Settings.Designer.cs 272 | 273 | 274 | True 275 | Settings.settings 276 | True 277 | 278 | 279 | 280 | 281 | 282 | 283 | 284 | False 285 | Microsoft .NET Framework 4.5 %28x86 和 x64%29 286 | true 287 | 288 | 289 | False 290 | .NET Framework 3.5 SP1 Client Profile 291 | false 292 | 293 | 294 | False 295 | .NET Framework 3.5 SP1 296 | false 297 | 298 | 299 | 300 | 301 | 302 | 303 | 304 | 305 | 306 | 307 | 308 | 309 | 310 | 311 | 312 | 313 | 314 | 315 | 322 | -------------------------------------------------------------------------------- /HCTestDemo/HCTestDemo.csproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | ProjectFiles 5 | 发布\ 6 | 7 | 8 | 9 | 10 | 11 | zh-CN 12 | false 13 | 14 | -------------------------------------------------------------------------------- /HCTestDemo/Lib/ICSharpCode.SharpZipLib.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/Lib/ICSharpCode.SharpZipLib.dll -------------------------------------------------------------------------------- /HCTestDemo/Lib/NModbus4.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/Lib/NModbus4.dll -------------------------------------------------------------------------------- /HCTestDemo/Lib/NPOI.OOXML.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/Lib/NPOI.OOXML.dll -------------------------------------------------------------------------------- /HCTestDemo/Lib/NPOI.OpenXml4Net.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/Lib/NPOI.OpenXml4Net.dll -------------------------------------------------------------------------------- /HCTestDemo/Lib/NPOI.OpenXmlFormats.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/Lib/NPOI.OpenXmlFormats.dll -------------------------------------------------------------------------------- /HCTestDemo/Lib/NPOI.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/Lib/NPOI.dll -------------------------------------------------------------------------------- /HCTestDemo/Lib/SunnyUI.Common.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/Lib/SunnyUI.Common.dll -------------------------------------------------------------------------------- /HCTestDemo/Lib/SunnyUI.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/Lib/SunnyUI.dll -------------------------------------------------------------------------------- /HCTestDemo/Lib/TmctlAPINet.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/Lib/TmctlAPINet.dll -------------------------------------------------------------------------------- /HCTestDemo/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Reflection; 5 | using System.Threading.Tasks; 6 | using System.Windows.Forms; 7 | 8 | namespace HCTestDemo 9 | { 10 | static class Program 11 | { 12 | /// 13 | /// 应用程序的主入口点。 14 | /// 15 | [STAThread] 16 | static void Main() 17 | { 18 | LoadResourceDll.RegistDLL(); //当程序找不到支持的第三方dll文件时执行 19 | Application.EnableVisualStyles(); 20 | Application.SetCompatibleTextRenderingDefault(false); 21 | Application.Run(new LoadFrm()); 22 | } 23 | 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /HCTestDemo/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // 有关程序集的常规信息通过以下 6 | // 特性集控制。更改这些特性值可修改 7 | // 与程序集关联的信息。 8 | [assembly: AssemblyTitle("HCTestDemo")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("Microsoft")] 12 | [assembly: AssemblyProduct("HCTestDemo")] 13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2022")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // 将 ComVisible 设置为 false 使此程序集中的类型 18 | // 对 COM 组件不可见。 如果需要从 COM 访问此程序集中的类型, 19 | // 则将该类型上的 ComVisible 特性设置为 true。 20 | [assembly: ComVisible(false)] 21 | 22 | // 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID 23 | [assembly: Guid("852d18b4-3f31-4cbf-b40f-8bf85370886e")] 24 | 25 | // 程序集的版本信息由下面四个值组成: 26 | // 27 | // 主版本 28 | // 次版本 29 | // 生成号 30 | // 修订号 31 | // 32 | // 可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值, 33 | // 方法是按如下所示使用“*”: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /HCTestDemo/Properties/Resources.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // 此代码由工具生成。 4 | // 运行时版本: 4.0.30319.42000 5 | // 6 | // 对此文件的更改可能会导致不正确的行为,并且如果 7 | // 重新生成代码,这些更改将丢失。 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace HCTestDemo.Properties 12 | { 13 | 14 | 15 | /// 16 | /// 一个强类型的资源类,用于查找本地化的字符串等。 17 | /// 18 | // 此类是由 StronglyTypedResourceBuilder 19 | // 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 20 | // 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen 21 | // (以 /str 作为命令选项),或重新生成 VS 项目。 22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] 23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 25 | internal class Resources 26 | { 27 | 28 | private static global::System.Resources.ResourceManager resourceMan; 29 | 30 | private static global::System.Globalization.CultureInfo resourceCulture; 31 | 32 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] 33 | internal Resources() 34 | { 35 | } 36 | 37 | /// 38 | /// 返回此类使用的、缓存的 ResourceManager 实例。 39 | /// 40 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 41 | internal static global::System.Resources.ResourceManager ResourceManager 42 | { 43 | get 44 | { 45 | if ((resourceMan == null)) 46 | { 47 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("HCTestDemo.Properties.Resources", typeof(Resources).Assembly); 48 | resourceMan = temp; 49 | } 50 | return resourceMan; 51 | } 52 | } 53 | 54 | /// 55 | /// 为所有资源查找重写当前线程的 CurrentUICulture 属性, 56 | /// 方法是使用此强类型资源类。 57 | /// 58 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 59 | internal static global::System.Globalization.CultureInfo Culture 60 | { 61 | get 62 | { 63 | return resourceCulture; 64 | } 65 | set 66 | { 67 | resourceCulture = value; 68 | } 69 | } 70 | } 71 | } 72 | -------------------------------------------------------------------------------- /HCTestDemo/Properties/Resources.resx: -------------------------------------------------------------------------------- 1 |  2 | 3 | 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 | text/microsoft-resx 107 | 108 | 109 | 2.0 110 | 111 | 112 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 113 | 114 | 115 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | -------------------------------------------------------------------------------- /HCTestDemo/Properties/Settings.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace HCTestDemo.Properties 12 | { 13 | 14 | 15 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 16 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] 17 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase 18 | { 19 | 20 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); 21 | 22 | public static Settings Default 23 | { 24 | get 25 | { 26 | return defaultInstance; 27 | } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /HCTestDemo/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /HCTestDemo/PublicClass/ControlCAN.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Text; 4 | using System.Runtime.InteropServices; 5 | 6 | namespace ControlCAN 7 | { 8 | //1.ZLGCAN系列接口卡信息的数据类型。 9 | [StructLayout(LayoutKind.Sequential)] 10 | public struct VCI_BOARD_INFO 11 | { 12 | public UInt16 hw_Version; 13 | public UInt16 fw_Version; 14 | public UInt16 dr_Version; 15 | public UInt16 in_Version; 16 | public UInt16 irq_Num; 17 | public byte can_Num; 18 | [MarshalAs(UnmanagedType.ByValArray, SizeConst = 20)] 19 | public byte[] str_Serial_Num; 20 | [MarshalAs(UnmanagedType.ByValArray, SizeConst = 40)] 21 | public byte[] str_hw_Type; 22 | [MarshalAs(UnmanagedType.ByValArray, SizeConst = 8)] 23 | public byte[] Reserved; 24 | } 25 | 26 | 27 | ///////////////////////////////////////////////////// 28 | //2.定义CAN信息帧的数据类型。 29 | [StructLayout(LayoutKind.Sequential)] 30 | public struct VCI_CAN_OBJ 31 | { 32 | public uint ID; 33 | public uint TimeStamp; 34 | public byte TimeFlag; 35 | public byte SendType; 36 | public byte RemoteFlag;//是否是远程帧 37 | public byte ExternFlag;//是否是扩展帧 38 | public byte DataLen; 39 | 40 | [MarshalAs(UnmanagedType.ByValArray, SizeConst = 8)] 41 | public byte[] Data; 42 | 43 | [MarshalAs(UnmanagedType.ByValArray, SizeConst = 3)] 44 | public byte[] Reserved; 45 | 46 | } 47 | ////2.定义CAN信息帧的数据类型。 48 | //[StructLayout(LayoutKind.Sequential)] 49 | //public struct VCI_CAN_OBJ 50 | //{ 51 | // public UInt32 ID; 52 | // public UInt32 TimeStamp; 53 | // public byte TimeFlag; 54 | // public byte SendType; 55 | // public byte RemoteFlag;//是否是远程帧 56 | // public byte ExternFlag;//是否是扩展帧 57 | // public byte DataLen; 58 | // [MarshalAs(UnmanagedType.ByValArray, SizeConst = 8)] 59 | // public byte[] Data; 60 | // [MarshalAs(UnmanagedType.ByValArray, SizeConst = 3)] 61 | // public byte[] Reserved; 62 | 63 | // public void Init() 64 | // { 65 | // Data = new byte[8]; 66 | // Reserved = new byte[3]; 67 | // } 68 | //} 69 | 70 | //3.定义CAN控制器状态的数据类型。 71 | [StructLayout(LayoutKind.Sequential)] 72 | public struct VCI_CAN_STATUS 73 | { 74 | public byte ErrInterrupt; 75 | public byte regMode; 76 | public byte regStatus; 77 | public byte regALCapture; 78 | public byte regECCapture; 79 | public byte regEWLimit; 80 | public byte regRECounter; 81 | public byte regTECounter; 82 | [MarshalAs(UnmanagedType.ByValArray, SizeConst = 4)] 83 | public byte[] Reserved; 84 | } 85 | 86 | //4.定义错误信息的数据类型。 87 | [StructLayout(LayoutKind.Sequential)] 88 | public struct VCI_ERR_INFO 89 | { 90 | public UInt32 ErrCode; 91 | public byte Passive_ErrData1; 92 | public byte Passive_ErrData2; 93 | public byte Passive_ErrData3; 94 | public byte ArLost_ErrData; 95 | } 96 | 97 | //5.定义初始化CAN的数据类型 98 | [StructLayout(LayoutKind.Sequential)] 99 | public struct VCI_INIT_CONFIG 100 | { 101 | public UInt32 AccCode; 102 | public UInt32 AccMask; 103 | public UInt32 Reserved; 104 | public byte Filter; 105 | public byte Timing0; 106 | public byte Timing1; 107 | public byte Mode; 108 | 109 | 110 | } 111 | 112 | [StructLayout(LayoutKind.Sequential)] 113 | public struct CHGDESIPANDPORT 114 | { 115 | [MarshalAs(UnmanagedType.ByValArray, SizeConst = 10)] 116 | public byte[] szpwd; 117 | [MarshalAs(UnmanagedType.ByValArray, SizeConst = 20)] 118 | public byte[] szdesip; 119 | public Int32 desport; 120 | 121 | public void Init() 122 | { 123 | szpwd = new byte[10]; 124 | szdesip = new byte[20]; 125 | } 126 | } 127 | 128 | public struct Device 129 | { 130 | 131 | //public const int VCI_PCI5121 = 1; 132 | //public const int VCI_PCI9810 = 2; 133 | //public const int VCI_USBCAN1 = 3; 134 | //public const int VCI_USBCAN2 = 4; 135 | //public const int VCI_USBCAN2A = 4; 136 | //public const int VCI_PCI9820 = 5; 137 | //public const int VCI_CAN232 = 6; 138 | //public const int VCI_PCI5110 = 7; 139 | //public const int VCI_CANLITE = 8; 140 | //public const int VCI_ISA9620 = 9; 141 | //public const int VCI_ISA5420 = 10; 142 | //public const int VCI_PC104CAN = 11; 143 | //public const int VCI_CANETUDP = 12; 144 | //public const int VCI_CANETE = 12; 145 | //public const int VCI_DNP9810 = 13; 146 | //public const int VCI_PCI9840 = 14; 147 | //public const int VCI_PC104CAN2 = 15; 148 | //public const int VCI_PCI9820I = 16; 149 | //public const int VCI_CANETTCP = 17; 150 | //public const int VCI_PEC9920 = 18; 151 | //public const int VCI_PCI5010U = 19; 152 | //public const int VCI_USBCAN_E_U = 20; 153 | //public const int VCI_USBCAN_2E_U = 21; 154 | //public const int VCI_PCI5020U = 22; 155 | //public const int VCI_EG20T_CAN = 23; 156 | //public const int VCI_PCIE9221 = 24; 157 | //public const int VCI_CANDTU200 = 32; 158 | public static uint DevType; 159 | public static uint CanID; 160 | public static UInt32 m_bOpen = 0; //设备打开状态 161 | public static VCI_CAN_OBJ rec_CAN; //接收对象 162 | public static uint SelcetDev(string devicename) 163 | { 164 | 165 | switch (devicename) 166 | { 167 | case "VCI_PCI5121": 168 | DevType = 1; 169 | break; 170 | 171 | case "VCI_PCI9810": 172 | DevType = 2; 173 | break; 174 | case "VCI_USBCAN1": 175 | DevType = 3; 176 | break; 177 | 178 | case "VCI_USBCAN2": 179 | DevType = 4; 180 | break; 181 | case "VCI_USBCAN2A": 182 | DevType = 4; 183 | break; 184 | 185 | case "VCI_PCI9820": 186 | DevType = 5; 187 | break; 188 | case "VCI_CAN232": 189 | DevType = 6; 190 | break; 191 | 192 | case "VCI_PCI5110": 193 | DevType = 7; 194 | break; 195 | case "VCI_CANLITE": 196 | DevType = 8; 197 | break; 198 | 199 | case "VCI_ISA9620": 200 | DevType = 9; 201 | break; 202 | case "VCI_ISA5420": 203 | DevType = 10; 204 | break; 205 | 206 | case "VCI_PC104CAN": 207 | DevType = 11; 208 | break; 209 | case "VCI_CANETUDP": 210 | DevType = 12; 211 | break; 212 | 213 | case "VCI_CANETE": 214 | DevType = 12; 215 | break; 216 | case "VCI_DNP9810": 217 | DevType = 13; 218 | break; 219 | 220 | case "VCI_PCI9840": 221 | DevType = 14; 222 | break; 223 | case "VCI_PC104CAN2": 224 | DevType = 15; 225 | break; 226 | 227 | case "VCI_PCI9820I": 228 | DevType = 16; 229 | break; 230 | case "VCI_CANETTCP": 231 | DevType = 17; 232 | break; 233 | 234 | case "VCI_PEC9920": 235 | DevType = 18; 236 | break; 237 | case "VCI_PCI5010U": 238 | DevType = 19; 239 | break; 240 | case "VCI_USBCAN_E_U": 241 | DevType = 20; 242 | break; 243 | 244 | case "VCI_USBCAN_2E_U": 245 | DevType = 21; 246 | break; 247 | case "VCI_PCI5020U": 248 | DevType = 22; 249 | break; 250 | 251 | case "VCI_EG20T_CAN": 252 | DevType = 23; 253 | break; 254 | case "VCI_PCIE9221": 255 | DevType = 24; 256 | break; 257 | 258 | case "VCI_CANDTU200": 259 | DevType = 32; 260 | break; 261 | } 262 | return DevType; 263 | 264 | 265 | } 266 | 267 | /// 268 | /// 初始化CAN通道发送数据 269 | /// 270 | /// CAN要发送的数据帧数组组名称,例如send_can0 271 | /// CAN设备代码,例如USBCAN2就是4 272 | /// CAN设备索引号,例如USBCAN第一路就是0,第二路是1l 273 | /// 要发送的数据ID,例如0x000001 274 | /// 要发送的数据内容 275 | /// 数据的长度,标准的未8位,也可以非标准例如3位 276 | /// 277 | public static string sendCanMsg(VCI_CAN_OBJ[] can, uint m_devtype, UInt32 canind, uint id, byte[] msg,byte datalen) 278 | { 279 | string result="发送成功"; 280 | for (int j = 0; j < can.Length; j++) 281 | { 282 | 283 | can[j].SendType = (byte)0; //发送方式 0正常发送,1单次发送,2自发自收,3单次自发自收 284 | can[j].RemoteFlag = (byte)0;//帧格式 0数据帧,1远程帧 285 | if (id>4095) //超过0xfff 286 | { 287 | can[j].ExternFlag = 1;//帧类型 0标准帧,1扩展帧 ,目前调试CAN数据ID都为标准帧,整车CAN数据为扩展帧 288 | } 289 | else 290 | { 291 | can[j].ExternFlag = 0;//帧类型 0标准帧,1扩展帧 ,目前调试CAN数据ID都为标准帧,整车CAN数据为扩展帧 292 | 293 | } 294 | 295 | can[j].ID = id; 296 | can[j].DataLen = datalen; 297 | can[j].Data = msg; 298 | 299 | } 300 | if (VCI_Transmit(m_devtype, 0, canind, can, 1) == 0) 301 | { 302 | switch (canind) 303 | { 304 | case 0: 305 | result = "CAN0数据发送错误"; 306 | break; 307 | case 1: 308 | result = "CAN1数据发送错误"; 309 | break; 310 | } 311 | 312 | } 313 | return result; 314 | } 315 | 316 | [DllImport("controlcan.dll")] 317 | public static extern UInt32 VCI_OpenDevice(UInt32 DeviceType, UInt32 DeviceInd, UInt32 Reserved); 318 | [DllImport("controlcan.dll")] 319 | public static extern UInt32 VCI_CloseDevice(UInt32 DeviceType, UInt32 DeviceInd); 320 | [DllImport("controlcan.dll")] 321 | public static extern UInt32 VCI_InitCAN(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, ref VCI_INIT_CONFIG pInitConfig); 322 | [DllImport("controlcan.dll")] 323 | public static extern UInt32 VCI_ReadBoardInfo(UInt32 DeviceType, UInt32 DeviceInd, ref VCI_BOARD_INFO pInfo); 324 | [DllImport("controlcan.dll")] 325 | public static extern UInt32 VCI_ReadErrInfo(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, ref VCI_ERR_INFO pErrInfo); 326 | [DllImport("controlcan.dll")] 327 | public static extern UInt32 VCI_ReadCANStatus(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, ref VCI_CAN_STATUS pCANStatus); 328 | 329 | [DllImport("controlcan.dll")] 330 | public static extern UInt32 VCI_GetReference(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, UInt32 RefType, ref byte pData); 331 | [DllImport("controlcan.dll")] 332 | public static extern UInt32 VCI_SetReference(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, UInt32 RefType, ref byte pData); 333 | 334 | [DllImport("controlcan.dll")] 335 | public static extern UInt32 VCI_GetReceiveNum(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd); 336 | [DllImport("controlcan.dll")] 337 | public static extern UInt32 VCI_ClearBuffer(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd); 338 | 339 | [DllImport("controlcan.dll")] 340 | public static extern UInt32 VCI_StartCAN(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd); 341 | [DllImport("controlcan.dll")] 342 | public static extern UInt32 VCI_ResetCAN(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd); 343 | 344 | [DllImport("controlcan.dll")] 345 | public static extern UInt32 VCI_Transmit(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, VCI_CAN_OBJ[] pSend, UInt32 Len); 346 | 347 | //[DllImport("controlcan.dll")] 348 | //static extern UInt32 VCI_Receive(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, ref VCI_CAN_OBJ pReceive, UInt32 Len, Int32 WaitTime); 349 | [DllImport("controlcan.dll", CharSet = CharSet.Ansi)] 350 | public static extern UInt32 VCI_Receive(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, IntPtr pReceive, UInt32 Len, Int32 WaitTime); 351 | }; 352 | // 函数调用返回状态值 353 | public enum STATUS 354 | { 355 | STATUS_OK = 1, 356 | STATUS_ERR = 0, 357 | }; 358 | 359 | // 函数调用返回状态值 360 | public enum CMD 361 | { 362 | CMD_DESIP = 0, 363 | CMD_DESPORT = 1, 364 | CMD_SRCPORT = 2, 365 | CMD_CHGDESIPANDPORT = 2, 366 | CMD_TCP_TYPE = 4,//tcp 工作方式,服务器:1 或是客户端:0 367 | }; 368 | 369 | public enum TCPTYPE 370 | { 371 | TCP_CLIENT = 0, 372 | TCP_SERVER = 1, 373 | } 374 | 375 | public enum REF 376 | { 377 | REFERENCE_BAUD = 1, 378 | REFERENCE_SET_TRANSMIT_TIMEOUT = 2, 379 | REFERENCE_ADD_FILTER = 3, 380 | REFERENCE_SET_FILTER = 4, 381 | }; 382 | } 383 | -------------------------------------------------------------------------------- /HCTestDemo/PublicClass/LoadResourceDll.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Diagnostics; 4 | using System.Linq; 5 | using System.Reflection; 6 | using System.Text; 7 | using System.Text.RegularExpressions; 8 | using System.Threading.Tasks; 9 | using System.Windows.Forms; 10 | 11 | namespace HCTestDemo 12 | { 13 | public static class LoadResourceDll 14 | { 15 | 16 | /// 已加载DLL 17 | /// 18 | private static Dictionary LoadedDlls = new Dictionary(); 19 | /// 已处理程序集 20 | /// 21 | private static Dictionary Assemblies = new Dictionary(); 22 | /// 在对程序集解释失败时触发 23 | /// 24 | /// AppDomain 25 | /// 事件参数 26 | private static Assembly AssemblyResolve(object sender, ResolveEventArgs args) 27 | { 28 | //程序集 29 | Assembly ass; 30 | //获取加载失败的程序集的全名 31 | var assName = new AssemblyName(args.Name).FullName; 32 | //判断Dlls集合中是否有已加载的同名程序集 33 | if (LoadedDlls.TryGetValue(assName, out ass) && ass != null) 34 | { 35 | LoadedDlls[assName] = null;//如果有则置空并返回 36 | return ass; 37 | } 38 | else 39 | { 40 | throw new DllNotFoundException(assName);//否则抛出加载失败的异常 41 | } 42 | 43 | } 44 | 45 | /// 注册资源中的dll 46 | /// 47 | /// *表示连续的未知字符,_表示单个未知字符,如*.dll 48 | public static void RegistDLL(string pattern = "*.dll") 49 | { 50 | System.IO.Directory.GetFiles("", ""); 51 | //获取调用者的程序集 52 | var ass = new StackTrace(0).GetFrame(1).GetMethod().Module.Assembly; 53 | //判断程序集是否已经处理 54 | if (Assemblies.ContainsKey(ass.FullName)) 55 | { 56 | return; 57 | } 58 | //程序集加入已处理集合 59 | Assemblies.Add(ass.FullName, null); 60 | //绑定程序集加载失败事件(这里我测试了,就算重复绑也是没关系的) 61 | AppDomain.CurrentDomain.AssemblyResolve += AssemblyResolve; 62 | //获取所有资源文件文件名 63 | var res = ass.GetManifestResourceNames(); 64 | var regex = new Regex("^" + pattern.Replace(".", "\\.").Replace("*", ".*").Replace("_", ".") + "$", RegexOptions.IgnoreCase); 65 | foreach (var r in res) 66 | { 67 | //如果是dll,则加载 68 | if (regex.IsMatch(r)) 69 | { 70 | 71 | try 72 | { 73 | var s = ass.GetManifestResourceStream(r); 74 | var bts = new byte[s.Length]; 75 | s.Read(bts, 0, (int)s.Length); 76 | var da = Assembly.Load(bts); 77 | //判断是否已经加载 78 | if (LoadedDlls.ContainsKey(da.FullName)) 79 | { 80 | continue; 81 | } 82 | LoadedDlls[da.FullName] = da; 83 | } 84 | catch (Exception ex) 85 | { 86 | MessageBox.Show("error:加载dll失败\n位置:RegistDLL()!\n描述:" + ex.Message); 87 | } 88 | } 89 | } 90 | } 91 | } 92 | } 93 | -------------------------------------------------------------------------------- /HCTestDemo/PublicClass/connection.cs: -------------------------------------------------------------------------------- 1 | /*========================================================== 2 | Copyright (C) 2005 YOKOGAWA ELECTRIC CORPORATION 3 | 4 | ALL RIGHTS RESERVED BY YOKOGAWA ELECTRIC CORPORATION. 5 | THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT 6 | WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING 7 | BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY 8 | AND/OR FITNESS FOR A PARTICULAR PURPOSE. 9 | 10 | YOKOGAWA ELECTRIC CORPORATION 11 | ==========================================================*/ 12 | using TmctlAPINet; 13 | using System.Data; 14 | using System.Text; 15 | 16 | namespace Yokogawa.Tm.WT1800CommSample.cs 17 | { 18 | /// 19 | /// WT1800 Communication Sample Program, Connection Class. 20 | /// 21 | public class Connection 22 | { 23 | #region Custem Member Init 24 | private static int commID = -1; 25 | private static string model = ""; 26 | private string address; //address parameter. 27 | private int commType; //connection type. 28 | private int terminator; //terminator in message. 29 | private static TMCTL tmDev = new TMCTL(); 30 | public static string DevModel 31 | { 32 | get 33 | { 34 | return model; 35 | } 36 | } 37 | public string devAddress 38 | { 39 | set 40 | { 41 | address = value; 42 | } 43 | } 44 | public int wireType 45 | { 46 | set 47 | { 48 | commType = value; 49 | } 50 | } 51 | public int msgTerminator 52 | { 53 | set 54 | { 55 | terminator = value; 56 | } 57 | } 58 | 59 | #endregion 60 | 61 | #region Constructor 62 | public Connection() 63 | { 64 | //tmDev = new TmctlDevice(); 65 | terminator = 2; 66 | } 67 | 68 | public Connection(int port, string addr) 69 | { 70 | commType = port; 71 | address = addr; 72 | terminator = 1; 73 | } 74 | #endregion 75 | 76 | #region Function: Initialize 77 | //************************************************** 78 | /// 79 | /// Set Connection To The Device 80 | /// 81 | /// 82 | //************************************************** 83 | public int Initialize() 84 | { 85 | int rtn;//return 0 when successed. 86 | rtn = tmDev.Initialize(commType, address, ref commID); 87 | if(rtn != 0) 88 | { 89 | return rtn; 90 | } 91 | 92 | //set terminator of the message. 93 | rtn = tmDev.SetTerm(commID, terminator, 1); 94 | if(rtn != 0) 95 | { 96 | tmDev.Finish(commID); 97 | return rtn; 98 | } 99 | 100 | //timeout settings, 100*100ms 101 | rtn = tmDev.SetTimeout(commID, 100); 102 | if(rtn != 0) 103 | { 104 | tmDev.Finish(commID); 105 | return rtn; 106 | } 107 | 108 | //test the device module connected. 109 | rtn = tmDev.Send(commID, "*IDN?"); 110 | 111 | int maxLength = 50; 112 | StringBuilder buf; 113 | int realLength = 0; 114 | buf = new StringBuilder(20000); 115 | 116 | rtn = tmDev.Receive(commID, buf, maxLength, ref realLength); 117 | model = buf.ToString(); 118 | if(rtn != 0) 119 | { 120 | //it seems no use to do a finish when rtn != 0. 121 | tmDev.Finish(commID); 122 | } 123 | return rtn; 124 | } 125 | #endregion 126 | 127 | #region Function: SetTimeout 128 | //************************************************** 129 | /// 130 | /// Function: Set Timeout Method 131 | /// 132 | /// 133 | //************************************************** 134 | public int SetTimeout(int timeout) 135 | { 136 | return(tmDev.SetTimeout(commID, timeout)); 137 | } 138 | #endregion 139 | 140 | #region Function: Finish 141 | //************************************************** 142 | /// 143 | /// Function: Break the Connection Method 144 | /// 145 | /// 146 | //************************************************** 147 | public int Finish() 148 | { 149 | return(tmDev.Finish(commID)); 150 | } 151 | #endregion 152 | 153 | #region Function: Send 154 | //************************************************** 155 | /// 156 | /// Function: Sending Message Method 157 | /// 158 | /// 159 | //************************************************** 160 | public int Send(string msg) 161 | { 162 | return(tmDev.Send(commID, msg)); 163 | } 164 | public int SendByLength(string msg, int len) 165 | { 166 | return(tmDev.SendByLength(commID, msg, len)); 167 | } 168 | #endregion 169 | 170 | #region Function: Receive 171 | //************************************************** 172 | /// 173 | /// Function: Receive Message 174 | /// 175 | /// 176 | //************************************************** 177 | public int ReceiveSetup() 178 | { 179 | return(tmDev.ReceiveSetup(commID)); 180 | } 181 | 182 | public int Receive(ref string buf, int blen, ref int rlen) 183 | { 184 | StringBuilder temp; 185 | temp = new StringBuilder(41000); 186 | int rtn = tmDev.Receive(commID, temp, blen, ref rlen); 187 | buf = temp.ToString(); 188 | return rtn; 189 | } 190 | 191 | public int ReceiveBlockHeader(ref int rlen) 192 | { 193 | return(tmDev.ReceiveBlockHeader(commID, ref rlen)); 194 | } 195 | public int ReceiveBlockData(ref byte[] buf, int blen, ref int rlen, ref int end) 196 | { 197 | int rtn = tmDev.ReceiveBlockData(commID, ref buf[0], blen, ref rlen, ref end); 198 | return rtn; 199 | } 200 | #endregion 201 | 202 | #region Function: GetLastError 203 | //************************************************** 204 | /// 205 | /// Function: Get Last Error Method 206 | /// 207 | /// 208 | //************************************************** 209 | public int GetLastError() 210 | { 211 | return(tmDev.GetLastError(commID)); 212 | } 213 | #endregion 214 | 215 | #region Function: SetRen 216 | //************************************************** 217 | /// 218 | /// Function: Set the Remote Status 219 | /// 220 | /// 221 | //************************************************** 222 | //##Function: Set the Remote Status## 223 | public int SetRen(int flag) 224 | { 225 | return(tmDev.SetRen(commID, flag)); 226 | } 227 | #endregion 228 | 229 | #region Function: GetEncodeSerialNumber 230 | //************************************************** 231 | /// 232 | /// Function: Get the EncodeSerialNumber 233 | /// 234 | /// 235 | //************************************************** 236 | public int GetEncodeSerialNumber(StringBuilder decode, int len, string src) 237 | { 238 | return (tmDev.EncodeSerialNumber(decode, len, src)); 239 | } 240 | #endregion 241 | } 242 | } 243 | -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/BIN/BootApp.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/BIN/BootApp.bin -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/BIN/HC32F460_HC.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/BIN/HC32F460_HC.bin -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/BIN/hiiMotor(1).bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/BIN/hiiMotor(1).bin -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/BIN/hiiMotor.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/BIN/hiiMotor.bin -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/BIN/kW4p5_Fan_V1.0.5.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/BIN/kW4p5_Fan_V1.0.5.bin -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/BIN/kWAuxStation.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/BIN/kWAuxStation.bin -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/ControlCAN.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/ControlCAN.dll -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/ControlCAN1.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/ControlCAN1.dll -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/DbcFiles/23K_TTcan.dbc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/DbcFiles/23K_TTcan.dbc -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/DbcFiles/HC_235W_pump_710.dbc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/DbcFiles/HC_235W_pump_710.dbc -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/DbcFiles/HC_3kw_Pump_debug_Control_Generator_20220520.dbc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/DbcFiles/HC_3kw_Pump_debug_Control_Generator_20220520.dbc -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/DbcFiles/HC_3kw_Pump_debug_Control_Generator_20220520.ini: -------------------------------------------------------------------------------- 1 | [View_Vehicles] 2 | HIDDEN= 3 | ORDER=0,1, 4 | DEFINITIONS= 5 | COLUMNWIDTHS=125,150, 6 | [View_Vehicle] 7 | HIDDEN= 8 | ORDER=0,1, 9 | DEFINITIONS= 10 | COLUMNWIDTHS=125,125, 11 | [View_VehicleNetworks] 12 | HIDDEN=3,5, 13 | ORDER=0,1,2,3,4, 14 | DEFINITIONS=5,24, 15 | COLUMNWIDTHS=125,125,100,100,150,100,100, 16 | [View_VehicleNetwork] 17 | HIDDEN= 18 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14, 19 | DEFINITIONS=3,4,8,21,25,26,27,28,29,30, 20 | COLUMNWIDTHS=125,125,100,125,150,100,50,100,100,100,100,50,50,50,50, 21 | [View_VehicleNetworkTxMessages] 22 | HIDDEN= 23 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22, 24 | DEFINITIONS=2,7,9,10,11,12,13,14,15,16,17,18,19,20, 25 | COLUMNWIDTHS=125,125,55,100,50,100,100,100,150,100,50,100,100,100,100,50,50,50,50,50,50,100,100, 26 | [View_VehicleNetworkSignals] 27 | HIDDEN= 28 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19, 29 | DEFINITIONS=1,6,22,23, 30 | COLUMNWIDTHS=125,125,100,50,100,50,100,100,100,50,50,50,50,100,100,150,100,50,50,50, 31 | [View_VehicleControlUnit] 32 | HIDDEN= 33 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14, 34 | DEFINITIONS=3,4,8,21,25,26,27,28,29,30, 35 | COLUMNWIDTHS=125,125,100,125,150,100,50,100,100,100,100,50,50,50,50, 36 | [View_VehicleGateways] 37 | HIDDEN= 38 | ORDER=0,1,2, 39 | DEFINITIONS= 40 | COLUMNWIDTHS=125,125,100, 41 | [View_VehicleGatewaySignals] 42 | HIDDEN= 43 | ORDER=0,1,2,3,4,5,6, 44 | DEFINITIONS= 45 | COLUMNWIDTHS=125,125,125,125,125,125,125, 46 | [View_Networks] 47 | HIDDEN=2,4, 48 | ORDER=0,1,2,3, 49 | DEFINITIONS=5,24, 50 | COLUMNWIDTHS=125,100,100,150,100,100, 51 | [View_Network] 52 | HIDDEN= 53 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12,13, 54 | DEFINITIONS=3,4,8,21,25,26,27,28,29,30, 55 | COLUMNWIDTHS=125,125,100,150,100,50,100,100,100,100,50,50,50,50, 56 | [View_NetworkTxMessages] 57 | HIDDEN= 58 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22, 59 | DEFINITIONS=2,7,9,10,11,12,13,14,15,16,17,18,19,20, 60 | COLUMNWIDTHS=125,125,55,100,50,100,100,100,150,100,50,100,100,100,100,50,50,50,50,50,50,100,100, 61 | [View_NetworkTxSignals] 62 | HIDDEN= 63 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19, 64 | DEFINITIONS=1,6,22,23, 65 | COLUMNWIDTHS=125,125,100,50,100,50,100,100,100,50,50,50,50,100,100,150,100,50,50,50, 66 | [View_NetworkNodeGroup] 67 | HIDDEN= 68 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12, 69 | DEFINITIONS=3,4,8,21,25,26,27,28,29,30, 70 | COLUMNWIDTHS=125,100,150,100,50,100,100,100,100,50,50,50,50, 71 | [View_Ecus] 72 | HIDDEN= 73 | ORDER=0,1, 74 | DEFINITIONS= 75 | COLUMNWIDTHS=125,150, 76 | [View_Ecu] 77 | HIDDEN= 78 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12,13, 79 | DEFINITIONS=3,4,8,21,25,26,27,28,29,30, 80 | COLUMNWIDTHS=125,125,100,150,100,50,100,100,100,100,50,50,50,50, 81 | [View_EnvVars] 82 | HIDDEN= 83 | ORDER=0,1,2,3,4,5,6,7,8,9, 84 | DEFINITIONS= 85 | COLUMNWIDTHS=125,100,100,50,50,50,50,100,100,150, 86 | [View_EnvVar] 87 | HIDDEN= 88 | ORDER=0,1,2,3,4,5,6,7,8,9,10, 89 | DEFINITIONS= 90 | COLUMNWIDTHS=125,125,100,100,50,50,50,50,100,100,150, 91 | [View_NodeGroups] 92 | HIDDEN= 93 | ORDER=0,1, 94 | DEFINITIONS= 95 | COLUMNWIDTHS=125,150, 96 | [View_NodeGroup] 97 | HIDDEN= 98 | ORDER=0,1,2,3, 99 | DEFINITIONS= 100 | COLUMNWIDTHS=125,125,55,150, 101 | [View_Nodes] 102 | HIDDEN= 103 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12, 104 | DEFINITIONS=3,4,8,21,25,26,27,28,29,30, 105 | COLUMNWIDTHS=125,100,150,100,50,100,100,100,100,50,50,50,50, 106 | [View_Node] 107 | HIDDEN= 108 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19, 109 | DEFINITIONS=31,1,6,22,23, 110 | COLUMNWIDTHS=125,125,100,50,50,100,100,100,50,50,50,50,100,100,150,50,100,50,50,50, 111 | [View_NodeTxMessages] 112 | HIDDEN= 113 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21, 114 | DEFINITIONS=2,7,9,10,11,12,13,14,15,16,17,18,19,20, 115 | COLUMNWIDTHS=125,125,55,100,50,100,100,150,100,50,100,100,100,100,50,50,50,50,50,50,100,100, 116 | [View_NodeTxMsg] 117 | HIDDEN= 118 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18, 119 | DEFINITIONS=1,6,22,23, 120 | COLUMNWIDTHS=125,125,100,50,50,100,100,100,50,50,50,50,100,100,150,100,50,50,50, 121 | [View_NodeTxSignals] 122 | HIDDEN= 123 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18, 124 | DEFINITIONS=1,6,22,23, 125 | COLUMNWIDTHS=125,125,100,50,50,100,100,100,50,50,50,50,100,100,150,100,50,50,50, 126 | [View_NodeRxSignals] 127 | HIDDEN= 128 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19, 129 | DEFINITIONS=31,1,6,22,23, 130 | COLUMNWIDTHS=125,125,100,50,50,100,100,100,50,50,50,50,100,100,150,50,100,50,50,50, 131 | [View_NodeTxSigs] 132 | HIDDEN= 133 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16, 134 | DEFINITIONS=1,6,22,23, 135 | COLUMNWIDTHS=125,125,50,100,100,100,50,50,50,50,100,100,150,100,50,50,50, 136 | [View_NodeRxSigs] 137 | HIDDEN= 138 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16, 139 | DEFINITIONS=1,6,22,23, 140 | COLUMNWIDTHS=125,125,50,100,100,100,50,50,50,50,100,100,150,100,50,50,50, 141 | [View_Messages] 142 | HIDDEN= 143 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21, 144 | DEFINITIONS=2,7,9,10,11,12,13,14,15,16,17,18,19,20, 145 | COLUMNWIDTHS=125,55,100,50,100,100,100,150,100,50,100,100,100,100,50,50,50,50,50,50,100,100, 146 | [View_Message] 147 | HIDDEN= 148 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18, 149 | DEFINITIONS=1,6,22,23, 150 | COLUMNWIDTHS=125,125,100,50,50,100,100,100,50,50,50,50,100,100,150,100,50,50,50, 151 | [View_Signals] 152 | HIDDEN= 153 | ORDER=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15, 154 | DEFINITIONS=1,6,22,23, 155 | COLUMNWIDTHS=125,50,100,100,100,50,50,50,50,100,100,150,100,50,50,50, 156 | [View_ValueTables] 157 | HIDDEN= 158 | ORDER=0,1, 159 | DEFINITIONS= 160 | COLUMNWIDTHS=125,150, 161 | [View_AttrDefs] 162 | HIDDEN=6, 163 | ORDER=0,1,2,3,4,5, 164 | DEFINITIONS= 165 | COLUMNWIDTHS=125,100,100,50,50,100,150, 166 | -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/DbcFiles/HC_5kW_Fan_201.dbc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/DbcFiles/HC_5kW_Fan_201.dbc -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/DbcFiles/HC_Fan_4p5.dbc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/DbcFiles/HC_Fan_4p5.dbc -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/HCTestDemo.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/HCTestDemo.exe -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/HCTestDemo.exe.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/HCTestDemo.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/HCTestDemo.pdb -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/HCTestDemo.vshost.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/HCTestDemo.vshost.exe -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/HCTestDemo.vshost.exe.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/LibDBCManager.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/LibDBCManager.dll -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/ParaFile/CalibrationParam_3kw_2022_03_16_M5_Final.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/ParaFile/CalibrationParam_3kw_2022_03_16_M5_Final.xlsx -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/YKMUSB.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/YKMUSB.dll -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/kerneldlls/CAN232.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/kerneldlls/CAN232.dll -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/kerneldlls/CANETE.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/kerneldlls/CANETE.dll -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/kerneldlls/CANET_TCP.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/kerneldlls/CANET_TCP.dll -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/kerneldlls/PC104C2.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/kerneldlls/PC104C2.dll -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/kerneldlls/PC104CAN.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/kerneldlls/PC104CAN.dll -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/kerneldlls/PCI5121.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/kerneldlls/PCI5121.dll -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/kerneldlls/gisadll.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/kerneldlls/gisadll.dll -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/kerneldlls/gpcidll.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/kerneldlls/gpcidll.dll -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/kerneldlls/isa5420.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/kerneldlls/isa5420.dll -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/kerneldlls/kerneldll.ini: -------------------------------------------------------------------------------- 1 | [KERNELDLL] 2 | COUNT=40 3 | 1=PCI51XXE.dll 4 | 2=PCI9810.dll 5 | 3=USBCAN.dll 6 | 4=USBCAN.dll 7 | 5=PCI9820B.dll 8 | 6=CAN232.dll 9 | 7=PCI51XXE.dll 10 | 8=CANLite.dll 11 | 9=ISA9620B.dll 12 | 10=ISA5420.dll 13 | 11=PC104CAN.dll 14 | 12=CANETE.dll 15 | 13=DNP9810B.dll 16 | 14=PCI9840B.dll 17 | 15=PC104C2.dll 18 | 16=PCI9820I.dll 19 | 17=CANET_TCP.dll 20 | 18=pec9920.dll 21 | 19=pci50xx_u.dll 22 | 20=USBCAN_E.dll 23 | 21=USBCAN_E.dll 24 | 22=pci50xx_u.dll 25 | 23=topcliff_can.dll 26 | 24=pcie9221.dll 27 | 25=CANWIFI_TCP.dll 28 | 26=CANWIFI_UDP.dll 29 | 27=pcie9120.dll 30 | 28=pcie9110.dll 31 | 29=pcie9140.dll 32 | 30=pci5010p.dll 33 | 31=USBCAN_4E_U.dll 34 | 32=CANDTU.DLL 35 | 33=CANDTU_MINI.dll 36 | 34=USBCAN_8E_U.dll 37 | 35=CAN_REPLAY.dll 38 | 36=CANDTU_NET.dll 39 | 37=CANDTU.dll 40 | 38=zpcfd.dll 41 | 39=zpcfd.dll 42 | 40=zpcfd.dll 43 | -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/kerneldlls/usbcan.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/kerneldlls/usbcan.dll -------------------------------------------------------------------------------- /HCTestDemo/bin/Debug/tmctl.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/bin/Debug/tmctl.dll -------------------------------------------------------------------------------- /HCTestDemo/dbc_demo.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/dbc_demo.ico -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/.NETFramework,Version=v4.5.AssemblyAttributes.cs: -------------------------------------------------------------------------------- 1 | // 2 | using System; 3 | using System.Reflection; 4 | [assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.5", FrameworkDisplayName = ".NET Framework 4.5")] 5 | -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/DesignTimeResolveAssemblyReferences.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/DesignTimeResolveAssemblyReferences.cache -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.AnalogKB.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.AnalogKB.resources -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.BootLoadBinFile.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.BootLoadBinFile.resources -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.ExcelPathNameInit.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.ExcelPathNameInit.resources -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.HC_23KW_PowerSta.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.HC_23KW_PowerSta.resources -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.HC_2p5kw.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.HC_2p5kw.resources -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.HC_3kw_Pump.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.HC_3kw_Pump.resources -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.HC_4p5_Fan.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.HC_4p5_Fan.resources -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.HC_5kw_Fan.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.HC_5kw_Fan.resources -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.HC_800w.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.HC_800w.resources -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.HC_L1.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.HC_L1.resources -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.HC_M2A_Pump.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.HC_M2A_Pump.resources -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.HanSenPowerControl.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.HanSenPowerControl.resources -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.LinearReg.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.LinearReg.resources -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.LoadFrm.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.LoadFrm.resources -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.MsgFrm.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.MsgFrm.resources -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.ParameModifica.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.ParameModifica.resources -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.Properties.Resources.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.Properties.Resources.resources -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.WoSenPowerControl.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.WoSenPowerControl.resources -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.csproj.AssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.csproj.AssemblyReference.cache -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.csproj.CoreCompileInputs.cache: -------------------------------------------------------------------------------- 1 | d537bf3548887ebc9873531447f111e7afed578d 2 | -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.csproj.FileListAbsolute.txt: -------------------------------------------------------------------------------- 1 | c:\users\king\documents\visual studio 2013\Projects\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe.config 2 | c:\users\king\documents\visual studio 2013\Projects\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe 3 | c:\users\king\documents\visual studio 2013\Projects\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.pdb 4 | c:\users\king\documents\visual studio 2013\Projects\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csprojResolveAssemblyReference.cache 5 | c:\users\king\documents\visual studio 2013\Projects\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.Form1.resources 6 | c:\users\king\documents\visual studio 2013\Projects\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.Properties.Resources.resources 7 | c:\users\king\documents\visual studio 2013\Projects\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csproj.GenerateResource.Cache 8 | c:\users\king\documents\visual studio 2013\Projects\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.exe 9 | c:\users\king\documents\visual studio 2013\Projects\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.pdb 10 | C:\Users\king\Desktop\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe.config 11 | C:\Users\king\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.exe 12 | C:\Users\king\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.pdb 13 | C:\Users\king\Desktop\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe 14 | C:\Users\king\Desktop\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.pdb 15 | C:\Users\king\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csprojResolveAssemblyReference.cache 16 | C:\Users\king\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.Properties.Resources.resources 17 | C:\Users\king\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csproj.GenerateResource.Cache 18 | C:\Users\king\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.MsgFrm.resources 19 | E:\VS 2013\Demo\5KW_FAN\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe.config 20 | E:\VS 2013\Demo\5KW_FAN\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.exe 21 | E:\VS 2013\Demo\5KW_FAN\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.pdb 22 | E:\VS 2013\Demo\5KW_FAN\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe 23 | E:\VS 2013\Demo\5KW_FAN\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.pdb 24 | E:\VS 2013\Demo\5KW_FAN\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csprojResolveAssemblyReference.cache 25 | E:\VS 2013\Demo\5KW_FAN\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.MsgFrm.resources 26 | E:\VS 2013\Demo\5KW_FAN\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.Properties.Resources.resources 27 | E:\VS 2013\Demo\5KW_FAN\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csproj.GenerateResource.Cache 28 | E:\VS 2013\Demo\5KW风扇\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe.config 29 | E:\VS 2013\Demo\5KW风扇\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.exe 30 | E:\VS 2013\Demo\5KW风扇\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.pdb 31 | E:\VS 2013\Demo\通用\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe.config 32 | E:\VS 2013\Demo\通用\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.exe 33 | E:\VS 2013\Demo\通用\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.pdb 34 | E:\VS 2013\Demo\通用\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe 35 | E:\VS 2013\Demo\通用\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.pdb 36 | E:\VS 2013\Demo\通用\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.MsgFrm.resources 37 | E:\VS 2013\Demo\通用\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.Properties.Resources.resources 38 | E:\VS 2013\Demo\通用\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csproj.GenerateResource.Cache 39 | E:\VS 2013\Demo\通用\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.ExcelPathNameInit.resources 40 | C:\Users\king\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.ExcelPathNameInit.resources 41 | E:\VS 2013\Demo\通用\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csprojResolveAssemblyReference.cache 42 | E:\VS 2013\Demo\PublicDemo\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe.config 43 | E:\VS 2013\Demo\PublicDemo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.exe 44 | E:\VS 2013\Demo\PublicDemo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.pdb 45 | E:\VS 2013\Demo\PublicDemo\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe 46 | E:\VS 2013\Demo\PublicDemo\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.pdb 47 | E:\VS 2013\Demo\PublicDemo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.ExcelPathNameInit.resources 48 | E:\VS 2013\Demo\PublicDemo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.MsgFrm.resources 49 | E:\VS 2013\Demo\PublicDemo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.Properties.Resources.resources 50 | E:\VS 2013\Demo\PublicDemo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csproj.GenerateResource.Cache 51 | E:\VS 2013\Demo\PublicDemo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csprojResolveAssemblyReference.cache 52 | E:\VS 2013\Demo\5KW_FAN\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.ExcelPathNameInit.resources 53 | E:\VS 2013\Demo\235W\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe.config 54 | E:\VS 2013\Demo\235W\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.exe 55 | E:\VS 2013\Demo\235W\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.pdb 56 | E:\VS 2013\Demo\235W_pump\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe.config 57 | E:\VS 2013\Demo\235W_pump\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.exe 58 | E:\VS 2013\Demo\235W_pump\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.pdb 59 | E:\VS 2013\Demo\235W_pump\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csprojResolveAssemblyReference.cache 60 | E:\VS 2013\Demo\235W_pump\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.ExcelPathNameInit.resources 61 | E:\VS 2013\Demo\235W_pump\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.MsgFrm.resources 62 | E:\VS 2013\Demo\235W_pump\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.Properties.Resources.resources 63 | E:\VS 2013\Demo\235W_pump\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csproj.GenerateResource.Cache 64 | E:\VS 2013\Demo\235W_pump\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe 65 | E:\VS 2013\Demo\235W_pump\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.pdb 66 | E:\VS 2013\Demo\3KW_pump\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe.config 67 | E:\VS 2013\Demo\3KW_pump\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe 68 | E:\VS 2013\Demo\3KW_pump\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.pdb 69 | E:\VS 2013\Demo\3KW_pump\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csprojResolveAssemblyReference.cache 70 | E:\VS 2013\Demo\3KW_pump\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.ExcelPathNameInit.resources 71 | E:\VS 2013\Demo\3KW_pump\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.MsgFrm.resources 72 | E:\VS 2013\Demo\3KW_pump\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.Properties.Resources.resources 73 | E:\VS 2013\Demo\3KW_pump\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csproj.GenerateResource.Cache 74 | E:\VS 2013\Demo\3KW_pump\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.exe 75 | E:\VS 2013\Demo\3KW_pump\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.pdb 76 | C:\Users\king\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.WoSenPowerControl.resources 77 | E:\VS 2013\Demo\PublicDemo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.WoSenPowerControl.resources 78 | E:\VS 2013\Demo\PublicDemo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HanSenPowerControl.resources 79 | E:\VS 2013\Demo\PublicDemo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.ParameModifica.resources 80 | C:\Users\king\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HanSenPowerControl.resources 81 | C:\Users\king\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.ParameModifica.resources 82 | E:\VS 2013\Demo\PublicDemo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.BootLoadBinFile.resources 83 | E:\VS 2013\Demo\3KW_pump\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.BootLoadBinFile.resources 84 | E:\VS 2013\Demo\3KW_pump\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.WoSenPowerControl.resources 85 | E:\VS 2013\Demo\3KW_pump\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HanSenPowerControl.resources 86 | E:\VS 2013\Demo\3KW_pump\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.ParameModifica.resources 87 | E:\VS 2013\Demo\3KW_pump\HCTestDemo\HCTestDemo\obj\Debug\WinFormsChartSamples.RealTimeSample.resources 88 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csproj.AssemblyReference.cache 89 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.BootLoadBinFile.resources 90 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\WinFormsChartSamples.RealTimeSample.resources 91 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.ExcelPathNameInit.resources 92 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_3kw_Pump.resources 93 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_5kw_Fan.resources 94 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_L1.resources 95 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.LoadFrm.resources 96 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.WoSenPowerControl.resources 97 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HanSenPowerControl.resources 98 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.ParameModifica.resources 99 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.Properties.Resources.resources 100 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csproj.GenerateResource.cache 101 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csproj.CoreCompileInputs.cache 102 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.exe 103 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.pdb 104 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe.config 105 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe 106 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.pdb 107 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_2p5kw.resources 108 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_4p5_Fan.resources 109 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.LinearReg.resources 110 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.AnalogKB.resources 111 | C:\Users\dendi.qian\Desktop\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_M2A_Pump.resources 112 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe.config 113 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe 114 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.pdb 115 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csproj.AssemblyReference.cache 116 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.BootLoadBinFile.resources 117 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\WinFormsChartSamples.RealTimeSample.resources 118 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.AnalogKB.resources 119 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.ExcelPathNameInit.resources 120 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_3kw_Pump.resources 121 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_5kw_Fan.resources 122 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_L1.resources 123 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.LinearReg.resources 124 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.LoadFrm.resources 125 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.WoSenPowerControl.resources 126 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HanSenPowerControl.resources 127 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.ParameModifica.resources 128 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_2p5kw.resources 129 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_4p5_Fan.resources 130 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_M2A_Pump.resources 131 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.Properties.Resources.resources 132 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csproj.GenerateResource.cache 133 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csproj.CoreCompileInputs.cache 134 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.exe 135 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.pdb 136 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_800w.resources 137 | D:\HC\WinformDemo\Demo\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_23KW_PowerSta.resources 138 | D:\Git\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe.config 139 | D:\Git\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.exe 140 | D:\Git\HCTestDemo\HCTestDemo\bin\Debug\HCTestDemo.pdb 141 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csproj.AssemblyReference.cache 142 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.BootLoadBinFile.resources 143 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\WinFormsChartSamples.RealTimeSample.resources 144 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.AnalogKB.resources 145 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.ExcelPathNameInit.resources 146 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_3kw_Pump.resources 147 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_5kw_Fan.resources 148 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_L1.resources 149 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.LinearReg.resources 150 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.LoadFrm.resources 151 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.WoSenPowerControl.resources 152 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HanSenPowerControl.resources 153 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.ParameModifica.resources 154 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_2p5kw.resources 155 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_4p5_Fan.resources 156 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_M2A_Pump.resources 157 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_800w.resources 158 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.HC_23KW_PowerSta.resources 159 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.Properties.Resources.resources 160 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csproj.GenerateResource.cache 161 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.csproj.CoreCompileInputs.cache 162 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.exe 163 | D:\Git\HCTestDemo\HCTestDemo\obj\Debug\HCTestDemo.pdb 164 | -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.csproj.GenerateResource.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.csproj.GenerateResource.cache -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.csprojResolveAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.csprojResolveAssemblyReference.cache -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.exe -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/HCTestDemo.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/HCTestDemo.pdb -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs -------------------------------------------------------------------------------- /HCTestDemo/obj/Debug/WinFormsChartSamples.RealTimeSample.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DendiOnline/HCTestDemo/da1f4e0766cfd7c5fd3f47e52cbd736a4947b799/HCTestDemo/obj/Debug/WinFormsChartSamples.RealTimeSample.resources -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # HCTestDemo 2 | 电机控制器上位机(包括CAN通讯、DBC解析发送、参数修改、自动存储数据等) 3 | --------------------------------------------------------------------------------