请问一下,我在使用CH567
开发板的过程中,使用官方的例程,在程序开发的过程中,开发板经常出现“
USB1 Reset!”的情况出现,例如下面这样子的情况。偶尔重新开发板重启就能解决、偶尔是重新编译程序就能解决,请问出现这种情况的原因在哪里呢:
USB1 Device Init!
USB1 Reset!
USB1 Reset!
USB1 Reset!
USB1 Reset!
USB1 Reset!
USB1 Reset!
USB1 Reset!
USB1 Reset!
USB1 Reset!
USB1 Reset!
USB1 Reset!
源代码:
void USB1DevIntDeal(
void){
if (
R8_USB1_INT_FG &
UIF_TRANSFER) {
//R8_UEP0_TX_CTRL1 = UEP_T_RES_NAK;
R8_UEP0_TX_CTRL1 =
UEP_T_RES_ACK;
R8_UEP0_RX_CTRL1 =
UEP_R_RES_ACK;
//R8_UEP1_TX_CTRL1 = UEP_T_RES_NAK | bUEP_AUTO_TOG;
R8_UEP1_TX_CTRL1 =
UEP_T_RES_ACK |
bUEP_AUTO_TOG;
R8_UEP1_RX_CTRL1 =
UEP_R_RES_ACK |
bUEP_AUTO_TOG;
R8_UEP2_TX_CTRL1 =
UEP_T_RES_ACK |
bUEP_AUTO_TOG;
R8_UEP2_RX_CTRL1 =
UEP_R_RES_ACK |
bUEP_AUTO_TOG;
R8_USB1_DEV_AD =
0;
DevAddr =
0;
R8_USB1_INT_FG =
UIF_BUS_RST;
printf(
"USB1 Reset!n");