Ver código fonte

V1.2.7
1、控制参数增加轮毂电机保护温度阈值,助力参数增加轮毂踏频助力参数;
2、按照协议把预留位进行显示;
3、增加调试信息模式,电机在调试模式下自动发送调试信息,上位机增加显示和存储。

Dail 1 ano atrás
pai
commit
36027f1c7e

BIN
.vs/Welling_Motor_Debug_Tool/v17/.suo


+ 290 - 212
Welling_Motor_Debug_Tool/Form1.Designer.cs

@@ -331,6 +331,7 @@ namespace Welling_Motor_Debug_Tool
             this.textBox_FacModeWheelSize = new System.Windows.Forms.TextBox();
             this.label69 = new System.Windows.Forms.Label();
             this.groupBox22 = new System.Windows.Forms.GroupBox();
+            this.radioButton_FacModeDriverLG = new System.Windows.Forms.RadioButton();
             this.label_MotorSensor = new System.Windows.Forms.Label();
             this.label_Load = new System.Windows.Forms.Label();
             this.button_FacModeLightSW = new System.Windows.Forms.Button();
@@ -365,6 +366,7 @@ namespace Welling_Motor_Debug_Tool
             this.groupBox19 = new System.Windows.Forms.GroupBox();
             this.button_FacModeInit = new System.Windows.Forms.Button();
             this.tabPage_ProductMode = new System.Windows.Forms.TabPage();
+            this.label111 = new System.Windows.Forms.Label();
             this.label23 = new System.Windows.Forms.Label();
             this.label_RecCount = new System.Windows.Forms.Label();
             this.timer_1s = new System.Windows.Forms.Timer(this.components);
@@ -379,12 +381,10 @@ namespace Welling_Motor_Debug_Tool
             this.label_ServerStatus = new System.Windows.Forms.Label();
             this.label_PortStatus = new System.Windows.Forms.Label();
             this.pictureBox2 = new System.Windows.Forms.PictureBox();
-            this.radioButton_FacModeDriverLG = new System.Windows.Forms.RadioButton();
             this.label_Computername = new System.Windows.Forms.Label();
             this.label46 = new System.Windows.Forms.Label();
             this.tabControl2 = new System.Windows.Forms.TabControl();
             this.tabPage_RunInfo = new System.Windows.Forms.TabPage();
-            this.tabPage_DebugInfo = new System.Windows.Forms.TabPage();
             this.textBox_RunInfo_BikeSpeed = new System.Windows.Forms.TextBox();
             this.textBox_RunInfo_MotorSpeed = new System.Windows.Forms.TextBox();
             this.textBox_RunInfo_Cadence = new System.Windows.Forms.TextBox();
@@ -425,23 +425,30 @@ namespace Welling_Motor_Debug_Tool
             this.label17 = new System.Windows.Forms.Label();
             this.label11 = new System.Windows.Forms.Label();
             this.label5 = new System.Windows.Forms.Label();
-            this.textBox1 = new System.Windows.Forms.TextBox();
-            this.textBox2 = new System.Windows.Forms.TextBox();
-            this.textBox3 = new System.Windows.Forms.TextBox();
-            this.textBox4 = new System.Windows.Forms.TextBox();
-            this.textBox5 = new System.Windows.Forms.TextBox();
-            this.textBox6 = new System.Windows.Forms.TextBox();
-            this.textBox7 = new System.Windows.Forms.TextBox();
-            this.textBox8 = new System.Windows.Forms.TextBox();
-            this.textBox9 = new System.Windows.Forms.TextBox();
-            this.textBox11 = new System.Windows.Forms.TextBox();
-            this.textBox12 = new System.Windows.Forms.TextBox();
+            this.tabPage_DebugInfo = new System.Windows.Forms.TabPage();
+            this.textBox_DebugInfo_SysFun = new System.Windows.Forms.TextBox();
+            this.textBox_DebugInfo_AssistOut = new System.Windows.Forms.TextBox();
+            this.textBox_DebugInfo_IqFdb = new System.Windows.Forms.TextBox();
+            this.textBox_DebugInfo_IqRef = new System.Windows.Forms.TextBox();
+            this.textBox_DebugInfo_TorqueCadence = new System.Windows.Forms.TextBox();
+            this.textBox_DebugInfo_SecondFun = new System.Windows.Forms.TextBox();
+            this.textBox_DebugInfo_UdRef = new System.Windows.Forms.TextBox();
+            this.textBox_DebugInfo_AssistFun = new System.Windows.Forms.TextBox();
+            this.textBox_DebugInfo_MotorFun = new System.Windows.Forms.TextBox();
+            this.textBox_DebugInfo_UqRef = new System.Windows.Forms.TextBox();
+            this.textBox_DebugInfo_TorquePu = new System.Windows.Forms.TextBox();
+            this.textBox_DebugInfo_IdFdb = new System.Windows.Forms.TextBox();
+            this.textBox_DebugInfo_IdRef = new System.Windows.Forms.TextBox();
+            this.textBox_DebugInfo_TorqueFil = new System.Windows.Forms.TextBox();
             this.label97 = new System.Windows.Forms.Label();
+            this.label109 = new System.Windows.Forms.Label();
             this.label98 = new System.Windows.Forms.Label();
             this.label99 = new System.Windows.Forms.Label();
             this.label100 = new System.Windows.Forms.Label();
             this.label101 = new System.Windows.Forms.Label();
             this.label102 = new System.Windows.Forms.Label();
+            this.label110 = new System.Windows.Forms.Label();
+            this.label108 = new System.Windows.Forms.Label();
             this.label103 = new System.Windows.Forms.Label();
             this.label104 = new System.Windows.Forms.Label();
             this.label105 = new System.Windows.Forms.Label();
@@ -490,6 +497,7 @@ namespace Welling_Motor_Debug_Tool
             this.groupBox21.SuspendLayout();
             this.groupBox20.SuspendLayout();
             this.groupBox19.SuspendLayout();
+            this.tabPage_ProductMode.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit();
             this.tabControl2.SuspendLayout();
             this.tabPage_RunInfo.SuspendLayout();
@@ -528,7 +536,7 @@ namespace Welling_Motor_Debug_Tool
             // 刷新ToolStripMenuItem
             // 
             this.刷新ToolStripMenuItem.Name = "刷新ToolStripMenuItem";
-            this.刷新ToolStripMenuItem.Size = new System.Drawing.Size(180, 26);
+            this.刷新ToolStripMenuItem.Size = new System.Drawing.Size(160, 26);
             this.刷新ToolStripMenuItem.Text = "刷新";
             this.刷新ToolStripMenuItem.Click += new System.EventHandler(this.刷新ToolStripMenuItem_Click);
             // 
@@ -537,7 +545,7 @@ namespace Welling_Motor_Debug_Tool
             this.端口号ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
             this.toolStripComboBox_ComNum});
             this.端口号ToolStripMenuItem.Name = "端口号ToolStripMenuItem";
-            this.端口号ToolStripMenuItem.Size = new System.Drawing.Size(180, 26);
+            this.端口号ToolStripMenuItem.Size = new System.Drawing.Size(160, 26);
             this.端口号ToolStripMenuItem.Text = "端口号";
             this.端口号ToolStripMenuItem.Click += new System.EventHandler(this.ConfigFileSave_Click);
             // 
