【华大测评】+串口DMA收发数据

news/2024/11/8 15:12:13/

串口传输用中断实现的话,要频繁的进入中断函数,这样无疑增加MCU的负担,干扰正常程序的运行,对于一些实时性强的应用,如数字显示应用中,液晶屏显示可能受影响而不能正常显示。用DMA实现串口收发数据,进行数据收发过程中,不需要MCU的干预,由DMA独立完成数据的收发,接收或者发送完成后才进入中断做后续处理,因此MCU使用效率更高。
华大提供的例程中,对于串口DMA收发的应用比较简单,我这里结合以前的经验将串口收发用DMA实现。

使用华大免费提供的DEMO板D的基础上实现,MCU型号是HC32F460,当前例程使用的资源简单介绍
1,拥有 2 个 DMA 控制单元,共 8 个独立通道, 可以独立操作不同的 DMA 传输功能;
2,有4个串行收发器模块(USART单元),能够灵活地与外部设备进行全双工数据交换;


实现了功能,
1,系统滴答初始化及延时,
2,串行收发数据,用DMA实现,一次收发数据最大USART_DATA_BUFF_SIZE-1个字符,
3,用接收超时中断实现一次接收数据少于(USART_DATA_BUFF_SIZE-1)个字符的传输,


有4个文件,分别如下

  Systick.c 系统滴答文件

/******************************************************************************
* 文件名  :SysTick.c
* 描述    :SysTick

http://www.ppmy.cn/news/337023.html

相关文章

【国产单片机】华大HC32L13系列使用printf进行调试(多种方法)

———————————————— 华大HC32L13系列国产32单片机开启串口打印(汇总多种方法) ———————————————— 官方demo存在的问题 使用keil5 MDK进行开发时,无法使用printf()函数进行串口调试,按照网上关于ARM…

博客园美化技巧汇总

首先得有js权限 1.1 页脚js代码 <script type"text/javascript"> /*功能&#xff1a;生成博客目录的JS工具测试&#xff1a;IE8&#xff0c;火狐&#xff0c;google测试通过zhang_derek2018-01-03 */ var BlogDirectory {/*获取元素位置&#xff0c;距浏览器左…

yolov8量化部署(基于openvino和tensorrt)

yolov8 openvino量化部署 环境配置&#xff1a; pip install ultralytics && pip install openvino-dev将pytorch模型转为openvino模型: from ultralytics import YOLO# Load a model model YOLO("./yolov8n.pt") # load an official model# Export the…

Scala概述及变量和常量的重点

1.什么是scala Scala是一种多范式的编程语言&#xff08;多范式&#xff1a;多种编程方法的意思。有面向过程、面向对象、泛型、函数式四种程序设计方法&#xff09;&#xff0c;其设计的初衷是要集成面向对象编程和函数式编程的各种特性。Scala运行于Java平台&#xff08;Jav…

软件设计说明书大纲

《软件需求分析与设计》课程综合实践 项目名称&#xff1a;《XX培训机构教学管理系统》 设计说明书 学院&#xff1a; 班级&#xff1a; 小组成员&#xff1a; 1引言 1.1编写目的 1.2背景 1.3定义 1.4参考资料 2总体设计 2.1需求规定 2.2运行环境 2.3基本设计概念 2.4…

【Python开发】FastAPI 10:SQLAlchemy 数据库操作

在 FastAPI 中使用 SQL 数据库可以使用多个 ORM 工具&#xff0c;例如 SQLAlchemy、Tortoise ORM 等&#xff0c;类似 Java 的 Mybatis 。这些 ORM 工具可以帮助我们方便地与关系型数据库进行交互&#xff0c;如 MySQL 、PostgreSQL等。本篇文章将介绍如何使用 SQLAlchemy 来完…

深度剖析整形数据在内存中的存储

&#x1f4d5;博主介绍&#xff1a;目前大一正在学习c语言&#xff0c;数据结构&#xff0c;计算机网络。 c语言学习&#xff0c;是为了更好的学习其他的编程语言&#xff0c;C语言是母体语言&#xff0c;是人机交互接近底层的桥梁。 本章来学习数据的存储。 让我们开启c语言学…

【实战】体验SadTalker

论文http://openaccess.thecvf.com//content/CVPR2023/papers/Zhang_SadTalker_Learning_Realistic_3D_Motion_Coefficients_for_Stylized_Audio-Driven_Single_CVPR_2023_paper.pdf github GitHub - OpenTalker/SadTalker: [CVPR 2023] SadTalker&#xff1a;Learning Realist…