⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 drivercontroller.c

📁 这是我编写的深圳地铁S335型司机控制器的检测程序
💻 C
📖 第 1 页 / 共 2 页
字号:
			break;
   }
	return 0;
}

//------------------------------------------------------------------------------------------------
//
int CVICALLBACK HideCallback (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
	switch (event)
   {
		case EVENT_COMMIT:
         SetCtrlAttribute (plTrend, PLTREND_TRENDTIMER, ATTR_ENABLED, 0);
         
         HidePanel (plTrend);

			break;
   }
	return 0;
}

//------------------------------------------------------------------------------------------------
//
int CVICALLBACK savebitmapCallback (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
   Rect rc;
   int nBitmapID;
   char chFileName[512];
   char chTitle[128];
	switch (event)
   {
		case EVENT_COMMIT:
         strcpy (chTitle, "保存图像");
         rc.left = 8;
         rc.top = 8;
         rc.width = 888;
         rc.height = 752;
         GetPanelDisplayBitmap (plTrend, VAL_FULL_PANEL, rc, &nBitmapID);
         if (FileSelectPopup ("E:\\Picture\\", "Picture.jpg", "*.jpg", chTitle, VAL_SAVE_BUTTON, 0, 1, 1, 1, chFileName) > 0)
         {
            SaveBitmapToJPEGFile (nBitmapID, chFileName, JPEG_INTERLACE, 100);
         }
         DiscardBitmap (nBitmapID);
			break;
   }
	return 0;
}

//------------------------------------------------------------------------------------------------
//
int CVICALLBACK trendCallback (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
   int nValue;
	switch (event)
   {
		case EVENT_COMMIT:
         GetPanelAttribute (plTrend, ATTR_VISIBLE, &nValue );
         if ( nValue == 0 )
         {
            DisplayPanel (plTrend);
            SetCtrlAttribute (plTrend, PLTREND_TRENDTIMER, ATTR_ENABLED, 1);
         }
         else
         {
            SetCtrlAttribute (plTrend, PLTREND_TRENDTIMER, ATTR_ENABLED, 0);
            HidePanel (plTrend);
         }
         Sleep (100);
            
         break;
   }
	return 0;
}

//------------------------------------------------------------------------------------------------
//
int CVICALLBACK trendtimerCallback (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
	switch (event)
   {
		case EVENT_TIMER_TICK:
         DisplayHistroyTrend ();

			break;
   }
	return 0;
}

//------------------------------------------------------------------------------------------------
//
int CVICALLBACK savevoltageCallback (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
	switch (event)
   {
		case EVENT_COMMIT:
         if (g_SystemData.ptMeasureData.usSecondryPosition <= 0)
            break;
         g_SystemData.ptMeasureData.ptPosition [g_SystemData.ptMeasureData.usSecondryPosition - 1].fVoltage = g_SystemData.ptDAQData.fVoltage;
			break;
   }
	return 0;
}

//------------------------------------------------------------------------------------------------
//
int CVICALLBACK tableCallback (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
	switch (event)
   {
		case EVENT_COMMIT:
         DisplayPanel (plMain);
			break;
   }
	return 0;
}

//------------------------------------------------------------------------------------------------
//
int CVICALLBACK forceCallback (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
	switch (event)
   {
		case EVENT_COMMIT:
         DisplayPanel (plForce);
			break;
   }
	return 0;
}

//------------------------------------------------------------------------------------------------
//
int CVICALLBACK reportCallback (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
	switch (event)
   {
		case EVENT_COMMIT:
         DisplayPanel (plReport);
			break;
   }
	return 0;
}

//------------------------------------------------------------------------------------------------
//
int CVICALLBACK logoCallback (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
	switch (event)
   {
		case EVENT_COMMIT:
         DisplayPanel (plLogo);
			break;
   }
	return 0;
}

//------------------------------------------------------------------------------------------------
//
int CVICALLBACK forceclearCallback (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
	switch (event)
   {
		case EVENT_COMMIT:
         memset (&g_SystemData.ptMeasureData.ptForceData, 0, sizeof (PT_ForceData));
			break;
   }
	return 0;
}


