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

📄 gpioeditdlg.cpp

📁 wince中工程模式用来测试硬件的驱动是否好用
💻 CPP
字号:
// GpioEditDlg.cpp : implementation file
//

#include "stdafx.h"
#include "EngModeEx.h"
#include "GpioEditDlg.h"


// CGpioEditDlg dialog

IMPLEMENT_DYNAMIC(CGpioEditDlg, CDialog)

CGpioEditDlg::CGpioEditDlg(DWORD GPLR,DWORD GPDR,DWORD GAFR,DWORD index,CWnd* pParent /*=NULL*/)
	: CDialog(CGpioEditDlg::IDD, pParent)
{
	GPLROld = GPLR;
	GPDROld = GPDR;
	GAFROld = GAFR;
	indexW = index;

}

CGpioEditDlg::~CGpioEditDlg()
{
}

void CGpioEditDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
}


BEGIN_MESSAGE_MAP(CGpioEditDlg, CDialog)
	ON_BN_CLICKED(IDOK, &CGpioEditDlg::OnBnClickedOk)
	ON_BN_CLICKED(IDC_RADIO_GPLRL, &CGpioEditDlg::OnBnClickedRadioGplrl)
	ON_BN_CLICKED(IDC_RADIO_GPLRH, &CGpioEditDlg::OnBnClickedRadioGplrh)
	ON_BN_CLICKED(IDC_RADIO_GPDRIN, &CGpioEditDlg::OnBnClickedRadioGpdrin)
	ON_BN_CLICKED(IDC_RADIO_GPDROUT, &CGpioEditDlg::OnBnClickedRadioGpdrout)
	ON_BN_CLICKED(IDC_RADIO_GAFR0, &CGpioEditDlg::OnBnClickedRadioGafr0)
	ON_BN_CLICKED(IDC_RADIO_GAFR1, &CGpioEditDlg::OnBnClickedRadioGafr1)
	ON_BN_CLICKED(IDC_RADIO_GAFR2, &CGpioEditDlg::OnBnClickedRadioGafr2)
	ON_BN_CLICKED(IDC_RADIO_GAFR3, &CGpioEditDlg::OnBnClickedRadioGafr3)
END_MESSAGE_MAP()


// CGpioEditDlg message handlers
BOOL CGpioEditDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	if (GPLROld ==0)
	{
		CheckRadioButton(IDC_RADIO_GPLRH,IDC_RADIO_GPLRL,IDC_RADIO_GPLRL);
		GetDlgItem(IDC_RADIO_GPLRL)->EnableWindow(FALSE);
	} 
	else
	{
		CheckRadioButton(IDC_RADIO_GPLRH,IDC_RADIO_GPLRL,IDC_RADIO_GPLRH);
		GetDlgItem(IDC_RADIO_GPLRH)->EnableWindow(FALSE);

	}

	if (GPDROld == 0)
	{
		CheckRadioButton(IDC_RADIO_GPDRIN,IDC_RADIO_GPDROUT,IDC_RADIO_GPDRIN);
		GetDlgItem(IDC_RADIO_GPDRIN)->EnableWindow(FALSE);
	}
	else
	{
		CheckRadioButton(IDC_RADIO_GPDRIN,IDC_RADIO_GPDROUT,IDC_RADIO_GPDROUT);
		GetDlgItem(IDC_RADIO_GPDROUT)->EnableWindow(FALSE);

	}

	switch(GAFROld)
	{
	case 0:
		CheckRadioButton(IDC_RADIO_GAFR0,IDC_RADIO_GAFR3,IDC_RADIO_GAFR0);
		GetDlgItem(IDC_RADIO_GAFR0)->EnableWindow(FALSE);
		break;
	case 1:
		CheckRadioButton(IDC_RADIO_GAFR0,IDC_RADIO_GAFR3,IDC_RADIO_GAFR1);
		GetDlgItem(IDC_RADIO_GAFR1)->EnableWindow(FALSE);
		break;
	case 2:
		CheckRadioButton(IDC_RADIO_GAFR0,IDC_RADIO_GAFR3,IDC_RADIO_GAFR2);
		GetDlgItem(IDC_RADIO_GAFR2)->EnableWindow(FALSE);
	    break;
	case 3:
		CheckRadioButton(IDC_RADIO_GAFR0,IDC_RADIO_GAFR3,IDC_RADIO_GAFR3);
		GetDlgItem(IDC_RADIO_GAFR3)->EnableWindow(FALSE);
	    break;
	default:
	    break;
	}

	return TRUE;
}

void CGpioEditDlg::OnBnClickedOk()
{
	// TODO: Add your control notification handler code here
	int curGPLR = GetCheckedRadioButton(IDC_RADIO_GPLRH,IDC_RADIO_GPLRL);
	int curGPDR = GetCheckedRadioButton(IDC_RADIO_GPDRIN,IDC_RADIO_GPDROUT);
	int curGFAR = GetCheckedRadioButton(IDC_RADIO_GAFR0,IDC_RADIO_GAFR3);
	
	DWORD wParam=0,lParam=0;
	if(curGPLR == IDC_RADIO_GPLRH)
	{
		wParam = wParam | 0x1;
	}

	if(curGPDR == IDC_RADIO_GPDROUT)
	{
		wParam = (wParam<<4) | 0x1;
	}

	lParam = lParam | indexW;
	lParam = (lParam<<8) | (curGFAR - IDC_RADIO_GAFR0);

	GetParent()->SendMessage(WM_GPIOSET,wParam,lParam);
	OnOK();
}

void CGpioEditDlg::OnBnClickedRadioGplrl()
{
	CheckRadioButton(IDC_RADIO_GPLRH,IDC_RADIO_GPLRL,IDC_RADIO_GPLRL);
}

void CGpioEditDlg::OnBnClickedRadioGplrh()
{
	CheckRadioButton(IDC_RADIO_GPLRH,IDC_RADIO_GPLRL,IDC_RADIO_GPLRH);
}

void CGpioEditDlg::OnBnClickedRadioGpdrin()
{
	CheckRadioButton(IDC_RADIO_GPDRIN,IDC_RADIO_GPDROUT,IDC_RADIO_GPDRIN);
}

void CGpioEditDlg::OnBnClickedRadioGpdrout()
{
	CheckRadioButton(IDC_RADIO_GPDRIN,IDC_RADIO_GPDROUT,IDC_RADIO_GPDROUT);
}

void CGpioEditDlg::OnBnClickedRadioGafr0()
{
	CheckRadioButton(IDC_RADIO_GAFR0,IDC_RADIO_GAFR3,IDC_RADIO_GAFR0);
}

void CGpioEditDlg::OnBnClickedRadioGafr1()
{
	CheckRadioButton(IDC_RADIO_GAFR0,IDC_RADIO_GAFR3,IDC_RADIO_GAFR1);
}

void CGpioEditDlg::OnBnClickedRadioGafr2()
{
	CheckRadioButton(IDC_RADIO_GAFR0,IDC_RADIO_GAFR3,IDC_RADIO_GAFR2);
}

void CGpioEditDlg::OnBnClickedRadioGafr3()
{
	CheckRadioButton(IDC_RADIO_GAFR0,IDC_RADIO_GAFR3,IDC_RADIO_GAFR3);
}

⌨️ 快捷键说明

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