@@ -555,7 +563,7 @@ namespace Welling_Motor_Debug_Tool
             this.波特率ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
             this.toolStripComboBox_Baudrate});
             this.波特率ToolStripMenuItem.Name = "波特率ToolStripMenuItem";
-            this.波特率ToolStripMenuItem.Size = new System.Drawing.Size(180, 26);
+            this.波特率ToolStripMenuItem.Size = new System.Drawing.Size(160, 26);
             this.波特率ToolStripMenuItem.Text = "波特率";
             // 
             // toolStripComboBox_Baudrate
@@ -574,14 +582,14 @@ namespace Welling_Motor_Debug_Tool
             // 连接ToolStripMenuItem
             // 
             this.连接ToolStripMenuItem.Name = "连接ToolStripMenuItem";
-            this.连接ToolStripMenuItem.Size = new System.Drawing.Size(180, 26);
+            this.连接ToolStripMenuItem.Size = new System.Drawing.Size(160, 26);
             this.连接ToolStripMenuItem.Text = "连接";
             this.连接ToolStripMenuItem.Click += new System.EventHandler(this.连接ToolStripMenuItem_Click);
             // 
             // toolStripSeparator1
             // 
             this.toolStripSeparator1.Name = "toolStripSeparator1";
-            this.toolStripSeparator1.Size = new System.Drawing.Size(177, 6);
+            this.toolStripSeparator1.Size = new System.Drawing.Size(157, 6);
             // 
             // 其它配置项ToolStripMenuItem
             // 
@@ -590,7 +598,7 @@ namespace Welling_Motor_Debug_Tool
             this.断开关机ToolStripMenuItem,
             this.识别通讯盒ToolStripMenuItem});
             this.其它配置项ToolStripMenuItem.Name = "其它配置项ToolStripMenuItem";
-            this.其它配置项ToolStripMenuItem.Size = new System.Drawing.Size(180, 26);
+            this.其它配置项ToolStripMenuItem.Size = new System.Drawing.Size(160, 26);
             this.其它配置项ToolStripMenuItem.Text = "其它配置项";
             // 
             // 连接开机ToolStripMenuItem
@@ -878,14 +886,14 @@ namespace Welling_Motor_Debug_Tool
             // 开机ToolStripMenuItem
             // 
             this.开机ToolStripMenuItem.Name = "开机ToolStripMenuItem";
-            this.开机ToolStripMenuItem.Size = new System.Drawing.Size(112, 26);
+            this.开机ToolStripMenuItem.Size = new System.Drawing.Size(180, 26);
             this.开机ToolStripMenuItem.Text = "开机";
             this.开机ToolStripMenuItem.Click += new System.EventHandler(this.开机ToolStripMenuItem_Click);
             // 
             // 关机ToolStripMenuItem
             // 
             this.关机ToolStripMenuItem.Name = "关机ToolStripMenuItem";
-            this.关机ToolStripMenuItem.Size = new System.Drawing.Size(112, 26);
+            this.关机ToolStripMenuItem.Size = new System.Drawing.Size(180, 26);
             this.关机ToolStripMenuItem.Text = "关机";
             this.关机ToolStripMenuItem.Click += new System.EventHandler(this.关机ToolStripMenuItem_Click);
             // 
@@ -902,13 +910,13 @@ namespace Welling_Motor_Debug_Tool
             // 帮助ToolStripMenuItem
             // 
             this.帮助ToolStripMenuItem.Name = "帮助ToolStripMenuItem";
-            this.帮助ToolStripMenuItem.Size = new System.Drawing.Size(180, 26);
+            this.帮助ToolStripMenuItem.Size = new System.Drawing.Size(144, 26);
             this.帮助ToolStripMenuItem.Text = "查看帮助";
             // 
             // 版本ToolStripMenuItem
             // 
             this.版本ToolStripMenuItem.Name = "版本ToolStripMenuItem";
-            this.版本ToolStripMenuItem.Size = new System.Drawing.Size(180, 26);
+            this.版本ToolStripMenuItem.Size = new System.Drawing.Size(144, 26);
             this.版本ToolStripMenuItem.Text = "版本信息";
             // 
             // statusStrip1
@@ -960,21 +968,11 @@ namespace Welling_Motor_Debug_Tool
             // 
             this.numericUpDown_SpeedAdj.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(224)))), ((int)(((byte)(192)))));
             this.numericUpDown_SpeedAdj.Location = new System.Drawing.Point(85, 148);
-            this.numericUpDown_SpeedAdj.Minimum = new decimal(new int[] {
-            2,
-            0,
-            0,
-            0});
             this.numericUpDown_SpeedAdj.Name = "numericUpDown_SpeedAdj";
             this.numericUpDown_SpeedAdj.ReadOnly = true;
             this.numericUpDown_SpeedAdj.Size = new System.Drawing.Size(73, 28);
             this.numericUpDown_SpeedAdj.TabIndex = 5;
             this.numericUpDown_SpeedAdj.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
-            this.numericUpDown_SpeedAdj.Value = new decimal(new int[] {
-            2,
-            0,
-            0,
-            0});
             this.numericUpDown_SpeedAdj.ValueChanged += new System.EventHandler(this.numericUpDown_SpeedAdj_ValueChanged);
             // 
             // label4
@@ -1600,7 +1598,7 @@ namespace Welling_Motor_Debug_Tool
             this.tabPage_DebugParam.Name = "tabPage_DebugParam";
             this.tabPage_DebugParam.Size = new System.Drawing.Size(990, 315);
             this.tabPage_DebugParam.TabIndex = 5;
-            this.tabPage_DebugParam.Text = "调试模式";
+            this.tabPage_DebugParam.Text = "调试参数";
             // 
             // button_WriteDebugParam
             // 
@@ -1675,11 +1673,11 @@ namespace Welling_Motor_Debug_Tool
             this.textBox_LogAddrEnd.Font = new System.Drawing.Font("Microsoft YaHei UI", 12F);
             this.textBox_LogAddrEnd.Location = new System.Drawing.Point(858, 97);
             this.textBox_LogAddrEnd.Name = "textBox_LogAddrEnd";
-            this.textBox_LogAddrEnd.ReadOnly = true;
             this.textBox_LogAddrEnd.Size = new System.Drawing.Size(126, 28);
             this.textBox_LogAddrEnd.TabIndex = 11;
             this.textBox_LogAddrEnd.Text = "0801FFFF";
             this.textBox_LogAddrEnd.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
+            this.textBox_LogAddrEnd.KeyDown += new System.Windows.Forms.KeyEventHandler(this.ConfigFileSave_KeyDown);
             // 
             // label_LogAddrBegin
             // 
@@ -1697,11 +1695,11 @@ namespace Welling_Motor_Debug_Tool
             this.textBox_LogAddrBegin.Font = new System.Drawing.Font("Microsoft YaHei UI", 12F);
             this.textBox_LogAddrBegin.Location = new System.Drawing.Point(858, 36);
             this.textBox_LogAddrBegin.Name = "textBox_LogAddrBegin";
-            this.textBox_LogAddrBegin.ReadOnly = true;
             this.textBox_LogAddrBegin.Size = new System.Drawing.Size(126, 28);
             this.textBox_LogAddrBegin.TabIndex = 9;
             this.textBox_LogAddrBegin.Text = "0801F800";
             this.textBox_LogAddrBegin.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
