2019-07-21 06:45发布
warship 发表于 2018-12-4 13:52 空闲中断是接受数据后出现一个byte的高电平(空闲)状态,就会触发空闲中断.并不是空闲就会一直中断,准确的说 ...
最多设置5个标签!
空闲中断是接受数据后出现一个字节的高电平(空闲)状态,就会触发空闲中断.并不是空闲就会一直中断,准确的说应该是在收到上升沿(停止位)后一个字节,如果一直是低电平是不会触发空闲中断的
所以不要认为一上电初始化的时候打开空闲中断,还没有收到数据就会进入空闲中断。
不过为稳妥起见,最好是在接收到数据以后再打开空闲中断,这样就彻底消除这种顾虑了。
但它莫名就是会进入空闲中断呀,我在串口中断里判断
void USART2_IRQHandler()
{
u8 Res;
UART1_send_byte("A"):
if(USART_GetITStatus(USART2, USART_IT_RXNE) != RESET)
{
UART1_send_byte("B"):
}
if(USART_GetITStatus(USART2, USART_IT_IDLE) == SET)
{
USART_ClearFlag(USART2, USART_FLAG_IDLE);
UART1_send_byte("C"):
}
Res =USART2->ISR;
Res =USART2->RDR;
}
板子上电,串口助手就会打印AC一次,而且是串口初始化完后马上进
一周热门 更多>