使用systick扫描键盘USB使用时systick中断进不了

2019-07-14 17:34发布

现象:原来一直使用systick(10ms)来扫描键盘的,当程序加入HID程序后(神舟IV开发板程序改动而来),USB线没有插上电脑的时候systick还是可以进中断的,当USB线插上的时候systick中断就进不了了,插上之后再拔掉也还是进不了systick的中断。整个过程中其他中断都是正常的。
目前采用的办法: 目前放弃了在使用USB的时候同时使用systick中断,程序关闭USB的时候再初始化一下systick,程序如下就可以使用systick了:
NVIC_InitStructure.NVIC_IRQChannel = OTG_FS_IRQn;
  NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 5;
  NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
  NVIC_InitStructure.NVIC_IRQChannelCmd = DISABLE;
  NVIC_Init(&NVIC_InitStructure);
         USB_Cable_Config(DISABLE);//关闭USB连接
MYSet_systick();//10ms中断
问题:1.  程序中关闭USB有什么好的办法,关闭之后还要可以再开启的?我目前是使用的关中断和关连接。
            2.  上面的现象是什么原因?USB使用的时候为什么systick中断进不了?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。