+            this.textBox_LogAddrBegin.KeyDown += new System.Windows.Forms.KeyEventHandler(this.ConfigFileSave_KeyDown);
             // 
             // button_SaveRecordInfo
             // 
@@ -3714,6 +3712,18 @@ namespace Welling_Motor_Debug_Tool
             this.groupBox22.TabStop = false;
             this.groupBox22.Text = "驱动测试";
             // 
+            // radioButton_FacModeDriverLG
+            // 
+            this.radioButton_FacModeDriverLG.AutoSize = true;
+            this.radioButton_FacModeDriverLG.Font = new System.Drawing.Font("Microsoft YaHei UI", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.radioButton_FacModeDriverLG.Location = new System.Drawing.Point(149, 53);
+            this.radioButton_FacModeDriverLG.Name = "radioButton_FacModeDriverLG";
+            this.radioButton_FacModeDriverLG.Size = new System.Drawing.Size(44, 24);
+            this.radioButton_FacModeDriverLG.TabIndex = 22;
+            this.radioButton_FacModeDriverLG.TabStop = true;
+            this.radioButton_FacModeDriverLG.Text = "LG";
+            this.radioButton_FacModeDriverLG.UseVisualStyleBackColor = true;
+            // 
             // label_MotorSensor
             // 
             this.label_MotorSensor.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
@@ -3757,7 +3767,7 @@ namespace Welling_Motor_Debug_Tool
             this.label_FacModeMotorSpeedSet.Name = "label_FacModeMotorSpeedSet";
             this.label_FacModeMotorSpeedSet.Size = new System.Drawing.Size(26, 17);
             this.label_FacModeMotorSpeedSet.TabIndex = 19;
-            this.label_FacModeMotorSpeedSet.Text = "2%";
+            this.label_FacModeMotorSpeedSet.Text = "0%";
             this.label_FacModeMotorSpeedSet.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
             // 
             // label67
@@ -3774,12 +3784,10 @@ namespace Welling_Motor_Debug_Tool
             // 
             this.trackBar_FacModeMotorSpeedAdj.Location = new System.Drawing.Point(6, 153);
             this.trackBar_FacModeMotorSpeedAdj.Maximum = 100;
-            this.trackBar_FacModeMotorSpeedAdj.Minimum = 2;
             this.trackBar_FacModeMotorSpeedAdj.Name = "trackBar_FacModeMotorSpeedAdj";
             this.trackBar_FacModeMotorSpeedAdj.Size = new System.Drawing.Size(181, 45);
             this.trackBar_FacModeMotorSpeedAdj.TabIndex = 17;
             this.trackBar_FacModeMotorSpeedAdj.TickStyle = System.Windows.Forms.TickStyle.Both;
-            this.trackBar_FacModeMotorSpeedAdj.Value = 2;
             this.trackBar_FacModeMotorSpeedAdj.ValueChanged += new System.EventHandler(this.trackBar_FacModeMotorSpeedAdj_ValueChanged);
             // 
             // button_FacModeMotorRun
@@ -4086,12 +4094,25 @@ namespace Welling_Motor_Debug_Tool
             // tabPage_ProductMode
             // 
             this.tabPage_ProductMode.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.tabPage_ProductMode.Controls.Add(this.label111);
             this.tabPage_ProductMode.Location = new System.Drawing.Point(4, 30);
             this.tabPage_ProductMode.Name = "tabPage_ProductMode";
             this.tabPage_ProductMode.Size = new System.Drawing.Size(990, 315);
             this.tabPage_ProductMode.TabIndex = 11;
             this.tabPage_ProductMode.Text = "工厂模式";
             // 
+            // label111
+            // 
+            this.label111.AutoSize = true;
+            this.label111.Font = new System.Drawing.Font("Microsoft YaHei UI", 42F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label111.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(192)))), ((int)(((byte)(192)))));
+            this.label111.Location = new System.Drawing.Point(337, 117);
+            this.label111.Name = "label111";
+            this.label111.Size = new System.Drawing.Size(292, 75);
+            this.label111.TabIndex = 5;
+            this.label111.Text = "开发中……";
+            this.label111.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
             // label23
             // 
             this.label23.AutoSize = true;
@@ -4229,18 +4250,6 @@ namespace Welling_Motor_Debug_Tool
             this.pictureBox2.TabIndex = 16;
             this.pictureBox2.TabStop = false;
             // 
