news 2026/6/10 12:29:43

STM32F0实战:基于HAL库开发【2.1】

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
STM32F0实战:基于HAL库开发【2.1】
7.4.2 从待机模式唤醒

待机模式允许达到能耗最低,它基于Cortex-M0深度睡眠模式,电压调节器禁用,1.8V域关闭,PLL、HIS和HSE振荡器也关闭,SRAM和寄存器内容丢失。只有RTC寄存器、RTC备份寄存器和备用电路保持工作。可以使用HAL库中的HAL_PWR_EnterSTANDBYMode()函数进入待机模式,由于待机模式下电压调节器和时钟均关闭,因此只有WKUP引脚的上升沿、RTC闹钟(Alarm A)、RTC唤醒、篡改事件、时间戳事件、NRST外部重置事件或IWDG复位才能将微控制器唤醒。

本例中待机模式下的唤醒是通过WKUP1(PA0)引脚来实现的,当微控制器复位后,同样是执行一个数字由“200”开始的递减,当数值递减至“0”时,执行WFI指令将微控制器置于待机模式,之后WKUP1(PA0)引脚的上升沿会将微控制器唤醒,并再次进行数字的递减过程。使用STM32CubeMX软件建立项目时,在“Pinout”和“Clock Configuration”视图中对引脚和时钟的配置方法如图7-8和图7-9所示。

待机模式下的唤醒程序详见代码清单7-2。

代码清单7-2 待机模式下的唤醒程序(main.c)(在附录J中指定的网站链接下载源代码)

第8章 DMA控制器

DMA(Direct Memory Access)即直接存储器访问,是一种不经过CPU而直接从存储器存取数据的数据交换模式。在DMA模式下,CPU只需要向DMA控制器下达指令,数据传输由DMA自动完成,这样能够减少CPU的资源占用。DMA是现代高性能微控制器的标准配置,本章将重点介绍STM32F0系列微控制器片内的DMA控制器。

8.1 DMA概述

DMA控制器用于提供外设和存储器之间、存储器和存储器之间的高速数据传输,数据可以通过DMA控制器进行快速传输而无须CPU干预,这就为其他操作保留了CPU的资源。DMA非常适用于快速设备与存储器批量交换数据的场合,使用DMA既能够保证数据传输的准确性,又可以大幅度减少快速设备的读写操作对CPU的干扰。

8.1.1 DMA控制器内部结构

STM32F072VBT6微控制器片内的DMA控制器共有7个通道,每个通道都相应地管理一个或多个外设对存储器的访问请求,DMA控制器和Cortex-M0内核共享系统数据总线,用于执行直接存储器数据传输,控制器内部的仲裁器用于协调不同DMA请求的优先权,其内部结构如图8-1所示。

当CPU和DMA同时访问相同的目标(RAM或外设)时,DMA请求会暂停CPU访问系统总线若干个周期,总线仲裁器执行循环调度,以确保CPU至少可以得到一半的系统总线带宽。每个通道都与专用的硬件DMA请求相连接,并且每个通道都支持软件触发。当有多个DMA请求发生时,其优先权可以通过软件编程来设置。数据源和目标数据区的传输宽度可以按需设置,数据可以以字节、半字或字的长度进行传输,但源和目标地址的数据长度必须一致。DMA传输的最大数量为65536,并且支持无限循环操作。每个DMA通道都有DMA传输中、DMA传输完成和DMA传输错误三个事件标志。这三个事件标志的逻辑或作为一个单独的中断请求,向CPU申请中断。

8.1.2 DMA的处理过程

在发生一个事件后,外设向DMA控制器发送一个D

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 10:29:01

学习周报三十二

摘要 本周聚焦于强化学习探索优化与多模态生成模型的技术细节。深入研究论文《Rewarding the Rare》,其针对强化学习后训练中出现的“探索坍缩”问题,提出基于策略层面唯一性的奖励机制,通过聚类分组对稀缺解题思路进行加权奖励,以…

作者头像 李华
网站建设 2026/6/10 11:40:16

MySQL 中的 utf8 vs utf8mb4 区别

目录核心区别详细对比1. **编码范围不同**2. **历史背景**3. **实际影响最明显的场景**4. **存储空间差异**5. **性能差异**关键限制**索引长度限制**实际使用建议1. **新项目一律使用utf8mb4**2. **现有系统迁移步骤**3. **连接配置**4. **排序规则选择**兼容性考虑**向下兼容…

作者头像 李华
网站建设 2026/6/10 11:41:19

本地运行!开源AI音乐生成器HeartMuLa完整安装与使用指南

HeartMuLa是一个开源的本地离线AI音乐生成器,包含音乐语言模型、编解码器、歌词转录模型和音频-文本对齐模型。支持多语言输入歌词和标签生成完整音乐,无需依赖云端,不限使用次数。文章提供了详细的环境准备、本地部署、命令行和ComfyUI可视化…

作者头像 李华