文章目录前言一、GPIO的功能描述二、GPIO的四种输入模式1.GPIO浮空输入_IN_FLOATING2.GPIO上拉输入_IPU3.GPIO下拉输入_IPD4.GPIO模拟输入_AIN三、GPIO的四种输出模式1.GPIO开漏输出_OUT_OD2.GPIO推挽输出_OUT_PP3.GPIO开漏复用输出_AF_OD4.GPIO推挽复用输出_AF_PP四、GPIO的配置方法1.定义GPIO引脚的
目录STM32启动模式GPIO工作方式输入模式:模式1:输入浮空模式模式2,输入上拉模式: 模式3:输入下拉模式:模式4:模拟模式输出模式: 模式1:开漏输出模式模式2:开漏复用输出模式模式3:推挽输出模式模式4:复用推挽输出最后总结下使用情况:GPIO相关配置寄存器STM32启动模式BOOT1 = X, BOOT0 = 0,执行flash程序BOOT1 = 0, BOOT0
STM32编程时,如何确定中断回调函数的函数名换句话说,就是如何找到中断回调函数的函数名 程序进中断时,都会调用中断回调函数,很多初学者朋友在用STM32编程时,经常不知道这个回调函数的函数名。 其实这个问题有2个通用的解法。EXTI外部中断,方法1:中断内打断点,跟踪运行,找到回调函数本方法适用中断过程简单的中断,如果比较长的话,当然也可以,不过建议用后面的方法 以多线共用中断为例,本例是4~1
按键输入实验1. 实验介绍本实验介绍如何使用STM32F103的IO口作为输入使用。IO口作为输入使用时,是通过读取IDR的内容来读取IO口的状态的。本实验利用板载的4个按键,来控制板载的两个LED的亮灭和蜂鸣器。其中KEY_UP控制蜂鸣器;K1控制D1,按一次亮再按一次灭;K2控制D2,按一次亮再按一次灭;K3同时控制D1和D2,按一次它们的状态就翻转一次2. 硬件设计用到的硬件资源有:指示灯D1、D2蜂鸣器BUZ4个按键:KEY_UP、K1、K2、K3硬件连接原理图如下,注意K
原创 2022-01-04 11:41:14
543阅读
1点赞
一、概念理解PWM输入捕获模式是输入捕获模式的特例,自己理解如下每个定时器有四个输入捕获通道IC1、IC2、IC3、IC4。且IC1IC2一组,IC3 IC4一组。并且可是设置管脚和寄存器的对应关系。同一个TIx输入映射了两个ICx信号。这两个ICx信号分别在相反的极性边沿有效。两个边沿信号中的一个被选为触发信号,并且从模式控制器被设置成复位模式。当触发信号来临时,被设置成触发输入信号的捕获寄存器
1.GPIO是什么可以做输入输出的端口,GPIO端口通过程序可以配置输入输出模式和复用的功能。2.在芯片中如何分布1.一共有九组IO口,PA-PI 2.其中PA-PH,每组16个 3.PI只有PI0-PI11 4.STM32中176多个引脚,140个可以作为IO口。3.STM32的IO口的复用1.复用意思 就是原本一个IO口就只能执行一种功能,例如只能作为串口,定时器等其中一种功能,无法改变了。
原理说明捕获信号的频率其实有很多中实现方式,外部中断、输入捕获、使用外部时钟计数器等。对STM32有一定了解的朋友们在测量频率的问题上往往都会想到利用输入捕获,输入捕获的方式在中低频率段(1HZ-200KHZ)的测量还是比较准确的。在高频段还是建议采用外部时钟计数器的方式来实现。采用输入捕获实现频率测量的实现步骤如下:设置输入捕获为上升沿检测记录第一次t1发生上升沿时捕获比较寄存器(CCR)的值c
1.输入捕获简介输入捕获模式可以用来测量脉冲宽度或者测量频率,下图以测量脉宽为例来说明输入捕获的原理假定定时器工作在向上计数模式,图中t1-t2的时间就是我们需要测量的低电平时间。测量方法为:首先设置定时器通道x为下降沿捕获,在t1时刻就会捕获到当前的CNT值,然后立即清零CNT,并设置通道x为上升沿捕获,到t2时刻又会发送捕获事件,得到此时的CNT值(记为CCRx2)。在t1-t2之间可能产生N
原创 2020-12-16 23:42:53
1653阅读
输入捕获1. 输入捕获简介2. 硬件设计3. 软件设计3.1 STM32CubeMX设置3.2 MDK-ARM编程4. 下载验证
原创 2022-01-04 11:41:12
3009阅读
(本文参考STM32  开发指南 V1.3   —— ALIENTEK 战舰 STM32 开发板库函数教程 )1. 实验设计我们用 TIM5 的通道 1(PA0)来做输入捕获,捕获 PA0 上高电平的脉宽(用 WK_UP 按键输入高电平),通过串口打印高电平脉宽时间。2. 原理说明基本原理可以参考上一篇博文,在上个实验的基础上,我们稍作修改,就可以
     输入捕获模式可以用来测量脉冲宽度或者测量频率。STM32的定时器,除了TIM6和TIM7,其他定时器都有输入捕获功能。STM32输入捕获,简单的说就是通过检测TIMx_CHx上的边沿信号,在边沿信号发生跳变(比如上升沿/下降沿)的时候,将当前定时器的值(TIMx_CNT)存放到对应的通道的捕获/比较寄存(TIMx_CCRx)里面,完成一次捕获。同