-            // radioButton_FacModeDriverLG
-            // 
-            this.radioButton_FacModeDriverLG.AutoSize = true;
-            this.radioButton_FacModeDriverLG.Font = new System.Drawing.Font("Microsoft YaHei UI", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.radioButton_FacModeDriverLG.Location = new System.Drawing.Point(149, 53);
-            this.radioButton_FacModeDriverLG.Name = "radioButton_FacModeDriverLG";
-            this.radioButton_FacModeDriverLG.Size = new System.Drawing.Size(44, 24);
-            this.radioButton_FacModeDriverLG.TabIndex = 22;
-            this.radioButton_FacModeDriverLG.TabStop = true;
-            this.radioButton_FacModeDriverLG.Text = "LG";
-            this.radioButton_FacModeDriverLG.UseVisualStyleBackColor = true;
-            // 
             // label_Computername
             // 
             this.label_Computername.BackColor = System.Drawing.Color.DodgerBlue;
@@ -4320,38 +4329,6 @@ namespace Welling_Motor_Debug_Tool
             this.tabPage_RunInfo.TabIndex = 0;
             this.tabPage_RunInfo.Text = "运行信息";
             // 
-            // tabPage_DebugInfo
-            // 
-            this.tabPage_DebugInfo.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.tabPage_DebugInfo.Controls.Add(this.textBox1);
-            this.tabPage_DebugInfo.Controls.Add(this.textBox2);
-            this.tabPage_DebugInfo.Controls.Add(this.textBox3);
-            this.tabPage_DebugInfo.Controls.Add(this.textBox4);
-            this.tabPage_DebugInfo.Controls.Add(this.textBox5);
-            this.tabPage_DebugInfo.Controls.Add(this.textBox6);
-            this.tabPage_DebugInfo.Controls.Add(this.textBox7);
-            this.tabPage_DebugInfo.Controls.Add(this.textBox8);
-            this.tabPage_DebugInfo.Controls.Add(this.textBox9);
-            this.tabPage_DebugInfo.Controls.Add(this.textBox11);
-            this.tabPage_DebugInfo.Controls.Add(this.textBox12);
-            this.tabPage_DebugInfo.Controls.Add(this.label97);
-            this.tabPage_DebugInfo.Controls.Add(this.label98);
-            this.tabPage_DebugInfo.Controls.Add(this.label99);
-            this.tabPage_DebugInfo.Controls.Add(this.label100);
-            this.tabPage_DebugInfo.Controls.Add(this.label101);
-            this.tabPage_DebugInfo.Controls.Add(this.label102);
-            this.tabPage_DebugInfo.Controls.Add(this.label103);
-            this.tabPage_DebugInfo.Controls.Add(this.label104);
-            this.tabPage_DebugInfo.Controls.Add(this.label105);
-            this.tabPage_DebugInfo.Controls.Add(this.label106);
-            this.tabPage_DebugInfo.Controls.Add(this.label107);
-            this.tabPage_DebugInfo.Location = new System.Drawing.Point(4, 30);
-            this.tabPage_DebugInfo.Name = "tabPage_DebugInfo";
-            this.tabPage_DebugInfo.Padding = new System.Windows.Forms.Padding(3);
-            this.tabPage_DebugInfo.Size = new System.Drawing.Size(805, 162);
-            this.tabPage_DebugInfo.TabIndex = 1;
-            this.tabPage_DebugInfo.Text = "调试信息";
-            // 
             // textBox_RunInfo_BikeSpeed
             // 
             this.textBox_RunInfo_BikeSpeed.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
@@ -4712,122 +4689,196 @@ namespace Welling_Motor_Debug_Tool
             this.label5.TabIndex = 6;
             this.label5.Text = "车速";
             // 
-            // textBox1
-            // 
-            this.textBox1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.textBox1.Location = new System.Drawing.Point(104, 6);
-            this.textBox1.Name = "textBox1";
-            this.textBox1.ReadOnly = true;
-            this.textBox1.Size = new System.Drawing.Size(85, 28);
-            this.textBox1.TabIndex = 61;
-            // 
-            // textBox2
-            // 
-            this.textBox2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.textBox2.Location = new System.Drawing.Point(271, 42);
-            this.textBox2.Name = "textBox2";
-            this.textBox2.ReadOnly = true;
-            this.textBox2.Size = new System.Drawing.Size(85, 28);
-            this.textBox2.TabIndex = 56;
-            // 
-            // textBox3
-            // 
-            this.textBox3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.textBox3.Location = new System.Drawing.Point(439, 78);
-            this.textBox3.Name = "textBox3";
-            this.textBox3.ReadOnly = true;
-            this.textBox3.Size = new System.Drawing.Size(85, 28);
-            this.textBox3.TabIndex = 57;
-            // 
-            // textBox4
-            // 
-            this.textBox4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.textBox4.Location = new System.Drawing.Point(104, 42);
-            this.textBox4.Name = "textBox4";
-            this.textBox4.ReadOnly = true;
-            this.textBox4.Size = new System.Drawing.Size(85, 28);
-            this.textBox4.TabIndex = 58;
-            // 
-            // textBox5
-            // 
-            this.textBox5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.textBox5.Location = new System.Drawing.Point(271, 78);
-            this.textBox5.Name = "textBox5";
-            this.textBox5.ReadOnly = true;
-            this.textBox5.Size = new System.Drawing.Size(85, 28);
-            this.textBox5.TabIndex = 59;
-            // 
-            // textBox6
-            // 
-            this.textBox6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.textBox6.Location = new System.Drawing.Point(104, 114);
-            this.textBox6.Name = "textBox6";
-            this.textBox6.ReadOnly = true;
-            this.textBox6.Size = new System.Drawing.Size(85, 28);
-            this.textBox6.TabIndex = 55;
-            // 
-            // textBox7
-            // 
-            this.textBox7.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.textBox7.Location = new System.Drawing.Point(104, 78);
-            this.textBox7.Name = "textBox7";
-            this.textBox7.ReadOnly = true;
-            this.textBox7.Size = new System.Drawing.Size(85, 28);
-            this.textBox7.TabIndex = 65;
-            // 
-            // textBox8
-            // 
-            this.textBox8.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.textBox8.Location = new System.Drawing.Point(271, 114);
-            this.textBox8.Name = "textBox8";
-            this.textBox8.ReadOnly = true;
-            this.textBox8.Size = new System.Drawing.Size(85, 28);
-            this.textBox8.TabIndex = 62;
-            // 
-            // textBox9
-            // 
-            this.textBox9.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.textBox9.Location = new System.Drawing.Point(439, 6);
-            this.textBox9.Name = "textBox9";
-            this.textBox9.ReadOnly = true;
-            this.textBox9.Size = new System.Drawing.Size(85, 28);
-            this.textBox9.TabIndex = 63;
-            // 
-            // textBox11
-            // 
-            this.textBox11.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.textBox11.Location = new System.Drawing.Point(271, 6);
-            this.textBox11.Name = "textBox11";
-            this.textBox11.ReadOnly = true;
-            this.textBox11.Size = new System.Drawing.Size(85, 28);
-            this.textBox11.TabIndex = 64;
-            // 
-            // textBox12
-            // 
-            this.textBox12.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.textBox12.Location = new System.Drawing.Point(439, 42);
-            this.textBox12.Name = "textBox12";
-            this.textBox12.ReadOnly = true;
-            this.textBox12.Size = new System.Drawing.Size(85, 28);
-            this.textBox12.TabIndex = 60;
+            // tabPage_DebugInfo
+            // 
+            this.tabPage_DebugInfo.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.tabPage_DebugInfo.Controls.Add(this.textBox_DebugInfo_SysFun);
+            this.tabPage_DebugInfo.Controls.Add(this.textBox_DebugInfo_AssistOut);
+            this.tabPage_DebugInfo.Controls.Add(this.textBox_DebugInfo_IqFdb);
+            this.tabPage_DebugInfo.Controls.Add(this.textBox_DebugInfo_IqRef);
+            this.tabPage_DebugInfo.Controls.Add(this.textBox_DebugInfo_TorqueCadence);
+            this.tabPage_DebugInfo.Controls.Add(this.textBox_DebugInfo_SecondFun);
+            this.tabPage_DebugInfo.Controls.Add(this.textBox_DebugInfo_UdRef);
+            this.tabPage_DebugInfo.Controls.Add(this.textBox_DebugInfo_AssistFun);
+            this.tabPage_DebugInfo.Controls.Add(this.textBox_DebugInfo_MotorFun);
+            this.tabPage_DebugInfo.Controls.Add(this.textBox_DebugInfo_UqRef);
+            this.tabPage_DebugInfo.Controls.Add(this.textBox_DebugInfo_TorquePu);
+            this.tabPage_DebugInfo.Controls.Add(this.textBox_DebugInfo_IdFdb);
+            this.tabPage_DebugInfo.Controls.Add(this.textBox_DebugInfo_IdRef);
+            this.tabPage_DebugInfo.Controls.Add(this.textBox_DebugInfo_TorqueFil);
+            this.tabPage_DebugInfo.Controls.Add(this.label97);
+            this.tabPage_DebugInfo.Controls.Add(this.label109);
+            this.tabPage_DebugInfo.Controls.Add(this.label98);
+            this.tabPage_DebugInfo.Controls.Add(this.label99);
+            this.tabPage_DebugInfo.Controls.Add(this.label100);
+            this.tabPage_DebugInfo.Controls.Add(this.label101);
+            this.tabPage_DebugInfo.Controls.Add(this.label102);
+            this.tabPage_DebugInfo.Controls.Add(this.label110);
+            this.tabPage_DebugInfo.Controls.Add(this.label108);
+            this.tabPage_DebugInfo.Controls.Add(this.label103);
+            this.tabPage_DebugInfo.Controls.Add(this.label104);
+            this.tabPage_DebugInfo.Controls.Add(this.label105);
+            this.tabPage_DebugInfo.Controls.Add(this.label106);
+            this.tabPage_DebugInfo.Controls.Add(this.label107);
+            this.tabPage_DebugInfo.Location = new System.Drawing.Point(4, 30);
+            this.tabPage_DebugInfo.Name = "tabPage_DebugInfo";
+            this.tabPage_DebugInfo.Padding = new System.Windows.Forms.Padding(3);
+            this.tabPage_DebugInfo.Size = new System.Drawing.Size(805, 162);
+            this.tabPage_DebugInfo.TabIndex = 1;
+            this.tabPage_DebugInfo.Text = "调试信息";
+            // 
+            // textBox_DebugInfo_SysFun
+            // 
+            this.textBox_DebugInfo_SysFun.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.textBox_DebugInfo_SysFun.Location = new System.Drawing.Point(104, 6);
+            this.textBox_DebugInfo_SysFun.Name = "textBox_DebugInfo_SysFun";
+            this.textBox_DebugInfo_SysFun.ReadOnly = true;
+            this.textBox_DebugInfo_SysFun.Size = new System.Drawing.Size(60, 28);
+            this.textBox_DebugInfo_SysFun.TabIndex = 61;
+            // 
+            // textBox_DebugInfo_AssistOut
+            // 
+            this.textBox_DebugInfo_AssistOut.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.textBox_DebugInfo_AssistOut.Location = new System.Drawing.Point(634, 42);
+            this.textBox_DebugInfo_AssistOut.Name = "textBox_DebugInfo_AssistOut";
+            this.textBox_DebugInfo_AssistOut.ReadOnly = true;
+            this.textBox_DebugInfo_AssistOut.Size = new System.Drawing.Size(60, 28);
+            this.textBox_DebugInfo_AssistOut.TabIndex = 56;
+            // 
+            // textBox_DebugInfo_IqFdb
+            // 
+            this.textBox_DebugInfo_IqFdb.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.textBox_DebugInfo_IqFdb.Location = new System.Drawing.Point(634, 6);
+            this.textBox_DebugInfo_IqFdb.Name = "textBox_DebugInfo_IqFdb";
+            this.textBox_DebugInfo_IqFdb.ReadOnly = true;
+            this.textBox_DebugInfo_IqFdb.Size = new System.Drawing.Size(60, 28);
+            this.textBox_DebugInfo_IqFdb.TabIndex = 56;
+            // 
+            // textBox_DebugInfo_IqRef
+            // 
+            this.textBox_DebugInfo_IqRef.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.textBox_DebugInfo_IqRef.Location = new System.Drawing.Point(278, 42);
+            this.textBox_DebugInfo_IqRef.Name = "textBox_DebugInfo_IqRef";
+            this.textBox_DebugInfo_IqRef.ReadOnly = true;
+            this.textBox_DebugInfo_IqRef.Size = new System.Drawing.Size(60, 28);
+            this.textBox_DebugInfo_IqRef.TabIndex = 56;
+            // 
+            // textBox_DebugInfo_TorqueCadence
+            // 
+            this.textBox_DebugInfo_TorqueCadence.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.textBox_DebugInfo_TorqueCadence.Location = new System.Drawing.Point(456, 78);
+            this.textBox_DebugInfo_TorqueCadence.Name = "textBox_DebugInfo_TorqueCadence";
+            this.textBox_DebugInfo_TorqueCadence.ReadOnly = true;
+            this.textBox_DebugInfo_TorqueCadence.Size = new System.Drawing.Size(60, 28);
+            this.textBox_DebugInfo_TorqueCadence.TabIndex = 57;
+            // 
+            // textBox_DebugInfo_SecondFun
+            // 
+            this.textBox_DebugInfo_SecondFun.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.textBox_DebugInfo_SecondFun.Location = new System.Drawing.Point(104, 42);
+            this.textBox_DebugInfo_SecondFun.Name = "textBox_DebugInfo_SecondFun";
+            this.textBox_DebugInfo_SecondFun.ReadOnly = true;
+            this.textBox_DebugInfo_SecondFun.Size = new System.Drawing.Size(60, 28);
+            this.textBox_DebugInfo_SecondFun.TabIndex = 58;
+            // 
+            // textBox_DebugInfo_UdRef
+            // 
+            this.textBox_DebugInfo_UdRef.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.textBox_DebugInfo_UdRef.Location = new System.Drawing.Point(278, 78);
+            this.textBox_DebugInfo_UdRef.Name = "textBox_DebugInfo_UdRef";
+            this.textBox_DebugInfo_UdRef.ReadOnly = true;
+            this.textBox_DebugInfo_UdRef.Size = new System.Drawing.Size(60, 28);
+            this.textBox_DebugInfo_UdRef.TabIndex = 59;
+            // 
+            // textBox_DebugInfo_AssistFun
+            // 
+            this.textBox_DebugInfo_AssistFun.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.textBox_DebugInfo_AssistFun.Location = new System.Drawing.Point(104, 114);
+            this.textBox_DebugInfo_AssistFun.Name = "textBox_DebugInfo_AssistFun";
+            this.textBox_DebugInfo_AssistFun.ReadOnly = true;
+            this.textBox_DebugInfo_AssistFun.Size = new System.Drawing.Size(60, 28);
+            this.textBox_DebugInfo_AssistFun.TabIndex = 55;
+            // 
+            // textBox_DebugInfo_MotorFun
+            // 
+            this.textBox_DebugInfo_MotorFun.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.textBox_DebugInfo_MotorFun.Location = new System.Drawing.Point(104, 78);
+            this.textBox_DebugInfo_MotorFun.Name = "textBox_DebugInfo_MotorFun";
+            this.textBox_DebugInfo_MotorFun.ReadOnly = true;
+            this.textBox_DebugInfo_MotorFun.Size = new System.Drawing.Size(60, 28);
+            this.textBox_DebugInfo_MotorFun.TabIndex = 65;
+            // 
+            // textBox_DebugInfo_UqRef
+            // 
+            this.textBox_DebugInfo_UqRef.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.textBox_DebugInfo_UqRef.Location = new System.Drawing.Point(278, 114);
+            this.textBox_DebugInfo_UqRef.Name = "textBox_DebugInfo_UqRef";
+            this.textBox_DebugInfo_UqRef.ReadOnly = true;
+            this.textBox_DebugInfo_UqRef.Size = new System.Drawing.Size(60, 28);
+            this.textBox_DebugInfo_UqRef.TabIndex = 62;
+            // 
+            // textBox_DebugInfo_TorquePu
+            // 
+            this.textBox_DebugInfo_TorquePu.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.textBox_DebugInfo_TorquePu.Location = new System.Drawing.Point(456, 6);
+            this.textBox_DebugInfo_TorquePu.Name = "textBox_DebugInfo_TorquePu";
+            this.textBox_DebugInfo_TorquePu.ReadOnly = true;
+            this.textBox_DebugInfo_TorquePu.Size = new System.Drawing.Size(60, 28);
+            this.textBox_DebugInfo_TorquePu.TabIndex = 63;
+            // 
+            // textBox_DebugInfo_IdFdb
+            // 
+            this.textBox_DebugInfo_IdFdb.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.textBox_DebugInfo_IdFdb.Location = new System.Drawing.Point(456, 114);
+            this.textBox_DebugInfo_IdFdb.Name = "textBox_DebugInfo_IdFdb";
+            this.textBox_DebugInfo_IdFdb.ReadOnly = true;
+            this.textBox_DebugInfo_IdFdb.Size = new System.Drawing.Size(60, 28);
+            this.textBox_DebugInfo_IdFdb.TabIndex = 64;
+            // 
+            // textBox_DebugInfo_IdRef
+            // 
+            this.textBox_DebugInfo_IdRef.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.textBox_DebugInfo_IdRef.Location = new System.Drawing.Point(278, 6);
+            this.textBox_DebugInfo_IdRef.Name = "textBox_DebugInfo_IdRef";
+            this.textBox_DebugInfo_IdRef.ReadOnly = true;
+            this.textBox_DebugInfo_IdRef.Size = new System.Drawing.Size(60, 28);
+            this.textBox_DebugInfo_IdRef.TabIndex = 64;
+            // 
+            // textBox_DebugInfo_TorqueFil
+            // 
+            this.textBox_DebugInfo_TorqueFil.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.textBox_DebugInfo_TorqueFil.Location = new System.Drawing.Point(456, 42);
+            this.textBox_DebugInfo_TorqueFil.Name = "textBox_DebugInfo_TorqueFil";
+            this.textBox_DebugInfo_TorqueFil.ReadOnly = true;
+            this.textBox_DebugInfo_TorqueFil.Size = new System.Drawing.Size(60, 28);
+            this.textBox_DebugInfo_TorqueFil.TabIndex = 60;
             // 
             // label97
             // 
             this.label97.AutoSize = true;
-            this.label97.Location = new System.Drawing.Point(362, 46);
+            this.label97.Location = new System.Drawing.Point(344, 46);
             this.label97.Name = "label97";
-            this.label97.Size = new System.Drawing.Size(74, 21);
+            this.label97.Size = new System.Drawing.Size(106, 21);
             this.label97.TabIndex = 45;
-            this.label97.Text = "滤波力矩";
+            this.label97.Text = "时间滤波力矩";
+            // 
+            // label109
+            // 
+            this.label109.AutoSize = true;
+            this.label109.Location = new System.Drawing.Point(344, 118);
+            this.label109.Name = "label109";
+            this.label109.Size = new System.Drawing.Size(102, 21);
+            this.label109.TabIndex = 46;
+            this.label109.Text = "D轴电流反馈";
             // 
             // label98
             // 
             this.label98.AutoSize = true;
-            this.label98.Location = new System.Drawing.Point(195, 10);
+            this.label98.Location = new System.Drawing.Point(170, 10);
             this.label98.Name = "label98";
-            this.label98.Size = new System.Drawing.Size(70, 21);
+            this.label98.Size = new System.Drawing.Size(102, 21);
             this.label98.TabIndex = 46;
-            this.label98.Text = "D轴电流";
+            this.label98.Text = "D轴电流给定";
             // 
             // label99
             // 
@@ -4841,11 +4892,11 @@ namespace Welling_Motor_Debug_Tool
             // label100
             // 
             this.label100.AutoSize = true;
-            this.label100.Location = new System.Drawing.Point(195, 82);
+            this.label100.Location = new System.Drawing.Point(170, 82);
             this.label100.Name = "label100";
-            this.label100.Size = new System.Drawing.Size(70, 21);
+            this.label100.Size = new System.Drawing.Size(102, 21);
             this.label100.TabIndex = 48;
-            this.label100.Text = "D轴电压";
+            this.label100.Text = "D轴电压给定";
             // 
             // label101
             // 
@@ -4859,11 +4910,29 @@ namespace Welling_Motor_Debug_Tool
             // label102
             // 
             this.label102.AutoSize = true;
-            this.label102.Location = new System.Drawing.Point(195, 118);
+            this.label102.Location = new System.Drawing.Point(170, 118);
             this.label102.Name = "label102";
-            this.label102.Size = new System.Drawing.Size(71, 21);
+            this.label102.Size = new System.Drawing.Size(103, 21);
             this.label102.TabIndex = 49;
-            this.label102.Text = "Q轴电压";
+            this.label102.Text = "Q轴电压给定";
+            // 
+            // label110
+            // 
+            this.label110.AutoSize = true;
+            this.label110.Location = new System.Drawing.Point(522, 46);
+            this.label110.Name = "label110";
+            this.label110.Size = new System.Drawing.Size(106, 21);
+            this.label110.TabIndex = 51;
+            this.label110.Text = "助力输出电流";
+            // 
+            // label108
+            // 
+            this.label108.AutoSize = true;
+            this.label108.Location = new System.Drawing.Point(522, 10);
+            this.label108.Name = "label108";
+            this.label108.Size = new System.Drawing.Size(103, 21);
+            this.label108.TabIndex = 51;
+            this.label108.Text = "Q轴电流反馈";
             // 
             // label103
             // 
@@ -4877,16 +4946,16 @@ namespace Welling_Motor_Debug_Tool
             // label104
             // 
             this.label104.AutoSize = true;
-            this.label104.Location = new System.Drawing.Point(195, 46);
+            this.label104.Location = new System.Drawing.Point(170, 46);
             this.label104.Name = "label104";
-            this.label104.Size = new System.Drawing.Size(71, 21);
+            this.label104.Size = new System.Drawing.Size(103, 21);
             this.label104.TabIndex = 51;
-            this.label104.Text = "Q轴电流";
+            this.label104.Text = "Q轴电流给定";
             // 
             // label105
             // 
             this.label105.AutoSize = true;
-            this.label105.Location = new System.Drawing.Point(362, 10);
+            this.label105.Location = new System.Drawing.Point(344, 10);
             this.label105.Name = "label105";
             this.label105.Size = new System.Drawing.Size(74, 21);
             this.label105.TabIndex = 52;
@@ -4895,11 +4964,11 @@ namespace Welling_Motor_Debug_Tool
             // label106
             // 
             this.label106.AutoSize = true;
-            this.label106.Location = new System.Drawing.Point(362, 82);
+            this.label106.Location = new System.Drawing.Point(344, 82);
             this.label106.Name = "label106";
-            this.label106.Size = new System.Drawing.Size(74, 21);
+            this.label106.Size = new System.Drawing.Size(106, 21);
             this.label106.TabIndex = 54;
-            this.label106.Text = "踏频力矩";
+            this.label106.Text = "踏频滤波力矩";
             // 
             // label107
             // 
@@ -5015,6 +5084,8 @@ namespace Welling_Motor_Debug_Tool
             this.groupBox20.ResumeLayout(false);
             this.groupBox20.PerformLayout();
             this.groupBox19.ResumeLayout(false);
+            this.tabPage_ProductMode.ResumeLayout(false);
+            this.tabPage_ProductMode.PerformLayout();
             ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit();
             this.tabControl2.ResumeLayout(false);
             this.tabPage_RunInfo.ResumeLayout(false);
@@ -5420,17 +5491,20 @@ namespace Welling_Motor_Debug_Tool
         private Label label11;
         private Label label5;
         private TabPage tabPage_DebugInfo;
-        private TextBox textBox1;
-        private TextBox textBox2;
-        private TextBox textBox3;
-        private TextBox textBox4;
-        private TextBox textBox5;
-        private TextBox textBox6;
-        private TextBox textBox7;
-        private TextBox textBox8;
-        private TextBox textBox9;
-        private TextBox textBox11;
-        private TextBox textBox12;
+        private TextBox textBox_DebugInfo_SysFun;
+        private TextBox textBox_DebugInfo_SecondFun;
+        private TextBox textBox_DebugInfo_MotorFun;
+        private TextBox textBox_DebugInfo_AssistFun;
+        private TextBox textBox_DebugInfo_IdRef;
+        private TextBox textBox_DebugInfo_IqRef;
+        private TextBox textBox_DebugInfo_UdRef;
+        private TextBox textBox_DebugInfo_UqRef;
+        private TextBox textBox_DebugInfo_TorquePu;
+        private TextBox textBox_DebugInfo_TorqueFil;
+        private TextBox textBox_DebugInfo_TorqueCadence;               
+        private TextBox textBox_DebugInfo_IdFdb;
+        private TextBox textBox_DebugInfo_IqFdb;
+        private TextBox textBox_DebugInfo_AssistOut;
         private Label label97;
         private Label label98;
         private Label label99;
@@ -5441,6 +5515,10 @@ namespace Welling_Motor_Debug_Tool
         private Label label104;
         private Label label105;
         private Label label106;
-        private Label label107;
+        private Label label107;        
+        private Label label109;
+        private Label label110;
+        private Label label108;
+        private Label label111;
     }
 }

