蓝桥杯嵌入式(G431)备赛笔记——DMA+UART

目录

CubeMX配置:

代码配置:

DMA通道接收: 

DMA通道发送: 

注意:

主函数中记得开启串口接收回调函数:

加了DMA的UART接收通道和一般的区别:

加了DMA的UART发送和一般的区别:


CubeMX配置:

 

代码配置:

DMA通道接收: 

u8 rx_buff[30];
u8 rx_data;
u8 buff_size = 0;
u32 rx_tick = 0;

//DMA+UART
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
	rx_tick=uwTick;
	HAL_UART_Receive_DMA(&huart1, &rx_data,1);
	rx_buff[buff_size++]=rx_data;
}

DMA通道发送: 

HAL_UART_Transmit_DMA(&huart1, (u8*)"你好,世界2!\r\n", sizeof("你好,世界1!\r\n"));

注意:

主函数中记得开启串口接收回调函数:

加了DMA的UART接收通道和一般的区别:

加了DMA的UART发送和一般的区别:

DMA模式下无法重定向,并且不需要考虑反应时间。

  • 11
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

玄奕子

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

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

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

打赏作者

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

抵扣说明:

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

余额充值