脉冲信号用于设备控制是非常常见的,但在一些情况下,我们希望精确的控制脉冲的数量以实现对运动的精确控制。实现的方式也许有多种多样,但使用计时器来实现此类操作是人们比较容易想到的。1、原理概述我们知道在STM32平台上,使用计时器来实现PWM操作是非常常见的用法。使用的是单一计时器,事实上通过主从两个计时器配合我们也可通过生成PWM波的方式精确控制输出脉冲的数量。接下来我们就来简单了解一下使用主从计时
注意点:1、在学习的过程中我们使用到与串口实验相类似的一个寄存器(本质是一个变量),用来处理不同的情况,在今后的学习也可以使用这种方法,这种寄存器的组成如下图所示:             2、确定捕获到一个完整高电平的软件实现(包括如果处理接收到的高电平持续时间过长的情况)void TIM2_IRQHandler(void)
1.实验介绍本实验介绍如何使用STM32F103的IO口作为输入使用。IO口作为输入使用时,是通过读取IDR的内容来读取IO口的状态的。实验中利用板载的4个按键,来控制板载的两个LED的亮灭和蜂鸣器。其中KEY_UP控制蜂鸣器;K1控制D1,按一次亮再按一次灭;K2控制D2,按一次亮再按一次灭;K3同时控制D1和D2,按一次它们的状态就翻转一次2.硬件设计用到的硬件资源有:*指示灯D1、D2*蜂鸣
原创 2020-12-17 00:13:37
805阅读
STM32CubeMX输入配置---按键  本示例主要讲解IO口输入模式的应用,以按键驱动为例来学校输入模式配置方法。本次实验所用开发板有3个按键,其中一个为复位按键,另外两个则可用户自行驱动。我们采用板载的2个按键来实现对LED灯开关控制。1.硬件接口  SW2为复位按键,已直接接到芯片复位引脚上,SW3接在PB0上、SW4接在PB1上。按键按下均为低电平。2.软件设计2.1 GPIO引脚模式简
原创 精选 2022-11-23 14:49:14
1592阅读
STM32CubeMX 真的不要太好用由于工作内容的变动,我已经很久没有正经的玩过单片机了,近期又要用它做个小玩意了,还是选 stm32 吧,外设库开发不要太方便,哈哈哈先去 stm32 社区逛了逛,发现了一个新字眼 STM32CubeMX,简单看了下,大概明白是个 ST 公司新推出的一个配置工具,直接由图形界面简单配置下,生成初始化代码,并对外设做了进一步的抽象,让开发人员更只专注应用的开发,挺
转载 2024-06-19 19:44:29
461阅读
目录一、用STM32F103输出一路PWM波形1.打开文件2.配置3.结果二、输出2KHZ的正弦波1.构建一个周期为2KHZ的正弦波音频信号2.生成周期点3.运行代码修改4.结果三、数字音频数据转换为模拟音频波形输出1.音频截取2.生成周期点3.运行结果 一、用STM32F103输出一路PWM波形1.打开文件• 打开之前网盘下载的野火资料: • 打开,编译构建。 • 之后点击运行,选择分析窗口:
转载 10月前
340阅读
(一)GPIO1.GPIO通用输入输出端口的简称。2.STM32的引脚分类电源管脚(VDD\VSS\VREF)晶振管脚(PH0\PH1)复位管脚(NRST)下载管脚BOOT管脚(下载模式切换,boot0、boot1)GPIO管脚STM32F407ZGT6数据手册中P44查看管脚功能3.GPIO的基本结构3.1.推挽和开漏(1)推挽输出输出控制为1或0时分别使P-MOS和N-MOS切换导通和关闭的状
转载 2024-07-16 14:46:10
152阅读
文章目录摘要一、简介1.GPIO简介2.LED3.按键4.蜂鸣器二、硬件电路设计1.LED电路2.按键电路2.蜂鸣器电路三、软件设计1.CubeMX配置2.CubeIDE代码3.结果显示四、总结五、附录 摘要本篇文章用STM32CubeMXSTM32CubeIDE软件编程,主控芯片为STM32F407ZGT6驱动LED、按键和蜂鸣器,通过按键来控制蜂鸣器和LED灯的状态。这三个外设都较为基础和
STM32CubeMX及所需环境阿里云盘下载地址(需要先安装Java环境):  阿里云盘分享1.功能需求:所用核心板的芯片型号为STM32H750VBT6, 需要用到的功能有:4路ADC(DMA方式)1路DAC(作为输出给运放提供参考电压)1路UART(DMA方式收发,接收中断用空闲中断)打开STM32CubeMX软件,选择对应的芯片型号,进入配置页面:2.RCC参数配置:时钟
  • 1
  • 2
  • 3
  • 4
  • 5