STM32F427 使用定时器T4作为延时定时器

设置如下:主要是预分频设置为90,因为系统APB1的时钟是90Hz
预分频90

#ifndef __DELAY_H__
#define __DELAY_H__
#include "stdint.h"void delay_us(uint32_t us);
void delay_ms(uint32_t us);#endif

C文件

#include "delay.h"
#include "main.h"#include "stdio.h"
extern TIM_HandleTypeDef htim4;
//使用一个定时器延时1us
void delay_us(uint32_t us)
{if(us>65535){   us=65535;printf("%s %d param us is overrun \r\n",__FILE__,__LINE__);}//计数器清零__HAL_TIM_SET_COUNTER(&htim4,0);//设置重载值,也就是需要计数的最大值__HAL_TIM_SET_AUTORELOAD(&htim4,us);//开始计数HAL_TIM_Base_Start(&htim4);//等待计数事件到while(!__HAL_TIM_GET_FLAG(&htim4,TIM_FLAG_UPDATE));//清除转态标志__HAL_TIM_CLEAR_FLAG(&htim4,TIM_FLAG_UPDATE);//停止计数HAL_TIM_Base_Stop(&htim4);}
//使用一个定时器延时1ms
void delay_ms(uint32_t ms)
{for(uint32_t i=0;i<ms;i++){delay_us(1000);}}

STM32使用定时器延时相关推荐

  1. STM32延时函数的四种方法:普通延时(2种)、SysTick 定时器延时(2种)

    STM32延时函数的三种方法:普通延时.SysTick 定时器延时(1.中断方式:2.非中断方式) 单片机编程过程中经常用到延时函数,最常用的莫过于微秒级延时delay_us( )和毫秒级delay_ ...

  2. STM32超声波模块测距串口输出/通用定时器中断并输出PWM控制舵机/系统定时器延时

    参考:stm32 超声波模块 原理 实现测距 +舵机使用 作者:点灯小哥 发布时间: 2021-03-10 19:37:16 网址:https://blog.csdn.net/weixin_46016 ...

  3. STM32系统定时器SysTick(只能向下递减)延时闪烁灯

    参考:stm32 系统定时器 SysTick 作者:点灯小哥 发布时间: 2021-03-10 13:46:00 网址:https://blog.csdn.net/weixin_46016743/ar ...

  4. STM32定时器延时函数

    本文用STM32F205芯片中的TIM3为例,写了两种定时器延时函数.本人所知的延时函数方式有3种,通过定时器中断方式的延时函数在本文中暂时不提及.为方便自己记忆,以下均为自己总结,如有错误,欢迎大家 ...

  5. STM32之定时器中断控制LED闪烁

    上篇博客我们是用延时函数实现了LED的闪烁,今天我们使用STM32的定时器来使LED闪烁. 关于32的定时器的种类,今天我在这先不做过多的说明,有时间我会再另写一篇博客来专门介绍32的定时器.今天我们 ...

  6. STM32 通过定时器产生PPM信号

    标题STM32 通过定时器产生PPM信号 说明: 该代码基于STM32F103VET6 和STD标准库实现.若需要在其他单片平台使用需要调整IO,和定时器,底层代码. 定时器要达到us级定时. 实现原 ...

  7. STM32系统定时器SysTick

    1. SysTick系统定时器概述 学习完STM32的中断,下来就要学习STM32的定时器.就像电话最基本的功能是与人通话一样,定时器最基本的功能就是定时(STM32有些定时器的功能强大得超乎想象,当 ...

  8. stm32入门——定时器中断和中断优先级简介

    stm32入门--定时器中断 产生定时中断是定时器的用法之一,与定时器用来进行PWM输出和输入捕获相比,定时器中断更容易理解.掌握. 原理简介 使用通用定时器进行中断的原理,其实和开发板Systick ...

  9. STM32 us精确延时方式

    STM32精确延时方式 使用TIM定时器方式延时 使用空代码方式延时 F103系列 F429系列 本文纯属记录自己学习历程,如有不妥之处,欢迎指正. 使用TIM定时器方式延时 使用STM32CubeM ...

最新文章

  1. 【Intellij IDEA】eclipse项目导入
  2. JSON学习笔记(四)- JSON.parse()
  3. GPS基站架设完整操作流程
  4. Python小技巧:如何批量更新已安装的库?
  5. 用浏览器管理 Docker
  6. 先排序,再限定记录数,然后计算指定字段的总和
  7. 微信公众号使用LocalStorage解决返回缓存问题
  8. JSON.toJSONString 出现 {$ref: “$.deduceGridCellVoSet[0].stateFlightsBasic[0]“}
  9. python安装教程-Python 3.5安装教程
  10. VS2010轻松学习C#-从零到深入-天轰穿.NET4趣味编程视频教程
  11. ftp服务器扫描不了文件内容,ftp服务器扫描不了文件
  12. 中国网络安全硬件平台行业的发展历程以及未来前景
  13. 通俗易懂专利分类、专利申请流程
  14. android+实现微信对话框样式,实现微信对话框的图片样式以及图片边框
  15. php 星际争霸 面向对象,星际争霸之php面向对象(一)
  16. Quick BI移动端:让数据在更多业务场景中流通
  17. java Long详解
  18. MATLAB 散点图(scatter)设置点据透明度
  19. Qlik Sense 创建 QVD 文件详解(Store)
  20. vue3定位当前位置,获取当前位置的经纬度

热门文章

  1. php手册+w3c,W3C 教程
  2. ASP.NET视图状态解析(本博客仅是自己留着作为存储学习)---选自MSDN
  3. 日历控件如何切换语言 vant_看看甘特图控件VARCHART XGantt的亮点
  4. 求离散数据的突变点_数据的离散程度分析1
  5. 是什么职位_2021国家公务员考试职位表出炉!你真的了解什么是公务员吗?
  6. Java 算法 特殊的数字四十
  7. php项目如何导jdbc包,JDBC-idea导入mysql连接java的jar包(mac)的方法
  8. 时序模型预测结果:DM检验含义与python实现
  9. 如何查看linux的资源,Linux系统资源查看(示例代码)
  10. python发送文件到邮箱_python 发送附件至邮箱