logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

STM32CubeMx使用STM32F4系列芯片实现串口DMA接收

本文介绍了STM32中DMA与串口配合实现数据接收的原理及实现方法。通过DMA可以直接将串口接收寄存器中的数据搬运到SRAM,无需CPU干预,提高系统效率。文章详细讲解了DMA请求机制、STM32CubeMX配置步骤(包括时钟设置、串口使能和DMA请求配置),并分析了HAL_UART_Receive_DMA函数的工作原理。最后说明了DMA传输完成后的回调机制,以及如何实现循环接收数据。该方案可显著

文章图片
#stm32#嵌入式硬件#单片机 +3
C++内存管理解析(初学者入门学习)

本文摘要: C/C++内存管理包含静态区、栈、堆和代码段的内存分布。C语言通过malloc/calloc/realloc进行动态内存分配,需手动检查返回值并管理内存释放。C++引入new/delete操作符,对内置类型与malloc/free功能类似,但对自定义类型能自动调用构造/析构函数,更安全高效。内存泄漏分为堆内存和系统资源泄漏,可通过智能指针或检测工具预防。operator new/del

文章图片
#c++#java#jvm
C++模板新手详解(上)

本文介绍了C++泛型编程中的模板技术。模板允许编写与类型无关的通用代码,通过函数模板和类模板实现代码复用。函数模板在编译时根据实参类型实例化特定函数版本,支持隐式和显式实例化。类模板则用于生成通用的数据结构,如动态数组vector的实现示例。文章重点讲解了模板的定义格式、实例化过程、匹配原则,以及使用注意事项,特别是嵌套依赖类型中typename关键字的应用场景。模板技术将重复工作交给编译器处理,

文章图片
#c++#算法#c语言 +1
C++继承使用详解(上)

本文主要介绍了面向对象程序设计中的继承机制。继承允许派生类复用基类特性并进行功能扩展,形成层次结构。文章详细阐述了继承的定义格式、访问限定符变化、基类与派生类对象转换规则,以及继承中的作用域问题(如成员隐藏)。同时讲解了派生类默认成员函数的生成规则,包括构造、拷贝构造、赋值和析构函数的调用顺序。此外,还探讨了继承与友元关系、静态成员的特性和复杂的菱形继承问题。通过虚拟继承可以解决菱形继承带来的二义

文章图片
#python#开发语言#c++ +4
C++继承使用详解(下)

摘要:本文讨论了C++中继承与组合两种代码复用方式的区别与选用原则。继承是白箱复用,会破坏父类封装;组合是黑箱复用,耦合度低且维护性好。建议优先使用组合,仅在需要多态或明确is-a关系时使用继承。例如"Car和BMW"是is-a关系适合继承,"Car和Tire"是has-a关系适合组合。当两种关系都符合时,应优先选择组合方式实现代码复用。

文章图片
#java#开发语言#c++ +4
C++模板新手详解(下)

文章摘要:本文探讨了C++模板编程中的关键技巧,重点分析了vector类模拟实现中的resize()函数设计。通过const T& val=T()的巧妙使用,实现了类型安全的默认参数机制,适用于任意类型T。同时介绍了非类型模板参数的使用限制和模板特化技术(全特化/偏特化),并解释了模板代码为何不适合分离编译,推荐将声明和定义放在同一文件中。这些技巧对编写高效、通用的模板类具有重要意义,是现

文章图片
#c++#算法#jvm +4
STM32CubeMx使用STM32F4系列芯片实现串口DMA接收

本文介绍了STM32中DMA与串口配合实现数据接收的原理及实现方法。通过DMA可以直接将串口接收寄存器中的数据搬运到SRAM,无需CPU干预,提高系统效率。文章详细讲解了DMA请求机制、STM32CubeMX配置步骤(包括时钟设置、串口使能和DMA请求配置),并分析了HAL_UART_Receive_DMA函数的工作原理。最后说明了DMA传输完成后的回调机制,以及如何实现循环接收数据。该方案可显著

文章图片
#stm32#嵌入式硬件#单片机 +3
通过STM32CubeMx使用STM32F4系列芯片的DMA中断发送数据翻转GPIO

本文详细讲解了STM32F411 DMA中断配置及使用流程。首先介绍了HAL_DMA_Start_IT()函数实现中断方式DMA传输的原理,包括参数配置、中断标志设置等关键步骤。接着说明需要通过HAL_DMA_RegisterCallback()注册回调函数来处理不同DMA事件,如传输完成(HAL_DMA_XFER_CPLT_CB_ID)。最后给出具体应用实例:在传输完成回调中通过计数器取余方式循

文章图片
#stm32#单片机#嵌入式硬件 +3
通过STM32CubeMx使用STM32F4系列芯片的DMA中断发送数据翻转GPIO

本文详细讲解了STM32F411 DMA中断配置及使用流程。首先介绍了HAL_DMA_Start_IT()函数实现中断方式DMA传输的原理,包括参数配置、中断标志设置等关键步骤。接着说明需要通过HAL_DMA_RegisterCallback()注册回调函数来处理不同DMA事件,如传输完成(HAL_DMA_XFER_CPLT_CB_ID)。最后给出具体应用实例:在传输完成回调中通过计数器取余方式循

文章图片
#stm32#单片机#嵌入式硬件 +3
到底了