void USART2_IRQHandler(void);
void USART3_IRQHandler(void);
u8 YUcmd = 0;
u8 Location=0;
int main()
{
SysTick_Init(); //Ïμí3μÎ′e¶¨ê±Æ÷3õê¼»ˉ
usart3_init(); //′®¿ú33õê¼»ˉ
usart2_init();
while(1)
{
if(Location!=0)//¶¨μÄUSART ÖD¶Ï·¢éúóë·ñ
{
USART_SendData(USART2,Location);
while(USART_GetFlagStatus(USART2,USART_FLAG_TC)==Bit_RESET);
Location=0;
}
}
}
void USART2_IRQHandler(void) //′®¿ú2ÖD¶Ïoˉêy
{
static u8 k;
USART_ClearFlag(USART2,USART_FLAG_TC);
if(USART_GetITStatus(USART2,USART_IT_RXNE)!=Bit_RESET)//¼ì2éÖ¸¶¨μÄUSART ÖD¶Ï·¢éúóë·ñ
{
k=USART_ReceiveData(USART2);
YUcmd=k;
}
}
void USART3_IRQHandler(void) //′®¿ú2ÖD¶Ïoˉêy
{
static u8 k;
USART_ClearFlag(USART3,USART_FLAG_TC);
if(USART_GetITStatus(USART3,USART_IT_RXNE)!=Bit_RESET)//¼ì2éÖ¸¶¨μÄUSART ÖD¶Ï·¢éúóë·ñ
{
k=USART_ReceiveData(USART3);
Location=k;
}
}
这个程序就是串口助手由USART3口通过485发送数据给STM32,然后再由STM32将数据发送到USART2口由无线传输模块进行传输,但是通过运行,发现程序进不去USART3的中断程序USART3_IRQHandler。求助各位高手
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
Delay_ms(10);
这个485收发控制位是放在USART3的初始化程序中的,只要初始化USART3,那么485就处在接收数据的状态
一周热门 更多>