1,在led的驱动添加
BOOL GIO_IOControl(DWORD hOpenContext, DWORD dwCode, PBYTE pBufIn, DWORD dwLenIn, PBYTE pBufOut, DWORD dwLenOut, PDWORD pdwActualOut)
{
switch(dwCode)
{
case IO_CTL_GPIO_1_ON:
v_pGPIORegs->GPEDAT &= ~(0x1<<13);
break;
case IO_CTL_GPIO_2_ON:
v_pGPIORegs->GPEDAT &= ~(0x1<<12);
break;
case IO_CTL_GPIO_3_ON:
v_pGPIORegs->GPLDAT &= ~(1<<13);
break;
case IO_CTL_GPIO_4_ON:
v_pGPIORegs->GPEDAT &= ~(0x1<<11);
break;
case IO_CTL_GPIO_5_ON:
v_pGPIORegs->GPGDAT &= ~(1<<2);
break;
case IO_CTL_GPIO_6_ON:
//v_pGPIORegs->GPADAT &= ~(1<<15);
break;
case BACKLIGHT_ON: //开背光
v_pGPIORegs->GPBCON = v_pGPIORegs->GPBCON & ~(0x3<<0) | (0x1<<0);
v_pGPIORegs->GPBDAT = v_pGPIORegs->GPBDAT | 0x1;
break;
case BACKLIGHT_OFF://关背光
v_pGPIORegs->GPBCON = v_pGPIORegs->GPBCON & ~(0x3<<0) | (0x1<<0);
v_pGPIORegs->GPBDAT = v_pGPIORegs->GPBDAT &(~0x1);
break;
case IO_CTL_GPIO_ALL_ON:
v_pGPIORegs->GPEDAT &= ~((0x1<<13)|(0x1<<12)|(0x1<<11));
v_pGPIORegs->GPLDAT &= ~(1<<13);
v_pGPIORegs->GPGDAT &= ~(1<<2);
//v_pGPIORegs->GPADAT &= ~(1<<15);
break;
2,在led应用程添加
void CledDlg::OnBnClickedButton7()
{ Ledbk=CreateFile(_T("GIO1:"),GENERIC_WRITE | GENERIC_READ, 0, NULL, OPEN_EXISTING, 0, NULL);
DeviceIoControl(Ledbk,BACKLIGHT_ON,NULL,0,NULL,0,NULL,NULL);
// TODO: 在此添加控件通知处理程序代码
//DeviceIoControl(Led6,IO_CTL_GPIO_6_ON,NULL,0,NULL,0,NULL,NULL);
//CloseHandle(Led6);
}
void CledDlg::Onbklightoff()
{
DeviceIoControl(Ledbk,BACKLIGHT_OFF,NULL,0,NULL,0,NULL,NULL);
CloseHandle(Led6);
// TODO: 在此添加控件通知处理程序代码
}