+ 135 - 8
Welling_Motor_Debug_Tool/Form1.cs

@@ -27,6 +27,9 @@ namespace Welling_Motor_Debug_Tool
         //MC运行信息超时计数
         bool MC_RunInfo_Refresh = false;
         ushort MC_RunInfo_Refresh_Cnt = 0;
+        //MC调试信息超时计数
+        bool MC_DebugInfo_Refresh = false;
+        ushort MC_DebugInfo_Refresh_Cnt = 0;
         //MC故障码超时计数
         bool MC_ErrorCode_Refresh = false;
         ushort MC_ErrorCode_Refresh_Cnt = 0;
@@ -118,29 +121,37 @@ namespace Welling_Motor_Debug_Tool
                 //解析配置文件
                 try
                 {
+                    //Port Set
                     PortNumSave = array_CfgInfo[1].ToString().Split(':')[1];
                     PortBaudrateSave = array_CfgInfo[2].ToString().Split(':')[1];
                     连接开机ToolStripMenuItem.Checked = (array_CfgInfo[3].ToString().Split(':')[1] == "True");
                     断开关机ToolStripMenuItem.Checked = (array_CfgInfo[4].ToString().Split(':')[1] == "True");
                     识别通讯盒ToolStripMenuItem.Checked = (array_CfgInfo[5].ToString().Split(':')[1] == "True");
+                    //Option
                     写入存储ToolStripMenuItem.Checked = (array_CfgInfo[8].ToString().Split(':')[1] == "True");
                     允许ToolStripMenuItem.Checked = (array_CfgInfo[9].ToString().Split(':')[1] == "True");
                     不允许ToolStripMenuItem.Checked = (array_CfgInfo[9].ToString().Split(':')[1] == "False");
+                    //Server Set
                     toolStripTextBox_ServerIP.Text = array_CfgInfo[12].ToString().Split(':')[1];
                     toolStripTextBox_ServerPort.Text = array_CfgInfo[13].ToString().Split(':')[1];
                     toolStripTextBox_ServerUser.Text = array_CfgInfo[14].ToString().Split(':')[1];
                     toolStripTextBox_ServerPasswd.Text = array_CfgInfo[15].ToString().Split(':')[1];
                     toolStripTextBox_ServerPath.Text = array_CfgInfo[16].ToString().Split(':')[1];
+                    //MacInfo
                     toolStripTextBox_MAC.Text= array_CfgInfo[19].ToString().Split(':')[1];
                     toolStripTextBoxMACAddr.Text = array_CfgInfo[20].ToString().Split(':')[1];
                     toolStripTextBox_MACDate.Text = DateTime.Now.ToString("yyyyMMdd");
                     toolStripTextBox_MACPD.Text = array_CfgInfo[22].ToString().Split(':')[1];
+                    //Log Address
+                    textBox_LogAddrBegin.Text = array_CfgInfo[25].ToString().Split(':')[1];
+                    textBox_LogAddrEnd.Text = array_CfgInfo[26].ToString().Split(':')[1];
                 }
                 catch (System.Exception)
                 {
                     timer_1s.Enabled = false;
-                    MessageBox.Show("参数格式错误,写入默认值!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                    MessageBox.Show("参数格式错误,写入默认值!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);                    
                     timer_1s.Enabled = true;
+                    ConfigFileSave(false, ConfigFileName);
                 }
                 
             }
