在线时间38 小时
UID340348
注册时间2015-11-18
NXP金币0
该用户从未签到
注册会员

- 积分
- 142
- 最后登录
- 2016-4-27
|

楼主 |
发表于 2016-4-22 11:14:06
|
显示全部楼层
用miniKL27(10-USB_HID)中代码修改,后第一次能正常唤醒,鼠标移动,第二次按K2按键后程序死在usbd_hid_get_report_trigger(0, (U8 *)report, 4);语句中。
int main(void)
{
S8 report[4];
S8 i;
DelayInit();
GPIO_QuickInit(HW_GPIOC, 3, kGPIO_Mode_OPP);
LPUART_QuickInit(LPUART0_RX_D06_TX_D07, 115200);
LPUART_ITDMAConfig(HW_LPUART0, kUART_IT_Rx, true);
printf("9-USB demo\r\n");
/* allow VLPS mode */
SMC->PMPROT |= SMC_PMPROT_AVLP(1);
/* set VLPS mode */
SMC->PMCTRL &= ~SMC_PMCTRL_STOPM_MASK;
SMC->PMCTRL |= SMC_PMCTRL_STOPM(2);
DelayMs(10);
/* enter STOP */
EnterSTOPMode(false);
printf("wake up from VLPS mode\r\n");
cmd_usb(0, NULL);
while(1)
{
for(i=0;i<100;i++){
GetMouseInReport(report, 4);
usbd_hid_get_report_trigger(0, (U8 *)report, 4);
DelayMs(10);
GPIO_ToggleBit(HW_GPIOC, 3);
}
EnterSTOPMode(false);
printf("wake up from VLPS mode\r\n");
}
} |
|