📄 ser.cpp
字号:
// Ser.cpp : implementation file
//
#include "stdafx.h"
#include "pctest.h"
#include "Ser.h"
#include "HexEdit.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
extern CPctestApp theApp;
extern HANDLE hDevice;
extern HANDLE hDevice2;
extern PCHAR DynVxDName;
extern CHexEdit m_date1;
extern CHexEdit m_date2;
/////////////////////////////////////////////////////////////////////////////
// CSer dialog
CSer::CSer(CWnd* pParent /*=NULL*/)
: CDialog(CSer::IDD, pParent)
{
//{{AFX_DATA_INIT(CSer)
m_way = -1;
//}}AFX_DATA_INIT
m_d1=0x20000;
}
void CSer::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CSer)
DDX_Radio(pDX, IDC_RADIO3, m_way);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CSer, CDialog)
//{{AFX_MSG_MAP(CSer)
ON_BN_CLICKED(IDC_RADIO3, OnRadio3)
ON_BN_CLICKED(IDC_RADIO4, OnRadio4)
ON_BN_CLICKED(IDC_RADIO5, OnRadio5)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CSer message handlers
BOOL CSer::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
if(hDevice==NULL)
{
hDevice = CreateFile(DynVxDName, 0,0,0,
CREATE_NEW,
FILE_FLAG_DELETE_ON_CLOSE,
0);
if (hDevice == INVALID_HANDLE_VALUE)
{
AfxMessageBox("请检查板卡和驱动程序");
CDialog::OnCancel();
return FALSE;
}
}
m_date1.SubclassDlgItem(IDC_EDIT1, this );
m_date1.m_bShowAddress=FALSE;
m_date1.m_bShowHex=FALSE;
m_date2.SubclassDlgItem(IDC_EDIT2, this );
m_date2.m_bShowAddress=FALSE;
m_date2.m_bShowHex=FALSE;
m_date1.m_length=m_d1;
m_date2.m_length=m_d1;
m_date1. m_pData= (LPBYTE)malloc(m_d1);
m_date2. m_pData= (LPBYTE)malloc(m_d1);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CSer::OnRadio3()
{
// TODO: Add your control notification handler code here
BYTE m_a=0x0;
for(long x=0;x<m_d1;x++)
{
m_date1.m_pData[x] = m_a;
}m_date1.m_bUpdate=TRUE;
m_date1.m_bShowAddress=TRUE;
m_date1.m_bShowHex=TRUE;
m_date1.Invalidate ();
}
void CSer::OnRadio4()
{
// TODO: Add your control notification handler code here
BYTE m_b=0xff;
for(long x=0;x<m_d1;x++)
{
m_date1.m_pData[x] = m_b;
}m_date1.m_bUpdate=TRUE;
m_date1.m_bShowAddress=TRUE;
m_date1.m_bShowHex=TRUE;
m_date1.Invalidate ();
}
void CSer::OnRadio5()
{
// TODO: Add your control notification handler code here
for(long x=0;x<m_d1;x++)
{
BYTE a=(BYTE)rand();
m_date1.m_pData[x] = a;
}
m_date1.m_bUpdate=TRUE;
m_date1.m_bShowAddress=TRUE;
m_date1.m_bShowHex=TRUE;
m_date1.Invalidate ();
}
void CSer::OnOK()
{
// TODO: Add extra validation here
if(hDevice!=NULL)
{
CloseHandle( hDevice);
hDevice=NULL;
}
CDialog::OnOK();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -