STM32f767之通用定时器

news2024/11/26 1:24:13

一,通用定时器基本介绍

 

 

 二,配置相关项

1,时钟源。       

 
 一般我们选择内部时钟,TIM3通过APB1得到。

2,主从模式和触发源。

        用到的比较少,暂时不考虑,选disable。

3,输出通道。

              如果需要输入捕获或PWM输出等功能,映射到GPIO引脚,开启相应功能,后面还有一些参数设置。我这里只做内部定时用,所以先禁止。

        

  

三,参数设置,"Parameter Settings"。

使能内部时钟之后的参数设置

Prtscaler (定时器分频系数)  : 7199  (将定时器时钟分频,做计数的频率)

Counter Mode(计数模式)    Up(向上计数模式)                    

Counter Period(自动重装载值) :    4999     (到达此值,重新计数)

CKD(时钟分频因子) :       No Division 不分频 

选项:  可以选择二分频和四分频                         

auto-reload-preload(自动重装载)  :    Enable 使能

TRGO Parameters    触发输出 (TRGO)               不使能    与本节无关,之后做详细介绍 

TRGO:    定时器的触发信号输出  在定时器的定时时间到达的时候输出一个信号(如:定时器更新产生TRGO信号来触发ADC的同步转换,) 

参考来源:

(2条消息) STM32cubeIDE学习汇总(三)----利用定时器实现定时取反LED 控制亮灭_辽G.默语的博客-CSDN博客_cubeide 定时器

使能中断

三,应用实例

          定时500ms,触发中断,重新计数

1,确定定时器的时钟频率

2,根据公式求计时时间。

arr 为自动重装载值  

psc为定时器分频系数

 

 Tout = (4999+1)*(4788+1)/(48000000)  =  0.5     单位 s

四,程序

1,设置好以后,自动生成初始化代码MX_TIM3_Init()和中断void TIM3_IRQHandler(void)函数

位置分别如下

2, 在main.c中,添加中断调用函数

//定时�?????3中断服务函数调用
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{
    if(htim==(&htim3))
    {
        timeout++;
        LED0_Toggle;
    }
}

3,使能定时器中断

在main.c中添加,注意添加的位置,在用户区添加,不然会覆盖掉

HAL_TIM_Base_Start_IT(&htim3); //使能定时器3和定时器3更新中断:TIM_IT_UPDATE

 4,使用,进行计时

        __HAL_TIM_SET_COUNTER(&htim3,0);//重设TIM3定时器的计数器�??
		timeout=0;		
		delay_ms(100);
		time=__HAL_TIM_GET_COUNTER(&htim3)+(uint32_t)timeout*50000;//计算�????用时�????
		printf("time = %0.3fms\r\n",((float)time*10)/1000);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/52764.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

8年开发经验,帮你总结这帮双面HR们

对于广大开发工程师来说,你觉得天天看得见的那个hr小姐姐是什么形象? 读完本文,或许你会有一个不一样的认识,这个职业注定这些人有两面性 1、 百万人群中取你简历 从你还没进公司,还在面试阶段,就是hr跑前跑…

计算机网络全篇知识学习打卡

哈工大计算机网络学习打卡 1. 什么是计算机网络? 概念:通信技术与计算机技术紧密结合的产物,计算机网络就是一种特殊的通信网络。只不过计算机网络发送出来的信息是数据化信息。 定义:计算机网络就是互连的,自治的计…

TypeScript(TS)基础内容详细介绍

目录 一、TypeScript概念 二、TypeScript特点 三、开发环境配置 四、初识ts 五、TypeScript类型声明 1、any: 2、number数字类型 3 string字符串类型 4 boolean布尔类型 表示逻辑值:true 和 false。 5 数组类型 6 元组类型 7 enum枚举类型…

[附源码]Python计算机毕业设计SSM篮球馆预约小程序(程序+LW)

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

MySQL介绍与安装(超详细)

数据库介绍 数据库(database)简称DB,实际上就是一个文件集合,是一个存储数据的仓库,本质就是一个文件系统,数据库是按照特定的格式把数据存储起来,用户可以对存储的数据进行增删改查等操作。 数据库存储数据特点 ●…

零拷贝原理与实现

1.传统拷贝 FileInputStream、FileOutputStream read:将数据从磁盘读取到内核态缓冲区,再从内核态缓冲区拷贝到用户缓冲区 write:将数据从用户缓冲区写入到socket缓冲区,再从socket缓冲区写入到网卡设备 内核空间:…

Error: [mobx-miniprogram] no store specified (小程序全局数据共享bug)