@@ -990,15 +1001,47 @@ namespace Welling_Motor_Debug_Tool
                                     textBox_HW.Text = "";
                                     textBox_OBC_ReadHW.Text = "";
                                     textBox_FacModeHW.Text = "";
-                                    for (ushort i = 0; i < 16; i++)
+                                    for (ushort i = 0; i < 8; i++)//前8位:硬件板号
                                     {
                                         if (Data[32 + i] == 0x2E)
                                         {
                                             break;
                                         }
-                                        textBox_HW.Text += ((char)Data[32 + i]).ToString();
-                                        textBox_OBC_ReadHW.Text += ((char)Data[32 + i]).ToString();
-                                        textBox_FacModeHW.Text += ((char)Data[32 + i]).ToString();
+                                        else if (Data[32 + i] == 'r')
+                                        {
+                                            Data[32 + i] = (byte)'.';
+                                            break;
+                                        }
+                                        string strTemp = "";
+                                        strTemp = ((char)Data[32 + i]).ToString();
+                                        textBox_HW.Text += strTemp;
+                                        textBox_OBC_ReadHW.Text += strTemp;
+                                        textBox_FacModeHW.Text += strTemp;
+                                    }
+                                    for (ushort i = 0; i < 4; i++)//9-12位:单片机型号
+                                    {
+                                        if (Data[40 + i] == 0x2E)
+                                        {
+                                            break;
+                                        }
+                                        else if (Data[40 + i] == 'r')
+                                        {
+                                            Data[40 + i] = (byte)'.';
+                                            break;
+                                        }
+                                        string strTemp = "";
+                                        strTemp = ((char)Data[40 + i]).ToString();
+                                        textBox_HW.Text += strTemp;
+                                        textBox_OBC_ReadHW.Text += strTemp;
+                                        textBox_FacModeHW.Text += strTemp;
+                                    }
+                                    for (ushort i = 0; i < 4; i++)//13-16位:单片机ID
+                                    {
+                                        string strTemp = "";
+                                        strTemp = Convert.ToString(Data[44 + i], 16).PadLeft(2, '0').ToUpper();
+                                        textBox_HW.Text += strTemp;
+                                        textBox_OBC_ReadHW.Text += strTemp;
+                                        textBox_FacModeHW.Text += strTemp;
                                     }
                                     Class_Motor_Ver.HW = textBox_HW.Text;
 
