一、ITStatus USART_GetITStatus(USART_TypeDef* USARTx, uint16_t USART_IT)在判断相应位是否置1(读SR寄存器)前会先判断相应位的中断是否使能(读CR寄存器)。所以若使用 while(USART_GetITStatus(USART1,USART_IT_TC) != SET); 来进行判断数据是否发送完成,注意需使能TC中断 U... ...
话说ClearITPendingBit这个函数真是坑人,找了半天没找到相应外设的pending寄存器,最后发现其本质跟ClearFlag是一样的,只是参数定义不同,最后还是操作SR。