//------------------------------------------------------------------------------------------------
//
int __stdcall GetForceData(void)
{
   float    fData;
   GetCtrlVal (plForce, PLFORCE_FORCE_0, &fData);
   g_SystemData.ptMeasureData.ptForceData [0].fForce = fData;
   GetCtrlVal (plForce, PLFORCE_FORCE_1, &fData);
   g_SystemData.ptMeasureData.ptForceData [1].fForce = fData;
   GetCtrlVal (plForce, PLFORCE_FORCE_2, &fData);
   g_SystemData.ptMeasureData.ptForceData [2].fForce = fData;
   GetCtrlVal (plForce, PLFORCE_FORCE_3, &fData);
   g_SystemData.ptMeasureData.ptForceData [3].fForce = fData;
   GetCtrlVal (plForce, PLFORCE_FORCE_4, &fData);
   g_SystemData.ptMeasureData.ptForceData [4].fForce = fData;
   GetCtrlVal (plForce, PLFORCE_FORCE_5, &fData);
   g_SystemData.ptMeasureData.ptForceData [5].fForce = fData;
   GetCtrlVal (plForce, PLFORCE_FORCE_6, &fData);
   g_SystemData.ptMeasureData.ptForceData [6].fForce = fData;
   GetCtrlVal (plForce, PLFORCE_FORCE_7, &fData);
   g_SystemData.ptMeasureData.ptForceData [7].fForce = fData;
   GetCtrlVal (plForce, PLFORCE_FORCE_8, &fData);
   g_SystemData.ptMeasureData.ptForceData [8].fForce = fData;
   GetCtrlVal (plForce, PLFORCE_FORCE_9, &fData);
   g_SystemData.ptMeasureData.ptForceData [9].fForce = fData;
   GetCtrlVal (plForce, PLFORCE_FORCE_10, &fData);
   g_SystemData.ptMeasureData.ptForceData [10].fForce = fData;
   
   return 0;
}

//------------------------------------------------------------------------------------------------
//
int __stdcall GetInputData(void)
{
   char     chData[128];
   
   GetCtrlVal (plReport, PLREPORT_DCID, chData);
   strcpy (g_SystemData.ptMeasureData.ptDevice.acDriverControllerID, chData);
   GetCtrlVal (plReport, PLREPORT_FACTORYDATE, chData);
   strcpy (g_SystemData.ptMeasureData.ptDevice.acFactoryDate, chData);
   GetCtrlVal (plReport, PLREPORT_REPAIRERNAME, chData);
   strcpy (g_SystemData.ptMeasureData.ptDevice.acheckerName, chData);
   GetCtrlVal (plReport, PLREPORT_VNAME, chData);
   strcpy (g_SystemData.ptMeasureData.ptDevice.acVID, chData);
         
   if (strlen (g_SystemData.ptMeasureData.ptDevice.acDriverControllerID) == 0)
   {
      MessageBox (NULL, "司控器编号不能为空!", "错误", MB_OK | MB_TOPMOST);
      return -1;
   }
         
   if (strlen (chData) == 0)
   {
      MessageBox (NULL, "配属车辆不能为空!", "错误", MB_OK | MB_TOPMOST);
      return -1;
   }
   return 0;
}

//------------------------------------------------------------------------------------------------
//
int CVICALLBACK reportcreateCallback (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
	switch (event)
   {
		case EVENT_COMMIT:
         
         if (GetForceData () == -1)
            break;
         
         if (GetInputData () == -1)
            break;
         
         ReportCreate ();

			break;
   }
	return 0;
}

//------------------------------------------------------------------------------------------------
//
int CVICALLBACK newcheckCallback (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
	switch (event)
   {
		case EVENT_COMMIT:
         if ((g_SystemData.ptDAQData.usAuto == 0)
            || (g_SystemData.ptDAQData.usManual == 1)
            || (g_SystemData.ptDAQData.us1A == 0)
            || (g_SystemData.ptDAQData.us15V == 0))
               return 0;
         
         GetLocalTime (&g_SystemData.ptMeasureData.ptStartTime);
         g_SystemData.usRuning = 1;
         
         SetCtrlAttribute (plMain, PLMAIN_NEWCHECK, ATTR_DIMMED, 1);
			break;
   }
	return 0;
}

//------------------------------------------------------------------------------------------------
//
int CVICALLBACK viewCallback (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
	switch (event)
   {
		case EVENT_COMMIT:
         ReportShow( );
			break;
   }
	return 0;
}

//------------------------------------------------------------------------------------------------
//
int CVICALLBACK printCallback (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
	switch (event)
   {
		case EVENT_COMMIT:
         ReportPrint( );
			break;
   }
	return 0;
}

//------------------------------------------------------------------------------------------------
//
int CVICALLBACK reportrefreshCallback (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
	switch (event)
   {
		case EVENT_COMMIT:
         if (GetForceData () == -1)
            break;
         if (GetInputData () == -1)
            break;
         
         ReportRefresh ();

			break;
   }
	return 0;
}

//------------------------------------------------------------------------------------------------
//

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -