📄 test884dlg.cpp
字号:
// TEST884Dlg.cpp : implementation file
//
#include "stdafx.h"
#include "TEST884.h"
#include "TEST884Dlg.h"
#include "KPCI884.h"
#include "speed.h"
#include "songyun.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
extern UINT kh;
extern long int jdz;
extern UINT zh;
extern UINT ms;
extern UINT V;
extern UINT fx;
extern long int m_v_sv;
extern long int m_v_a;
extern long int m_v_v;
extern long int m_v_p;
int m_timer;
int x4=0;
int x3=0;
int x2=0;
int x1=0;
int y4=0;
int y3=0;
int y2=0;
int y1=0;
int z4=0;
int z3=0;
int z2=0;
int z1=0;
int u4=0;
int u3=0;
int u2=0;
int u1=0;
extern outputx;
extern outputy;
extern outputz;
extern outputu;
int shuju[1000];
/////////////////////////////////////////////////////////////////////////////
// CAboutDlg dialog used for App About
class CAboutDlg : public CDialog
{
public:
CAboutDlg();
// Dialog Data
//{{AFX_DATA(CAboutDlg)
enum { IDD = IDD_ABOUTBOX };
//}}AFX_DATA
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CAboutDlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
//{{AFX_MSG(CAboutDlg)
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
//{{AFX_DATA_INIT(CAboutDlg)
//}}AFX_DATA_INIT
}
void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CAboutDlg)
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
//{{AFX_MSG_MAP(CAboutDlg)
// No message handlers
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CTEST884Dlg dialog
CTEST884Dlg::CTEST884Dlg(CWnd* pParent /*=NULL*/)
: CDialog(CTEST884Dlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CTEST884Dlg)
m_mva = 0;
m_mvsv = 0;
m_mvv = 0;
m_p = 0;
m_rau = 0;
m_rax = 0;
m_ray = 0;
m_raz = 0;
m_rlu = 0;
m_rlx = 0;
m_rly = 0;
m_rlz = 0;
m_rvu = 0;
m_rvx = 0;
m_rvy = 0;
m_rvz = 0;
m_uxw = 0;
m_dxw = 0;
m_jdz = 768;
m_m = 1;
m_bits = 0;
m_readbyte = 0;
m_currentcv = 0;
m_ep = 0;
m_epset = 0;
//}}AFX_DATA_INIT
// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}
void CTEST884Dlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CTEST884Dlg)
DDX_Control(pDX, IDC_HLMT2, m_hlmt2);
DDX_Control(pDX, IDC_HLMT1, m_hlmt1);
DDX_Control(pDX, IDC_LMTMD1, m_lmtmd);
DDX_Control(pDX, IDC_OUTZ4, m_outz4);
DDX_Control(pDX, IDC_OUTZ3, m_outz3);
DDX_Control(pDX, IDC_OUTY4, m_outy4);
DDX_Control(pDX, IDC_OUTY3, m_outy3);
DDX_Control(pDX, IDC_OUTX4, m_outx4);
DDX_Control(pDX, IDC_OUTX3, m_outx3);
DDX_Control(pDX, IDC_OUTU4, m_outu4);
DDX_Control(pDX, IDC_OUTU3, m_outu3);
DDX_Control(pDX, IDC_DZ9, m_z9);
DDX_Control(pDX, IDC_DZ8, m_z8);
DDX_Control(pDX, IDC_DZ7, m_z7);
DDX_Control(pDX, IDC_DZ6, m_z6);
DDX_Control(pDX, IDC_DZ5, m_z5);
DDX_Control(pDX, IDC_DZ4, m_z4);
DDX_Control(pDX, IDC_DZ3, m_z3);
DDX_Control(pDX, IDC_DZ2, m_z2);
DDX_Control(pDX, IDC_DZ12, m_z12);
DDX_Control(pDX, IDC_DZ11, m_z11);
DDX_Control(pDX, IDC_DZ10, m_z10);
DDX_Control(pDX, IDC_DZ1, m_z1);
DDX_Control(pDX, IDC_DY9, m_y9);
DDX_Control(pDX, IDC_DY8, m_y8);
DDX_Control(pDX, IDC_DY7, m_y7);
DDX_Control(pDX, IDC_DY6, m_y6);
DDX_Control(pDX, IDC_DY5, m_y5);
DDX_Control(pDX, IDC_DY4, m_y4);
DDX_Control(pDX, IDC_DY3, m_y3);
DDX_Control(pDX, IDC_DY2, m_y2);
DDX_Control(pDX, IDC_DY12, m_y12);
DDX_Control(pDX, IDC_DY11, m_y11);
DDX_Control(pDX, IDC_DY10, m_y10);
DDX_Control(pDX, IDC_DY1, m_y1);
DDX_Control(pDX, IDC_DX9, m_x9);
DDX_Control(pDX, IDC_DX8, m_x8);
DDX_Control(pDX, IDC_DX7, m_x7);
DDX_Control(pDX, IDC_DX6, m_x6);
DDX_Control(pDX, IDC_DX5, m_x5);
DDX_Control(pDX, IDC_DX4, m_x4);
DDX_Control(pDX, IDC_DX3, m_x3);
DDX_Control(pDX, IDC_DX2, m_x2);
DDX_Control(pDX, IDC_DX12, m_x12);
DDX_Control(pDX, IDC_DX11, m_x11);
DDX_Control(pDX, IDC_DX10, m_x10);
DDX_Control(pDX, IDC_DU9, m_u9);
DDX_Control(pDX, IDC_DU8, m_u8);
DDX_Control(pDX, IDC_DU7, m_u7);
DDX_Control(pDX, IDC_DU6, m_u6);
DDX_Control(pDX, IDC_DU5, m_u5);
DDX_Control(pDX, IDC_DU4, m_u4);
DDX_Control(pDX, IDC_DU3, m_u3);
DDX_Control(pDX, IDC_DU2, m_u2);
DDX_Control(pDX, IDC_DU12, m_u12);
DDX_Control(pDX, IDC_DU11, m_u11);
DDX_Control(pDX, IDC_DU10, m_u10);
DDX_Control(pDX, IDC_DU1, m_u1);
DDX_Control(pDX, IDC_DSZ6, m_dsz6);
DDX_Control(pDX, IDC_DSZ5, m_dsz5);
DDX_Control(pDX, IDC_DSZ4, m_dsz4);
DDX_Control(pDX, IDC_DSZ3, m_dsz3);
DDX_Control(pDX, IDC_DSZ2, m_dsz2);
DDX_Control(pDX, IDC_DSZ1, m_dsz1);
DDX_Control(pDX, IDC_DSY6, m_dsy6);
DDX_Control(pDX, IDC_DSY5, m_dsy5);
DDX_Control(pDX, IDC_DSY4, m_dsy4);
DDX_Control(pDX, IDC_DSY3, m_dsy3);
DDX_Control(pDX, IDC_DSY2, m_dsy2);
DDX_Control(pDX, IDC_DSY1, m_dsy1);
DDX_Control(pDX, IDC_DSX6, m_dsx6);
DDX_Control(pDX, IDC_DSX5, m_dsx5);
DDX_Control(pDX, IDC_DSX4, m_dsx4);
DDX_Control(pDX, IDC_DSX3, m_dsx3);
DDX_Control(pDX, IDC_DSX2, m_dsx2);
DDX_Control(pDX, IDC_DSX1, m_dsx1);
DDX_Control(pDX, IDC_DSU6, m_dsu6);
DDX_Control(pDX, IDC_DSU5, m_dsu5);
DDX_Control(pDX, IDC_DSU4, m_dsu4);
DDX_Control(pDX, IDC_DSU3, m_dsu3);
DDX_Control(pDX, IDC_DSU2, m_dsu2);
DDX_Control(pDX, IDC_DSU1, m_dsu1);
DDX_Control(pDX, IDC_DX1, m_x1);
DDX_Control(pDX, IDC_LD, m_ld);
DDX_Control(pDX, IDC_MS, m_ms);
DDX_Control(pDX, IDC_ZH, m_zh);
DDX_Control(pDX, IDC_KH, m_kh);
DDX_Text(pDX, IDC_MVA, m_mva);
DDX_Text(pDX, IDC_MVSV, m_mvsv);
DDV_MinMaxLong(pDX, m_mvsv, 1, 8000);
DDX_Text(pDX, IDC_MVV, m_mvv);
DDV_MinMaxLong(pDX, m_mvv, 1, 8000);
DDX_Text(pDX, IDC_P, m_p);
DDV_MinMaxLong(pDX, m_p, 0, 268435455);
DDX_Text(pDX, IDC_RAU, m_rau);
DDX_Text(pDX, IDC_RAX, m_rax);
DDX_Text(pDX, IDC_RAY, m_ray);
DDX_Text(pDX, IDC_RAZ, m_raz);
DDX_Text(pDX, IDC_RLU, m_rlu);
DDX_Text(pDX, IDC_RLX, m_rlx);
DDX_Text(pDX, IDC_RLY, m_rly);
DDX_Text(pDX, IDC_RLZ, m_rlz);
DDX_Text(pDX, IDC_RVU, m_rvu);
DDX_Text(pDX, IDC_RVX, m_rvx);
DDX_Text(pDX, IDC_RVY, m_rvy);
DDX_Text(pDX, IDC_RVZ, m_rvz);
DDX_Text(pDX, IDC_UXW, m_uxw);
DDX_Text(pDX, IDC_DXW, m_dxw);
DDX_Text(pDX, IDC_JDZ, m_jdz);
DDX_Text(pDX, IDC_M, m_m);
DDV_MinMaxInt(pDX, m_m, 1, 500);
DDX_Text(pDX, IDC_BITS, m_bits);
DDX_Text(pDX, IDC_READBYTE1, m_readbyte);
DDX_Text(pDX, IDC_CURRENTCV, m_currentcv);
DDX_Text(pDX, IDC_EP, m_ep);
DDX_Text(pDX, IDC_EPSET, m_epset);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CTEST884Dlg, CDialog)
//{{AFX_MSG_MAP(CTEST884Dlg)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_BN_CLICKED(IDC_BINIT, OnBinit)
ON_BN_CLICKED(IDC_SC, OnSc)
ON_BN_CLICKED(IDC_QD, OnQd)
ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
ON_BN_CLICKED(IDC_STATE, OnState)
ON_WM_TIMER()
ON_BN_CLICKED(IDC_TZH, OnTzh)
ON_BN_CLICKED(IDC_QL, OnQl)
ON_BN_CLICKED(IDC_DX1, OnDx1)
ON_BN_CLICKED(IDC_DX2, OnDx2)
ON_BN_CLICKED(IDC_OUTX3, OnOutx3)
ON_BN_CLICKED(IDC_OUTX4, OnOutx4)
ON_BN_CLICKED(IDC_DY1, OnDy1)
ON_BN_CLICKED(IDC_DY2, OnDy2)
ON_BN_CLICKED(IDC_OUTY3, OnOuty3)
ON_BN_CLICKED(IDC_OUTY4, OnOuty4)
ON_BN_CLICKED(IDC_DZ1, OnDz1)
ON_BN_CLICKED(IDC_DZ2, OnDz2)
ON_BN_CLICKED(IDC_OUTZ3, OnOutz3)
ON_BN_CLICKED(IDC_OUTZ4, OnOutz4)
ON_BN_CLICKED(IDC_DU1, OnDu1)
ON_BN_CLICKED(IDC_DU2, OnDu2)
ON_BN_CLICKED(IDC_OUTU3, OnOutu3)
ON_BN_CLICKED(IDC_OUTU4, OnOutu4)
ON_BN_CLICKED(IDC_XW, OnXw)
ON_BN_CLICKED(IDC_EXIT, OnExit)
ON_BN_CLICKED(IDC_JT, OnJt)
ON_BN_CLICKED(IDC_QX, OnQx)
ON_BN_CLICKED(IDC_HANDDEC, OnHanddec)
ON_BN_CLICKED(IDC_SETM, OnSetm)
ON_BN_CLICKED(IDC_AUTODEC, OnAutodec)
ON_BN_CLICKED(IDC_BUTTON5, OnButton5)
ON_BN_CLICKED(IDC_READBYTE, OnReadbyte)
ON_BN_CLICKED(IDC_DVOUT, OnDvout)
ON_BN_CLICKED(IDC_STOPOUT, OnStopout)
ON_BN_CLICKED(IDC_LVOUT, OnLvout)
ON_BN_CLICKED(IDC_BUTTON4, OnButton4)
ON_BN_CLICKED(IDC_LINED, OnLined)
ON_BN_CLICKED(IDC_CIRCLED, OnCircled)
ON_BN_CLICKED(IDC_READCURRENTCV, OnReadcurrentcv)
ON_BN_CLICKED(IDC_WEICHABU, OnWeichabu)
ON_BN_CLICKED(IDC_CLEARWEICHABU, OnClearweichabu)
ON_BN_CLICKED(IDC_READEP, OnReadep)
ON_BN_CLICKED(IDC_SETEP, OnSetep)
ON_BN_CLICKED(IDC_XIANWEI, OnXianwei)
ON_BN_CLICKED(IDC_INENABLE, OnInenable)
ON_BN_CLICKED(IDC_SCLEAR, OnSclear)
ON_BN_CLICKED(IDC_BUTTON6, OnButton6)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CTEST884Dlg message handlers
BOOL CTEST884Dlg::OnInitDialog()
{
m_mva=1000;
m_mvsv=1000;
m_mvv=1000;
m_p=10000;
m_rax=0;
m_rvx=0;
m_rlx=0;
m_ray=0;
m_rvy=0;
m_rly=0;
m_raz=0;
m_rvz=0;
m_rlz=0;
m_rau=0;
m_rvu=0;
m_rlu=0;
UpdateData(FALSE);
CDialog::OnInitDialog();
m_x1.LoadBitmaps(IDB_LOW);
m_x2.LoadBitmaps(IDB_LOW);
m_outx3.LoadBitmaps(IDB_LOW);
m_outx4.LoadBitmaps(IDB_LOW);
m_y1.LoadBitmaps(IDB_LOW);
m_y2.LoadBitmaps(IDB_LOW);
m_outy3.LoadBitmaps(IDB_LOW);
m_outy4.LoadBitmaps(IDB_LOW);
m_z1.LoadBitmaps(IDB_LOW);
m_z2.LoadBitmaps(IDB_LOW);
m_outz3.LoadBitmaps(IDB_LOW);
m_outz4.LoadBitmaps(IDB_LOW);
m_u1.LoadBitmaps(IDB_LOW);
m_u2.LoadBitmaps(IDB_LOW);
m_outu3.LoadBitmaps(IDB_LOW);
m_outu4.LoadBitmaps(IDB_LOW);
m_x3.LoadBitmaps(IDB_RED);
m_x4.LoadBitmaps(IDB_RED);
m_x5.LoadBitmaps(IDB_RED);
m_x6.LoadBitmaps(IDB_RED);
m_x7.LoadBitmaps(IDB_RED);
m_x8.LoadBitmaps(IDB_RED);
m_x9.LoadBitmaps(IDB_RED);
m_x10.LoadBitmaps(IDB_RED);
m_x11.LoadBitmaps(IDB_RED);
m_x12.LoadBitmaps(IDB_RED);
m_y3.LoadBitmaps(IDB_RED);
m_y4.LoadBitmaps(IDB_RED);
m_y5.LoadBitmaps(IDB_RED);
m_y6.LoadBitmaps(IDB_RED);
m_y7.LoadBitmaps(IDB_RED);
m_y8.LoadBitmaps(IDB_RED);
m_y9.LoadBitmaps(IDB_RED);
m_y10.LoadBitmaps(IDB_RED);
m_y11.LoadBitmaps(IDB_RED);
m_y12.LoadBitmaps(IDB_RED);
m_z3.LoadBitmaps(IDB_RED);
m_z4.LoadBitmaps(IDB_RED);
m_z5.LoadBitmaps(IDB_RED);
m_z6.LoadBitmaps(IDB_RED);
m_z7.LoadBitmaps(IDB_RED);
m_z8.LoadBitmaps(IDB_RED);
m_z9.LoadBitmaps(IDB_RED);
m_z10.LoadBitmaps(IDB_RED);
m_z11.LoadBitmaps(IDB_RED);
m_z12.LoadBitmaps(IDB_RED);
m_u3.LoadBitmaps(IDB_RED);
m_u4.LoadBitmaps(IDB_RED);
m_u5.LoadBitmaps(IDB_RED);
m_u6.LoadBitmaps(IDB_RED);
m_u7.LoadBitmaps(IDB_RED);
m_u8.LoadBitmaps(IDB_RED);
m_u9.LoadBitmaps(IDB_RED);
m_u10.LoadBitmaps(IDB_RED);
m_u11.LoadBitmaps(IDB_RED);
m_u12.LoadBitmaps(IDB_RED);
m_dsx1.LoadBitmaps(IDB_RED);
m_dsx2.LoadBitmaps(IDB_RED);
m_dsx3.LoadBitmaps(IDB_RED);
m_dsx4.LoadBitmaps(IDB_RED);
m_dsx5.LoadBitmaps(IDB_RED);
m_dsx6.LoadBitmaps(IDB_RED);
m_dsy1.LoadBitmaps(IDB_RED);
m_dsy2.LoadBitmaps(IDB_RED);
m_dsy3.LoadBitmaps(IDB_RED);
m_dsy4.LoadBitmaps(IDB_RED);
m_dsy5.LoadBitmaps(IDB_RED);
m_dsy6.LoadBitmaps(IDB_RED);
m_dsz1.LoadBitmaps(IDB_RED);
m_dsz2.LoadBitmaps(IDB_RED);
m_dsz3.LoadBitmaps(IDB_RED);
m_dsz4.LoadBitmaps(IDB_RED);
m_dsz5.LoadBitmaps(IDB_RED);
m_dsz6.LoadBitmaps(IDB_RED);
m_dsu1.LoadBitmaps(IDB_RED);
m_dsu2.LoadBitmaps(IDB_RED);
m_dsu3.LoadBitmaps(IDB_RED);
m_dsu4.LoadBitmaps(IDB_RED);
m_dsu5.LoadBitmaps(IDB_RED);
m_dsu6.LoadBitmaps(IDB_RED);
// Add "About..." menu item to system menu.
// IDM_ABOUTBOX must be in the system command range.
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
CString strAboutMenu;
strAboutMenu.LoadString(IDS_ABOUTBOX);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
}
}
// Set the icon for this dialog. The framework does this automatically
// when the application's main window is not a dialog
SetIcon(m_hIcon, TRUE); // Set big icon
SetIcon(m_hIcon, FALSE); // Set small icon
// TODO: Add extra initialization here
return TRUE; // return TRUE unless you set the focus to a control
}
void CTEST884Dlg::OnSysCommand(UINT nID, LPARAM lParam)
{
if ((nID & 0xFFF0) == IDM_ABOUTBOX)
{
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
else
{
CDialog::OnSysCommand(nID, lParam);
}
}
// If you add a minimize button to your dialog, you will need the code below
// to draw the icon. For MFC applications using the document/view model,
// this is automatically done for you by the framework.
void CTEST884Dlg::OnPaint()
{
if (IsIconic())
{
CPaintDC dc(this); // device context for painting
SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);
// Center icon in client rectangle
int cxIcon = GetSystemMetrics(SM_CXICON);
int cyIcon = GetSystemMetrics(SM_CYICON);
CRect rect;
GetClientRect(&rect);
int x = (rect.Width() - cxIcon + 1) / 2;
int y = (rect.Height() - cyIcon + 1) / 2;
// Draw the icon
dc.DrawIcon(x, y, m_hIcon);
}
else
{
CDialog::OnPaint();
}
}
// The system calls this to obtain the cursor to display while the user drags
// the minimized window.
HCURSOR CTEST884Dlg::OnQueryDragIcon()
{
return (HCURSOR) m_hIcon;
}
void move()
{
Move_DV(kh,1,125,500,1000,0,10000);
}
void CTEST884Dlg::OnBinit()
{
void (*pf)();
pf=move;
UINT kh=m_kh.GetCurSel();
::kh=kh;
UpdateData(true);
::jdz=m_jdz;
if (Init884(kh)==0)
{ AfxMessageBox("板卡初始化成功");}
else
{AfxMessageBox("板卡初始化错误,请检查板卡");}
//SetInterRupt(kh,1,8,pf);
}
void CTEST884Dlg::OnSc()
{
UINT zh1=m_zh.GetCurSel();
::zh=zh1;
ms=m_ms.GetCurSel();
::ms=ms;
switch(zh)
{
case 0:
zh=4;
PulseOutMode(kh,zh,ms);
break;
case 1:
zh=1;
PulseOutMode(kh,zh,ms);
break;
case 2:
zh=2;
PulseOutMode(kh,zh,ms);
break;
case 3:
zh=3;
PulseOutMode(kh,zh,ms);
break;
case 4:
zh=5;
PulseOutMode(kh,1,ms);
PulseOutMode(kh,2,ms);
PulseOutMode(kh,3,ms);
PulseOutMode(kh,4,ms);
break;
}
}
void CTEST884Dlg::OnQd()
{
//使用批处理方式示例
/* SetFlag();
Move_DV(0,1,125,500,1000,1,1500);
Move_DV(0,2,125,500,1000,1,1500);
Move_DV(0,3,125,500,1000,1,1500);
DisableFlag();
*/
/* SetFlag();
Line2D(kh,1,4,250,500,2000,3000,-3000);
Line2D(kh,1,4,250,500,2000,4000,-3000);
Line2D(kh,1,4,250,500,2000,50000,-3000);
Circle_ConstSpeed(kh,1,2,1,500,0,500,-500,100,100);
DisableFlag();
*/
UINT fx1 = GetCheckedRadioButton(IDC_FXZ,IDC_FXF);
UINT ld=m_ld.GetCurSel();
switch(fx1)
{
case IDC_FXZ:
::fx=1;
break;
case IDC_FXF:
::fx=0;
break;
}
UpdateData(true);
::m_v_sv=m_mvsv;
::m_v_a=m_mva;
::m_v_v=m_mvv;
::m_v_p=m_p;
switch(ld)
{
case 0:
Move_DV(kh,zh,m_v_a,m_v_sv,m_v_v,fx,m_v_p);
break;
case 1:
Move_LV(kh,zh,m_v_a,m_v_sv,m_v_v,fx);
break;
}
}
void CTEST884Dlg::OnButton1()
{
DecStop(kh,zh);
}
void CTEST884Dlg::OnButton2()
{
RePosition(kh);
}
void CTEST884Dlg::OnState()
{
m_timer=SetTimer(1,1,0);
//int i;
//i=GetRR2(0,1);
}
void CTEST884Dlg::OnTimer(UINT nIDEvent)
{
// TODO: Add your message handler code here and/or call default
//m_ep=ReadEP(kh,zh);
//UpdateData(false);
UpdateData(false);
m_rvx=ReadCV(kh,1);
m_rax=ReadCA(kh,1);
m_rlx=ReadLP(kh,1);
m_rvy=ReadCV(kh,2);
m_ray=ReadCA(kh,2);
m_rly=ReadLP(kh,2);
m_rvz=ReadCV(kh,3);
m_raz=ReadCA(kh,3);
m_rlz=ReadLP(kh,3);
m_rvu=ReadCV(kh,4);
m_rau=ReadCA(kh,4);
m_rlu=ReadLP(kh,4);
if(zh==1)
{
RendengX();
}
if(zh==2)
{
Rendengy();
}
if(zh==3)
{
Rendengz();
}
if(zh==4)
{
Rendengu();
}
if(zh==5)
{
RendengX();
Rendengy();
Rendengz();
Rendengu();
}
CDialog::OnTimer(nIDEvent);
}
void CTEST884Dlg::Rendengz()
{
int GetRR11[16]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
int GetRR21[16]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
int GetRR41[16]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
int rr1,i,rr2,rr4;
int d15,flag;
//通用输入状态
//int rbt=ReadBIT(kh,3);
int getbit[4]={0};
for(i=1;i<4;i++)
{
getbit[i]=ReadBIT(kh,3,i);
}
if(getbit[1]==0)
{
m_z3.LoadBitmaps(IDB_GREEEN);
m_z3.RedrawWindow();
}
else
{
m_z3.LoadBitmaps(IDB_RED);
m_z3.RedrawWindow();
}
if(getbit[2]==0)
{
m_z4.LoadBitmaps(IDB_GREEEN);
m_z4.RedrawWindow();
}
else
{
m_z4.LoadBitmaps(IDB_RED);
m_z4.RedrawWindow();
}
if(getbit[3]==0)
{
m_z5.LoadBitmaps(IDB_GREEEN);
m_z5.RedrawWindow();
}
else
{
m_z5.LoadBitmaps(IDB_RED);
m_z5.RedrawWindow();
}
//通用点动状态
rr4=GetRR5(kh);
for(i=0;i<16; i++)
{
flag=(rr4>>i)&1;
if(flag==1)
GetRR41[i]=1;
else
GetRR41[i]=0;
}
if(GetRR41[4]==0)
{
m_z6.LoadBitmaps(IDB_GREEEN);
m_z6.RedrawWindow();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -