请教原子哥一些我想不通的问题

2019-07-21 02:37发布

1、就是在串口试验源程序里面,有一条这样的语句:USART_ClearFlag(USART1, USART_FLAG_TC);     //清除发送完成TC标志位(注释是我自己后来加的)!!我不知道这条清除标志位的作用到底是什么?我看到在视频教程里面写的那个程序没有加这条语句!如果不加这条语句会发生什么?!!!

2、还有就是为什么讲到定时器中断后,在定时器中断的服务函数里面会出现    TIM_ClearITPendingBit(TIM3,TIM_IT_Update);  //清除中断标志位,这个我知道,在PDF里面讲需要软件清零来跳出中断等待下次中断的到来,就想51的TF位,要复位!!   但是在串口源程序里面, 我好想看到那个串口中断服务函数里面并没有加USART_ClearITPendingBit(USART_TypeDef* USARTx, uint16_t USART_IT);   这句,为什么同是中断,他们却有的需要清空中断标志,而有的不需要了?!    是不是串口会硬件自动清空?  还是串口清不清空对下次进中断没什么影响?    我想不通!求助原子哥!!~~
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。