话不多说,上bug!!! 这个错误提示引入的store文件没有被指定,但是看了一下以为是后面的路径没引对,就重新引入还是不行,页面效果渲染不出来,然后查文档也没遇到类似的问题&#xff0…

【JSP】JSTL汇总——源码解析

JSTL什么是JSTL使用JSTL的步骤JSTL标签的原理分析标签源码看核心标签库中的forEach标签主标签库常用标签forEach标签begin、end、step属性stuStatus属性if标签test属性var和scopechoose和when标签什么是JSTL JSTL全称为 Java Standard Tag Library(Java标准标签库&…

[附源码]计算机毕业设计springboot区域医疗服务监管可视化系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

C++读写Excel有许多开源库

1、OpenXLSX GitHub - troldal/OpenXLSX: A C library for reading, writing, creating and modifying Microsoft Excel (.xlsx) files. 依赖于第三库: PugiXMLZippy (C wrapper around miniz)Boost.Nowide (for opening files with non-ASCII names on Windows)…

(二)初识Vue

文章目录Vue环境搭建第一步:Vue下载第二步:安装开发者调试工具第一个Vue程序第一步:引入Vue.js第二步:关闭生产提示第三步:准备容器第四步:创建Vue实例第一个Vue程序的小细节细节一:如果使用的是…

Vue 2.0/3.0

vue核心 vue官网 1、 英文官网: https://vuejs.org/ 2、中文官网: https://cn.vuejs.org/ 模板语法 插值语法(双大括号表达式)指令语法(以 v-开头) Vue模板语法有2大类: 1.插值语法: 功能:用…

01【SpringMVC快速入门】

文章目录01【SpringMVC快速入门】一、SpringMVC快速入门1.1 SpringMVC概述1.1.1 SpringMVC是什么1.2 SpringMVC环境搭建1.2.1 创建web项目1.2.2 Maven依赖:1.2.3 配置web.xml1.2.4 SpringMVC配置1.2.5 编写Controller1.2.6 编写视图页面01【SpringMVC快速入门】 一…

高等数学(第七版)同济大学 习题10-4 (前7题)个人解答

高等数学(第七版)同济大学 习题10-4(前7题) 函数作图软件:Mathematica 1.求球面x2y2z2a2含在圆柱面x2y2ax内部的那部分面积.\begin{aligned}&1. \ 求球面x^2y^2z^2a^2含在圆柱面x^2y^2ax内部的那部分面积.&\e…

设置Oracle表空间只读

如果对表存储的规划较好&#xff0c;将业务相关的表都放在几个表空间里&#xff0c;可以通过设置表空间只读的方式&#xff0c;让这些表只读&#xff1a; alter tablespace <tablespace name> read only; 解除只读&#xff1a; alter tablespace <tablespace name>…

2023年软考备考,软件设计师知识点速记,速看

2023上半年软考中级软件设计师知识点速记分享给大家&#xff0c;快来一起打卡学习吧&#xff01; 1、码制的表示 2、浮点数的表示 &#xff08;1&#xff09;浮点数格式 阶码决定范围&#xff0c;阶码越长&#xff0c;范围越大&#xff1b; 尾数决定精度&#xff0c;尾数越…

Android编写一个视频监控App

Android编写一个视频监控App 很久没写app了&#xff0c;小项目需要写一个rtmp拉流的视频监控app&#xff0c;简单记录一下。 参考&#xff1a;Android实现rtmp推拉流摄像头&#xff08;三&#xff09;_空空7的博客-CSDN博客_android rtmp拉流 相关库 引用外部库首先添加这个…

C_C++文件,字符串和控制台格式化处理总结

在实际业务开发中经常会用到文件&#xff0c;字符串和控制台格式化操作&#xff0c;格式化操作无非就是将数据转成指定格式存储在文件或者字符串&#xff0c;或者显示在控制台上&#xff0c;或者反过来。本篇结合实际工作将C/C语言中常用的文件&#xff0c;字符串和控制台常用格…

[附源码]Python计算机毕业设计Django高血压分析平台

项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等等。 环境需要 1.运行环境&#xff1a;最好是python3.7.7&#xff0c;…

数据抓取-bs4、XPath、pyquery详细代码演示

数据抓取-bs4、XPath、pyquery 一般抓取某个网站或者某个应用的内容&#xff0c;内容分为两个部分 非结构化的文本&#xff1a;HTML文本 结构化的文本&#xff1a;JSON、XML 非结构化的数据常见的解析方式有&#xff1a;XPath、CSS选择器、正则表达式 XPath语言 XPath是X…