草庐IT

STM32 HAL库开发——入门篇(2):定时器

目录一、TIMER定时器概述1.1软件定时原理1.2定时器定时原理1.3STM32定时器分类1.4STM32定时器特性表1.5STM32基本、通用、高级定时器功能整体的区别二、基本定时器2.1基本定时器简介2.3STM32定时器计数模式及溢出条件2.4定时器中断实验相关寄存器2.5定时器溢出时间计算方法2.6定时器中断实验配置步骤2.7编程实战:定时器中断实验三、通用定时器3.1通用定时器简介3.2通用定时器框图 3.3计数器时钟源3.3.1外部时钟模式13.3.2外部时钟模式23.3.3内部触发输入 3.4通用定时器PWM输出实验3.4.1通用定时器输出比较部分框图3.4.2通用定时器输出P

华硕主板开机提示按F1怎么办?华硕主板开机提示按F1的解决方法

最近有很多网友问我的电脑采用的是华硕主板,不过最近在进入黑苹果后再开机出现了F1键,想要在BIOS中关闭F1报错检测,不知道如何操作。开机需要按下F1键,通常这种问题并非是致命性故障,可以直接在主板中关闭。那么华硕主板开机提示按F1怎么办??下面魏叔就给大家分享华硕主板开机提示按F1的解决方法。华硕主板开机提示按F1的解决方法步骤:1、电脑开机之后,反复按下“DEL”键,进入主板BIOS设置中,按下F7键进入“AdvncedMode”(高级模式),如下图所示;2、我们找到启动选项卡(BOOT),进入启动设置选项中,如下图所示;3、找到“若出现错误等待按下F1键”并选择下拉,我们将默认的"ena

【STM32F4系列】【HAL库】电机控制(转速和角度)(PID实战1)

文章目录项目目标硬件搭建HAL初始化定时器PWM编码器定时器中断串口基础驱动获取速度获取角度电机控制PID速度环速度环设计速度环调参调试顺序P(比例)I(积分)总结位置环位置环设计位置环调参P调参成品项目目标实现电机最常使用的两个功能,转速控制和位置控制使用PID闭环控制(控制线性系统最简单快捷的控制方法)硬件搭建为了实现控制电机转动和闭环控制需要:电机(废话)编码器(霍尔编码器或者光电编码器均可)电机驱动(这里选的是l298n模块)千万注意黑色的地线,单片机的地要与12V的地(L298n的地)连接HAL初始化定时器PWM使用硬件PWM输出,定时器1,输出两路PWM分别代表PWM1和PWM2设

【STM32F4系列】【HAL库】电机控制(转速和角度)(PID实战1)

文章目录项目目标硬件搭建HAL初始化定时器PWM编码器定时器中断串口基础驱动获取速度获取角度电机控制PID速度环速度环设计速度环调参调试顺序P(比例)I(积分)总结位置环位置环设计位置环调参P调参成品项目目标实现电机最常使用的两个功能,转速控制和位置控制使用PID闭环控制(控制线性系统最简单快捷的控制方法)硬件搭建为了实现控制电机转动和闭环控制需要:电机(废话)编码器(霍尔编码器或者光电编码器均可)电机驱动(这里选的是l298n模块)千万注意黑色的地线,单片机的地要与12V的地(L298n的地)连接HAL初始化定时器PWM使用硬件PWM输出,定时器1,输出两路PWM分别代表PWM1和PWM2设

【STM32-HAL库】一步步搭建出FOC矢量控制(附C代码)

说明本文为无刷电机或PMSM电机驱动的简易代码,旨在分享一些个人调试过程的小心得,提供一个demo文件,程序仍有许多不完善的地方,建立起个人的FOC底层驱动,可以帮助快速熟悉FOC算法原理与使用方法,可以帮助验证新的电机控制算法。原理部分不再阐述。整个部分共有PWM模块、ADC电流采集、定时器编码器配置、SVPWM模块、FOC核心、PID模块、电压限幅模块,其实有了PWM与SVPWM以及一些必要的数学变换,我们就可以开环使电机转起来了,加入电角度与电流采集作为反馈后,我们就能做到电流闭环,再加入速度PID就可以做到速度闭环,其他的模块只是这些目的的辅助手段罢了。注意:调试一定要注意安全!!!使

