HAL库_多串口数据收发 -学习日志{可将其他串口数据通过同一串口发出(中断接收/轮询发送)}

学习日志

此程序使用中断接收/轮询发送,各个串口可以独立收发或将其他串口接收到的数据统一发给其中某一串口。
效果如下
将串口2和串口3的数据发送给串口1

//主函数
//包含头文件
#include "stm32f4xx_hal.h"
#include "string.h"
#include "my_usartx1.h"
#include "my_usartx2.h"
#include "my_usartx3.h"


//接收缓冲区定义
uint8_t Usart1_Rxbuffer;
uint8_t Usart2_Rxbuffer;
uint8_t Usart3_Rxbuffer;
int main(void)
{
   
  uint8_t txbuf_1[50];
  uint8_t txbuf_2[50];
  uint8_t txbuf_3[50];
 
  HAL_Init(); //复位所有外设,初始化Flash接口和系统滴答定时器
  SystemClock_Config();//配置系统时钟
  
  MX_USARTx1_Init();//初始化串口并配置串口中断优先级
  MX_USARTx2_Init();
  MX_USARTx3_Init();
/*
在复位后会向上位机发送所连串口信息,
如连入串口一后复位开发板,会向上位机发送“这是串口一”
*/
  memcpy(txbuf_1,"这是串口一",50);
  HAL_UART_Transmit(&husart1,txbuf_1,strlen((char *)txbuf_1),1000);
  
  memcpy(txbuf_2,"这是串口二",50);
  HAL_UART_Transmit(&husart2,txbuf_2,strlen((char *)txbuf_2),1000);
	
  memcpy(txbuf_3,"这是串口三",50);
  HAL_UART_Transmit(&
  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值