@@ -1334,6 +1377,62 @@ namespace Welling_Motor_Debug_Tool
                             }
                             break;
                         }
+                    case 0xBA20: //调试信息
+                        {
+                            unchecked
+                            {
+                                this.Invoke((EventHandler)(delegate
+                                {
+                                    MC_DebugInfo_Refresh = true;
+                                    //系统状态机
+                                    DataTemp = (short)(Data[0]);
+                                    textBox_DebugInfo_SysFun.Text = Convert.ToString(DataTemp);
+                                    //二层状态机
+                                    DataTemp = (short)(Data[1]);
+                                    textBox_DebugInfo_SecondFun.Text = Convert.ToString(DataTemp);
+                                    //电机状态机
+                                    DataTemp = (short)(Data[2]);
+                                    textBox_DebugInfo_MotorFun.Text = Convert.ToString(DataTemp);
+                                    //助力状态机
+                                    DataTemp = (short)(Data[3]);
+                                    textBox_DebugInfo_AssistFun.Text = Convert.ToString(DataTemp);
+                                    //IdRef
+                                    DataTemp = (short)(Data[5] * 256 + Data[4]);
+                                    textBox_DebugInfo_IdRef.Text = Convert.ToString(DataTemp);
+                                    //IqRef
+                                    DataTemp = (short)(Data[7] * 256 + Data[6]);
+                                    textBox_DebugInfo_IqRef.Text = Convert.ToString(DataTemp);
+                                    //UdRef
+                                    DataTemp = (short)(Data[9] * 256 + Data[8]);
+                                    textBox_DebugInfo_UdRef.Text = Convert.ToString(DataTemp);
+                                    //UqRef
+                                    DataTemp = (short)(Data[11] * 256 + Data[10]);
+                                    textBox_DebugInfo_UqRef.Text = Convert.ToString(DataTemp);
+                                    //瞬时力矩
+                                    DataTemp = (short)(Data[13] * 256 + Data[12]);
+                                    textBox_DebugInfo_TorquePu.Text = Convert.ToString(DataTemp);
+                                    //时间滤波力矩
+                                    DataTemp = (short)(Data[15] * 256 + Data[14]);
+                                    textBox_DebugInfo_TorqueFil.Text = Convert.ToString(DataTemp);
+                                    //踏频滤波力矩
+                                    DataTemp = (short)(Data[17] * 256 + Data[16]);
+                                    textBox_DebugInfo_TorqueCadence.Text = Convert.ToString(DataTemp);
+                                    //IdFdb
+                                    DataTemp = (short)(Data[19] * 256 + Data[18]);
+                                    textBox_DebugInfo_IdFdb.Text = Convert.ToString(DataTemp);
+                                    //IqFdb
+                                    DataTemp = (short)(Data[21] * 256 + Data[20]);
+                                    textBox_DebugInfo_IqFdb.Text = Convert.ToString(DataTemp);
+                                    //助力输出
+                                    DataTemp = (short)(Data[23] * 256 + Data[22]);
+                                    textBox_DebugInfo_AssistOut.Text = Convert.ToString(DataTemp);
+
+                                    //数据保存
+                                    RunInfoAutoSave();
+                                }));
+                            }
+                            break;
+                        }
                     default:
                         {
                             break;
@@ -1552,6 +1651,22 @@ namespace Welling_Motor_Debug_Tool
             }
             MC_RunInfo_Refresh = false;
 
