AT指令透传代码

本文详细介绍了如何实现两个UART串口之间的数据透传。首先定义了接收变量Usart1Rx和Usart2Rx,然后分别启用两个串口的接收中断,并在中断服务函数中实现数据的双向传输。当串口1接收到数据时,将其转发到串口2,反之亦然,从而实现串口间的透明传输。
摘要由CSDN通过智能技术生成

一、总体介绍

  • 下面是所有添加的部分
uint8_t Usart1Rx=0;
uint8_t Usart2Rx=0;




	__HAL_UART_ENABLE_IT(&huart1,UART_IT_RXNE);
	HAL_UART_Receive_IT(&huart1,&Usart1Rx,1);
	
	__HAL_UART_ENABLE_IT(&huart2,UART_IT_RXNE);
	HAL_UART_Receive_IT(&huart2,&Usart2Rx,1);
	
	

	if(__HAL_UART_GET_FLAG(&huart1,UART_FLAG_RXNE)==SET){
		while(USART2->ISR & 0x40 ==0);
		
		USART2->TDR = USART1->RDR;
	}
	
	
	
		if(__HAL_UART_GET_FLAG(&huart2,UART_FLAG_RXNE)==SET){
		while(USART1->ISR & 0x40 ==0);
		
		USART1->TDR = USART2->RDR;
	}


二、放在何处

1.插入1

在这里插入图片描述

uint8_t Usart1Rx=0;
uint8_t Usart2Rx=0;

2.插入2

在这里插入图片描述

__HAL_UART_ENABLE_IT(&huart1,UART_IT_RXNE);
HAL_UART_Receive_IT(&huart1,&Usart1Rx,1);
	
__HAL_UART_ENABLE_IT(&huart2,UART_IT_RXNE);
HAL_UART_Receive_IT(&huart2,&Usart2Rx,1);

3.插入3

在这里插入图片描述

	if(__HAL_UART_GET_FLAG(&huart1,UART_FLAG_RXNE)==SET){
		while(USART2->ISR & 0x40 ==0);
		
		USART2->TDR = USART1->RDR;
	}

4.插入3

		if(__HAL_UART_GET_FLAG(&huart2,UART_FLAG_RXNE)==SET){
		while(USART1->ISR & 0x40 ==0);
		
		USART1->TDR = USART2->RDR;
	}

三、显示成功

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

毕竟是shy哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值