你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
harvardx 发表于 2018-3-18 22:43& b( K7 E1 g) x" W1 U+ ]7 o 是经常拜读您文章的MilerShao吗
您好,我正在调试stm32f723开发板的USB模块,为什么开发板做全速主机时,寄存器PENA是1,但插入从机设备不会触发PCDET中断标志。怎样才能触发这个中断?
* Ãû ³Æ£ºUSART3_Configuration(void)
* ¹¦ ÄÜ£ºÅäÖô®¿Ú
* Èë¿Ú²ÎÊý£º
* ³ö¿Ú²ÎÊý£ºÎÞ
* ˵ Ã÷£º! n D1 }- Z& L! [
* µ÷Ó÷½·¨£ºÀýÈç: USART3_Configuration()5 X) ]0 h5 c' M: `# z& K" V$ G8 D
****************************************************************************/: x' y' g( p: J; k' ]9 ^
void USART3_Configuration(void)//´®¿Ú3³õʼ»¯º¯Êý
{ ; n0 o7 } L, c; [) [7 m6 N
//NVIC_InitTypeDef NVIC_InitStructure;
GPIO_InitTypeDef GPIO_InitStructure3;
/* Enable GPIO TX/RX clock */
__HAL_RCC_GPIOC_CLK_ENABLE();
/* Enable USART3 clock */
__HAL_RCC_USART3_CLK_ENABLE();
/*
* USART3_TX -> PC4 , USART3_RX -> PC5/ N1 Q6 b8 x6 ]) `9 \" H. \
*/ 5 |$ g) U- H0 G! T' g
GPIO_InitStructure3.Pin = GPIO_Pin_4|GPIO_Pin_5; N4 K. A8 L1 k' s) R
GPIO_InitStructure3.Mode = GPIO_MODE_AF_PP; : K* B: y) a6 ^
GPIO_InitStructure3.Pull = GPIO_NOPULL;5 l5 N7 v& |- {7 V2 r
GPIO_InitStructure3.Alternate = GPIO_AF_1;
GPIO_InitStructure3.Speed = GPIO_SPEED_FREQ_HIGH; 7 L& {! @4 i: s
HAL_GPIO_Init(GPIOC, &GPIO_InitStructure3);
/** 6 S8 D# g8 G/ r2 b4 R& `% e, V) p1 A! c
* @brief UART Initialization
*/
UartHandle3.Instance = USART3;! I* V F# A0 Z3 v1 C) x* o
UartHandle3.Init.BaudRate = 115200;
UartHandle3.Init.WordLength = UART_WORDLENGTH_8B;2 ~0 s' {: i, u* G4 s8 \
UartHandle3.Init.StopBits = UART_STOPBITS_1;
UartHandle3.Init.Parity = UART_PARITY_NONE;5 l/ d' b2 g/ _. Y& x* ^# w8 M7 |
UartHandle3.Init.HwFlowCtl = UART_HWCONTROL_NONE;1 a8 {) j" B; p3 ~4 U! O! D4 k
UartHandle3.Init.Mode = UART_MODE_TX_RX;6 C" c+ W6 | U% k; |5 \
UartHandle3.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT;
if(HAL_UART_DeInit(&UartHandle3) != HAL_OK)" t5 L2 z/ X& @2 H0 n
{
Usart1Error_Handler();$ [, K& y+ _5 K/ N) ^5 X9 |
} # O+ t, U: C% D* N) K- E7 X
if(HAL_UART_Init(&UartHandle3) != HAL_OK)
{: P( M7 L$ h! o0 g
Usart1Error_Handler();6 @: D8 e A2 Q S
}
/*##-3- Configure the NVIC for UART ########################################*/ # D" K0 M) O- X( C
/* NVIC for USART1 */ 7 F! e, _5 |" p6 L: R
//HAL_NVIC_SetPriority(USART3_4_IRQn, 3, 1);
//HAL_NVIC_EnableIRQ(USART3_4_IRQn);
/* Enable USART1 Receive and Transmit interrupts */1 H* ?- r& x: D! t' {
__HAL_UART_ENABLE_IT(&UartHandle3,UART_IT_RXNE);. G+ V# u+ A1 F! g2 ~! R* U, o
__HAL_UART_ENABLE_IT(&UartHandle3,UART_IT_IDLE); " U) j# d1 Y. c1 [& x. Q
/* Enable the USART1 */+ G; z3 ]$ F2 E6 b
__HAL_UART_ENABLE(&UartHandle3);//ʹÄÜ´®¿Ú11 I7 x; Z" O, m8 w+ f# o8 _
}
p% j7 h3 H, P- H7 n; k! j
支持2位大神
您好,我正在调试stm32f723开发板的USB模块,为什么开发板做全速主机时,寄存器PENA是1,但插入从机设备不会触发PCDET中断标志。怎样才能触发这个中断?