STM32学习
文章平均质量分 95
STM32渐进学习
编程圈子
编程圈子,谢厂节的博客
展开
-
STM32学习14 ADC模数转换
本文使用芯片是 STM32F103ZET6 进行ADC模数转换的实验。原创 2024-04-24 14:24:19 · 911 阅读 · 0 评论 -
STM32 学习13 低功耗模式与唤醒
STM32微控制器提供了多种低功耗模式,以便在需要节能的应用场景中最大限度地减少功耗。默认情况下,系统复位或上电复位后,微控制器进入运行模式。在运行模式下,HCLK为CPU提供时钟,并执行程序代码。当MCU不需要运行时,就可以利用低功耗模式来节省功耗。STM32有多种低功耗模式,用户可以根据电源消耗、启动速度、可唤醒资源来选择最佳的低功耗模式。原创 2024-04-23 16:36:19 · 1866 阅读 · 0 评论 -
STM32 学习12 输入捕获与触摸按键
输入捕获(Input Capture)是一种用于测量外部信号脉冲宽度或者频率的技术,常用于测量传感器输出、编码器信号、脉冲调制信号等。输入捕获通常通过定时器模块来实现输入捕获功能。原创 2024-03-14 09:55:59 · 1000 阅读 · 0 评论 -
STM32 学习11 独立看门狗与窗口看门狗
看门狗(WatchDog Timer),是一种电子或软件定时器,采用类似心跳的机制,监测单片机是否处于正常工作状态。在正常工作状态,单片机会定期重置看门狗,当单片机发生异常时,看门狗无法正常重置,计时器会产生超时信号。STM32F10x 内置两个看门狗,分别是独立看门狗(IWDG) 和窗口看门狗 (WWDG)。原创 2024-03-11 09:40:20 · 926 阅读 · 0 评论 -
STM32 学习10 PWM输出
PWM的全称是脉冲宽度调制(Pulse Width Modulation),是一种控制模拟信号的方法。它通过改变脉冲的宽度来控制模拟信号的平均值。STM32F1除了基本定时器TIM6和TIM7,其它定时器都可以产生PWM输出。TIM1和TIM8:均可同时产生7路PWM输出;其它通用定时器:均可同时产生4路PWM输出。在STM32微控制器中,生成PWM信号通常涉及到自动重装载寄存器(ARR)和比较寄存器(CCR)两个重要的寄存器。原创 2024-03-08 12:11:45 · 1266 阅读 · 0 评论 -
STM32 学习9 中断、外部中断及定时器中断
中断是一种计算机编程中的技术,用于在程序执行期间暂停当前任务,转而执行预定义的中断服务程序(ISR),处理特定的事件或信号。中断机制允许系统对实时事件做出及时响应,而不必用循环去等待特定事件的发生。STM32系列微控制器提供了丰富的中断支持,包括但不限于外部中断、定时器中断、串口中断和DMA中断等。2个 基本定时器(TIM6和TIM7):用于生成简单的定时中断,适用于一些简单的定时任务。4个 通用定时器(TIM2至TIM5):具有更多的功能和配置选项,可以实现更复杂的定时任务和PWM输出等功能。原创 2024-03-07 15:02:18 · 2602 阅读 · 0 评论 -
STM32 学习8 USART串口通讯与printf重定向
STM32 F103ZET6包含多个UART、USART串口。同步和异步通信全双工通信支持硬件和软件流控制机制异步通信全双工通信无需外部时钟信号。原创 2024-03-06 12:16:32 · 1483 阅读 · 0 评论 -
STM32学习7 按键扫描
本实验使用普中STM32-F1开发板,芯片型号是STM32F103ZET6。其按键电路如下:对应的芯片引脚:从电路可以看出,键盘的 KEY_UP 键如果接通,会连接高电平。KEY_UP:GPIOA GPIO_Pin0 引脚KEY_LEFT:GPIOE GPIO_Pin2 引脚KEY_RIGHT:GPIOE_GPIO_Pin4 引脚KEY_DOWN:GPIOE_GPIO_Pin3 引脚// 引脚和端口// 读取引脚状态。原创 2024-03-03 12:49:08 · 1998 阅读 · 0 评论 -
STM32学习6 SysTick系统定时器
SysTick 是 Cortex-M 内核中的一个系统定时器,经常被用作系统中断控制器的基础,或者作为操作系统的时间片轮转机制的基准。SysTick 会定时产生中断请求,当计数器达到设定值时,SysTick会触发一个SysTick定时器中断,向NVIC发出中断请求。当 SysTick 定时器的计数器值减为零时,会触发一个 SysTick 中断请求,向 NVIC 发送中断请求信号。用于配置 SysTick 定时器的工作模式、使能定时器和中断,并提供定时器当前状态的查询功能。原创 2024-03-02 20:34:36 · 976 阅读 · 0 评论 -
STM32学习5 时钟系统
系统时钟是STM32微控制器中最重要的部分之一,它负责提供时序信号以驱动处理器核心、外设和其他系统模块的运行。系统时钟通常由多个时钟源、时钟分频器和时钟树组成,这些组件共同构成了系统时钟的组成和层级结构。/*** @brief 配置外部高速时钟(HSE)和 PLL* @param div: PLL输入时钟分频系数* pllm: PLL倍频系数*/// 复位 RCC 寄存器到默认值// 使能外部高速时钟(HSE)// 等待外部时钟稳定// 配置 AHB 时钟分频系数// AHB 不分频。原创 2024-02-28 14:32:28 · 1089 阅读 · 0 评论 -
STM32学习4 位带操作
STM32微控制器中的位带操作(Bit-Banding)是一种特殊的内存映射技术,它允许将特定的位(Bit)与特定的内存地址绑定,从而实现对单个位的原子级操作。位带操作在STM32中通常用于对GPIO端口、寄存器以及其他外设的单个位进行读写操作,提高了代码的可读性和效率。原创 2024-02-27 13:35:06 · 1114 阅读 · 0 评论 -
STM32学习3 寄存器映射和GPIO寄存器编程
本文通过介绍GPIO寄存器,介绍寄存器编程方法,实现与前一章库函数编程类似的控制功能。原创 2024-02-27 09:29:11 · 1094 阅读 · 0 评论 -
STM32 学习2 库函数控制GPIO输出
GPIO是STM32微控制器上的一组引脚,可配置为输入或输出模式,用于与外部设备进行数字信号交换。每个GPIO引脚都有一个唯一的编号,通常称为引脚名称或引脚号码。STM32系列微控制器通常具有多个GPIO引脚,数量取决于具体型号。GPIO模块是STM32微控制器中非常重要的功能之一,它允许微控制器与外部设备进行数字信号交换。通过正确配置和使用GPIO,可以实现各种应用,包括传感器接口、控制输出设备等。原创 2024-02-18 15:46:24 · 1290 阅读 · 0 评论 -
STM32 学习1 Keil及Vscode协同开发环境搭建
1.安装Keil uVision4(MDK4.12).zip2.创建Project原创 2015-01-07 22:06:01 · 7286 阅读 · 1 评论