当前位置: 首页 > news >正文

广告费内包括网站建设旅游网站建设流程步骤

广告费内包括网站建设,旅游网站建设流程步骤,电脑做试卷的网站,vs怎么添加图片做网站目录 概述 1 STM32定时器介绍 1.1 认识通用定时器 1.2 通用定时器的特征 1.3 递增计数模式 1.4 时钟选择 2 STM32Cube配置定时器时钟 2.1 配置定时器参数 2.2 配置定时器时钟 3 STM32H7定时器使用 3.1 认识定时器的数据结构 3.2 计数功能实现 4 测试案例 4.1 代码…

目录

概述

1 STM32定时器介绍

1.1 认识通用定时器

1.2 通用定时器的特征

1.3 递增计数模式

1.4 时钟选择

2 STM32Cube配置定时器时钟

2.1 配置定时器参数

2.2 配置定时器时钟

3 STM32H7定时器使用

3.1 认识定时器的数据结构

3.2 计数功能实现

4 测试案例

4.1 代码实现

4.2 验证


概述

本文主要介绍STM32H7通用性定时器计数功能的用法,笔者以TIM2定时器为例,介绍如何通过配置参数,实现定制化时钟的需求。

1 STM32定时器介绍

1.1 认识通用定时器

STM32H7的通用定时器包括TIM2/TIM3/TIM4/TIM5,通用定时器包含一个 16 位或 32 位自动重载计数器,该计数器由可编程预分频器驱动。它们可用于多种用途,包括测量输入信号的脉冲宽度( 输入捕获)或生成输出波形( 输出比较和 PWM)。使用定时器预分频器和 RCC 时钟控制器预分频器,可将脉冲宽度和波形周期从几微秒调制到几毫秒。

1.2 通用定时器的特征

通用 TIMx 定时器具有以下特性:
1) 16 位( TIM3 和 TIM4)或 32 位( TIM2 和 TIM5)递增、递减和递增/递减自动重载计数器

2)16 位可编程预分频器,用于对计数器时钟频率进行分频(可在运行时修改),分频系数介于 1        到 65535 之间。

3)多达 4 个独立通道,可用于:
      – 输入捕获
      – 输出比较
      – PWM 生成(边沿和中心对齐模式)
      – 单脉冲模式输出

4)使用外部信号控制定时器且可实现多个定时器互连的同步电路。

5)发生如下事件时生成中断/DMA 请求:
      – 更新:计数器上溢/下溢、计数器初始化(通过软件或内部/外部触发)
      – 触发事件(计数器启动、停止、初始化或通过内部/外部触发计数)
      – 输入捕获
      – 输出比较

6)支持定位用增量(正交)编码器和霍尔传感器电路

7)触发输入用作外部时钟或逐周期电流管理

1.3 递增计数模式

在递增计数模式下,计数器从 0 计数到自动重载值( TIMx_ARR 寄存器的内容),然后重新从 0 开始计数并生成计数器上溢事件。每次发生计数器上溢时会生成更新事件,或将 TIMx_EGR 寄存器中的 UG 位置 1(通过软件或使用从模式控制器)也可以生成更新事件。

通过软件将 TIMx_CR1 寄存器中的 UDIS 位置 1 可禁止 UEV 事件。这可避免向预装载寄存器写入新值时更新影子寄存器。在 UDIS 位写入 0 之前不会产生任何更新事件。不过,计数器和预分频器计数器都会重新从 0 开始计数(而预分频比保持不变)。此外,如果 TIMx_CR1寄存器中的 URS 位(更新请求选择)已置 1,则将 UG 位置 1 会生成更新事件 UEV,但不会将 UIF 标志置 1(因此,不会发送任何中断或 DMA 请求)。这样一来,如果在发生捕获事件时将计数器清零,将不会同时产生更新中断和捕获中断。发生更新事件时,将更新所有寄存器且将更新标志( TIMx_SR 寄存器中的 UIF 位)置 1(取决于 URS 位):
1)预分频器的缓冲区中将重新装载预装载值( TIMx_PSC 寄存器的内容)
2)使用预装载值 (TIMx_ARR) 更新自动重载影子寄存器

以下各图以一些示例说明当 TIMx_ARR=0x36 时不同时钟频率下计数器的行为。

1.4 时钟选择

计数器时钟可由下列时钟源提供:
1)内部时钟 (CK_INT)

2)外部时钟模式 1:外部输入引脚 (TIx)

