用STM32的USART,通过中断的形式发送数组进行通讯,对于TC和TXE中断,理解不是很到位,程序不知道如何编

比如我想以中断的方式发送数组buffer[3]={0x01,0x02,0x03}求大神!
2025-05-11 11:09:33
推荐回答(1个)
回答1:

对应USART数据发送有两个标志,一个是TXE=发送数据寄存器空,另一个是TC=发送结束,当TDR中的数据传送到移位寄存器后,TXE被设置,此时移位寄存器开始向TX信号线按位传输数据,但因为TDR已经变空,程序可以把下一个要发送的字节(操作USART_DR)写入TDR中,而不必等到移位寄存器中所有位发送结束,所有位发送结束时(送出停止位后)硬件会设置TC标志。