【STM32-HAL库】一步步搭建出FOC矢量控制(附C代码)

说明本文为无刷电机或PMSM电机驱动的简易代码,旨在分享一些个人调试过程的小心得,提供一个demo文件,程序仍有许多不完善的地方,建立起个人的FOC底层驱动,可以帮助快速熟悉FOC算法原理与使用方法,可以帮助验证新的电机控制算法。原理部分不再阐述。整个部分共有PWM模块、ADC电流采集、定时器编码器配置、SVPWM模块、FOC核心、PID模块、电压限幅模块,其实有了PWM与SVPWM以及一些必要的数学变换,我们就可以开环使电机转起来了,加入电角度与电流采集作为反馈后,我们就能做到电流闭环,再加入速度PID就可以做到速度闭环,其他的模块只是这些目的的辅助手段罢了。注意:调试一定要注意安全!!!使

HAL库函数中的HAL_I2C_Mem_Write /HAL_I2C_Mem_Read中的DevAddress解析

在HAL库函数中的HAL_I2C_Mem_Write/HAL_I2C_Mem_Read两个函数的作用就是玩IIC设备中写入/读取多个直接的数据,函数原型:HAL_StatusTypeDefHAL_I2C_Mem_Read(I2C_HandleTypeDef*hi2c,uint16_tDevAddress,uint16_tMemAddress,uint16_tMemAddSize,uint8_t*pData,uint16_tSize,uint32_tTimeout);HAL_StatusTypeDefHAL_I2C_Mem_Write(I2C_HandleTypeDef*hi2c,uint16_

编码电机测速(stm32f1/HAL库/CubeMX/编码器模式/平衡小车/直流减速电机/超详细)

系列文章目录(STM32常用外设/HAL库版)一、HC-SR04超声波模块的使用二、OLED的HAL库代码介绍及使用三、直流减速电机的测速以及电机驱动的使用(本篇)文章目录系列文章目录(STM32常用外设/HAL库版)前言一、所用的器材模块介绍二、接线说明三、CubeMX配置3.1.时钟树的配置3.2.PWMA配置(TIM4)3.3.编码器模式配置(TIM3)3.4.定时器配置(TIM1)3.5.IIC和USART配置3.6.NVIC配置3.7.最终引脚图四、程序代码及说明4.1.encoder.h4.2.encoder.c4.3.motor.h4.4.main.c总结前言由于之后要着手开始做

编码电机测速(stm32f1/HAL库/CubeMX/编码器模式/平衡小车/直流减速电机/超详细)

系列文章目录(STM32常用外设/HAL库版)一、HC-SR04超声波模块的使用二、OLED的HAL库代码介绍及使用三、直流减速电机的测速以及电机驱动的使用(本篇)文章目录系列文章目录(STM32常用外设/HAL库版)前言一、所用的器材模块介绍二、接线说明三、CubeMX配置3.1.时钟树的配置3.2.PWMA配置(TIM4)3.3.编码器模式配置(TIM3)3.4.定时器配置(TIM1)3.5.IIC和USART配置3.6.NVIC配置3.7.最终引脚图四、程序代码及说明4.1.encoder.h4.2.encoder.c4.3.motor.h4.4.main.c总结前言由于之后要着手开始做

STM32 keil如何下载STM32芯片F1/F4固件库 .pack文件

1.用keil打开STM32F407的程序,结果提示下面的问题,就是没有安装固件库2.然后去keil官网下载对应的固件库,官网地址:https://www.keil.com/3.然后选中对应的芯片类型,譬如我这个就是STM32F407IGTx4.双击下面的图标,即.pack可以直接点击安装,并且目录直接默认是keil安装的目录。5.安装之后再次打开keil就不会报错了,可以看到已经安装的固件库