3)外部时钟模式 2:外部触发输入 (ETR)

4)外部触发输入 (ITRx):使用一个定时器作为另一定时器的预分频器,例如,可将定时器13 配置为定时器 2 的预分频器。

2 STM32Cube配置定时器时钟

2.1 配置定时器参数

笔者使用STM32H7 的通用定时器TIM2,作为案例介绍通用定时器的用法:

2.2 配置定时器时钟

定时器的base时钟配置能为:200M Hz

配置完成后,就可以生成工程代码。

3 STM32H7定时器使用

3.1 认识定时器的数据结构

参数介绍:

参数名说明
Prescaler预分频系数
CounterMode计数方式
Period自动装载值
ClockDivision时钟分频因子
RepetitionCounter重复计数器的值
AutoReloadPreload自动重载使能

3.2 计数功能实现

代码第44行:Prescaler = 199, 由于定时器的base时钟为200M Hz, 此时定时器的计数时钟为

f = \frac{200M Hz}{100} = 1M Hz

代码第45行:配置up计数模式

代码第46行:Period = 49,按照1M Hz计数,当计数个数达到50个时,产生一次中断

代码第47行:不分频base时钟

代码第48行:自动重载计数使能

4 测试案例

通过配置定时器的参数,实现1ms周期计数

4.1 代码实现

代码参数配置如下:

/* TIM2 init function */
void MX_TIM2_Init(void)
{/* USER CODE BEGIN TIM2_Init 0 *//* USER CODE END TIM2_Init 0 */TIM_ClockConfigTypeDef sClockSourceConfig = {0};TIM_MasterConfigTypeDef sMasterConfig = {0};/* USER CODE BEGIN TIM2_Init 1 *//* USER CODE END TIM2_Init 1 */htim2.Instance = TIM2;htim2.Init.Prescaler = 199;htim2.Init.CounterMode = TIM_COUNTERMODE_UP;htim2.Init.Period = 499;htim2.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;htim2.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_ENABLE;if (HAL_TIM_Base_Init(&htim2) != HAL_OK){Error_Handler();}sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL;if (HAL_TIM_ConfigClockSource(&htim2, &sClockSourceConfig) != HAL_OK){Error_Handler();}sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;if (HAL_TIMEx_MasterConfigSynchronization(&htim2, &sMasterConfig) != HAL_OK){Error_Handler();}/* USER CODE BEGIN TIM2_Init 2 */HAL_TIM_Base_Start_IT(&htim2);/* USER CODE END TIM2_Init 2 */}

4.2 验证

通过示波器测试波形可得,Freq = 1K Hz, 周期为T = 1ms

http://www.yayakq.cn/news/390410/

相关文章:

  • 同一虚拟主机 2个网站上海高登联合建设网站
  • 建设公众号网站评分标准细则施工企业既搞建筑安装又搞建筑材料销售其应纳税种为
  • php网站开发教材个人做网站创业
  • 什么是网站网页主页wordpress管理页面
  • 简约式网站做三方网站多少钱
  • 企业展示网站案例必须网站的访问量
  • 网站建设题目企业名录查询器免费版
  • 视觉中国的图片可以拿来做网站上海网站建设网页制作
  • 郑州七彩网站建设站酷网素材
  • 山西科技网站建设网上暴利赚钱项目
  • 怎么建网站挣钱南宁网站开发制作
  • 在线营销型网站制作wordpress不用邮件确认
  • 网站如何做镜像软件开发外包平台
  • 个人博客网站建设方案南昌英文网站建设
  • 网站优化seo怎么做开什么加工厂不愁销路
  • 在线网站建设怎么样长沙网站定制
  • 网站排名优化是怎么做的网站主页排版
  • app科技产品网站建设上海建设工程检测网
  • 花生壳做的网站稳定吗wordpress 前台文章
  • 白城做网站商标设计网软件
  • 书店网站建设设计方案广告设计是学什么的
  • 东莞服饰网站建设上海每44秒就有一人死于新冠
  • 网站加视频播放设计怎么做的高端网站建设 上海
  • 5款免费的网站管理系统网站微信建设运营经验分享
  • 做网站的时候字体应该多大动漫推荐
  • 成都外贸网站建设做网站的颜色
  • wordpress 在线演示海南seo
  • 建视频网站系统优化大师免费安装下载
  • 自己做网站页面wordpress站点统计小工具
  • 单位做网站图片素材网站后台上传内容前台首页不显示