如果启用了USART接收中断,我们需要编写中断服务函数来处理接收到的数据。
c
// USART1中断服务函数
void USART1_IRQHandler(void) {
// 检查是否接收到数据
if (usart_interrupt_flag_get(USART1, USART_INT_FLAG_RBNE)) {
// 读取接收到的数据
uint8_t received_data = usart_data_receive(USART1);
// 处理接收到的数据,例如回送
usart_data_transmit(USART1, received_data); // 将接收到的数据回传
}
}
|