+            //MC_Debuginfo超时清除
+            if (MC_DebugInfo_Refresh == false)
+            {
+                MC_DebugInfo_Refresh_Cnt++;
+                if (MC_DebugInfo_Refresh_Cnt > 10)//5s
+                {
+                    MC_DebugInfo_Clear();
+                    MC_DebugInfo_Refresh_Cnt = 0;
+                }
+            }
+            else
+            {
+                MC_DebugInfo_Refresh_Cnt = 0;
+            }
+            MC_DebugInfo_Refresh = false;
+
             //BMS_RunInfo超时清除
             if (BMS_RunInfo_Refresh == false)
             {
@@ -1769,7 +1884,14 @@ namespace Welling_Motor_Debug_Tool
                     if(c.Name != textBox_ErrorCode.ToString())
                         c.Text = "---";
                 }
-            }
+            }          
+        }
+
+        /// <summary>
+        /// 调试信息清除
+        /// </summary>
+        private void MC_DebugInfo_Clear()
+        {
             foreach (Control c in tabPage_DebugInfo.Controls)
             {
                 if ((c is TextBox))
@@ -2728,8 +2850,9 @@ namespace Welling_Motor_Debug_Tool
                 if (mySerialProcess.mySerial.IsOpen == true)
                 {
                     RunInfoSaveFilename = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss").Replace("/", "-").Replace(":", string.Empty).Replace(" ", "_") + "_运行信息" + ".txt";
-                    System.IO.File.AppendAllText(RunInfoSaveFilename, "时间  |  车速  |  转速  |  踏频  | 力矩Reg  |  力矩  |  踩踏方向  |  电压  |  电流  |  功率  |  电量  " +
-                        "|  PCB温度  |  绕组温度  |  MOS温度  |  挡位  |  灯开关  | 续航  |  平均功耗  |  单次里程  |  单次时间  |  故障码" + "\r\n");
+                    System.IO.File.AppendAllText(RunInfoSaveFilename, "时间 --> 车速 , 转速 , 踏频 , 力矩Reg , 力矩 , 踩踏方向 , 电压 , 电流 , 功率 , 电量 , " +
+                        "PCB温度 , 绕组温度 , MOS温度 , 挡位 , 灯开关 , 续航 , 平均功耗 , 单次里程 , 单次时间 , 故障码 , " +
+                        "系统状态机 , 二层状态机 , 电机状态机 , 助力状态机 , D轴电流给定 , Q轴电流给定 , D轴电压给定 , Q轴电压给定 , 瞬时力矩 , 时间滤波力矩 , 踏频滤波力矩 , D轴电流反馈 , Q轴电流反馈 , 助力函数输出" + "\r\n");
                     timer_1s.Enabled = false;
                     MessageBox.Show("开始记录", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                     timer_1s.Enabled = true;
@@ -4719,6 +4842,10 @@ namespace Welling_Motor_Debug_Tool
             CfgFileInfo += "MacAddress:" + toolStripTextBoxMACAddr.Text + "\r\n";
             CfgFileInfo += "MacDate:" + toolStripTextBox_MACDate.Text + "\r\n";
             CfgFileInfo += "MacPdInfo:" + toolStripTextBox_MACPD.Text + "\r\n";
+            CfgFileInfo += "\r\n";
+            CfgFileInfo += "[LogAddress]" + "\r\n";
+            CfgFileInfo += "BeginAddress:" + textBox_LogAddrBegin.Text + "\r\n";
+            CfgFileInfo += "EndAddress:" + textBox_LogAddrEnd.Text + "\r\n";
             System.IO.File.WriteAllText(FileName, CfgFileInfo);
         }
 

BIN
Welling_Motor_Debug_Tool/bin/Debug/Welling_Motor_Debug_Tool.exe


BIN
Welling_Motor_Debug_Tool/bin/Debug/Welling_Motor_Debug_Tool.pdb


BIN
Welling_Motor_Debug_Tool/bin/Debug/Welling_Motor_Debug_Tool_202310301440.exe


BIN
Welling_Motor_Debug_Tool/bin/Debug/Welling_Motor_Debug_Tool_202311132000.exe


BIN
Welling_Motor_Debug_Tool/obj/Debug/Welling_Motor_Debug_Tool.csproj.GenerateResource.cache


BIN
Welling_Motor_Debug_Tool/obj/Debug/Welling_Motor_Debug_Tool.exe


BIN
Welling_Motor_Debug_Tool/obj/Debug/Welling_Motor_Debug_Tool.pdb