历史上的今天

今天是:2024年09月16日(星期一)

2018年09月16日 | STM3的TIM4定时器功能设置

发布者:安静的夜晚 来源: eefocus关键字:TIM4  定时器  功能设置 手机看文章 扫描二维码
随时随地手机看文章

一、初始化过程


/***********************************************************************

利用TIM4定时器作为计时,每个0.1秒处理一次数据

计算周期的公式为: psc/72*period/1000000 (单位为秒)

************************************************************************/


void TIM2_Config(void)

{

    TIM_TimeBaseInitTypeDef TIM_timeBaseStucture;

    TIM_OCInitTypeDef TIM_OCInitStructure;

    

    u16 period = 1000;                                        //设置PWM周期值(ARR值)

    u16 pluse = 5000;                                        //设置PWM脉冲宽度值(CRR值)

    

    RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4, ENABLE);    //使能TIM4时钟

    

    TIM_DeInit(TIM4);                                        //重置TIM4

    //配置TIM4时基

    TIM_timeBaseStucture.TIM_ClockDivision = TIM_CKD_DIV1;    //分频因子

    TIM_timeBaseStucture.TIM_Prescaler = 7200-1;            //预分频

    TIM_timeBaseStucture.TIM_CounterMode = TIM_CounterMode_Up;    //向上计数

    TIM_timeBaseStucture.TIM_Period = period;                

    TIM_TimeBaseInit(TIM4, &TIM_timeBaseStucture);

    

    //配置TIM通道1的PWM输出

    TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;            //PWM输出模式为PWM1

    TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;    //设置有效电平的极性

    TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;    //使能通道输出PWM

    TIM_OCInitStructure.TIM_Pulse = pluse;                        //设置PWM的脉冲宽度值,即CRR值

    TIM_OC1Init(TIM4, &TIM_OCInitStructure);

    

    TIM_ARRPreloadConfig(TIM4, ENABLE);                                //使能TIM3的寄存器ARR的预装载功能,DISABLE时将会使改变ARR值时立即生效

    TIM_OC1PreloadConfig(TIM4, TIM_OCPreload_Enable);                //使能TIM3通道1的CCR的预装载功能,DISABLE时将回使改变CRR值时立即生效

    

    //使能TIM4定时器

    TIM_Cmd(TIM4, ENABLE);

    

    TIM_ClearFlag(TIM4, TIM_FLAG_Update);                            //先清除定时器更新标志位,防止一开启就进入中断处理函数

    

    TIM_ITConfig(TIM4, TIM_IT_Update,ENABLE);

    NVIC_EnableIRQ(TIM4_IRQn);

        

}


二、TIM4中断函数



void TIM4_IRQHandler(void)

{

    if(TIM_GetITStatus(TIM4,TIM_IT_Update)==SET)

    {

        printf("here happened TIM4 IRQ.\n");

        TIM_ClearITPendingBit(TIM4,TIM_IT_Update);

    }

    

}


关键字:TIM4  定时器  功能设置 引用地址:STM3的TIM4定时器功能设置

上一篇:STM32 USB学习笔记6
下一篇:stm32f407多个定时器产生PWM(TIM1、TIM4、TIM9)

推荐阅读

2018年8月26日,雅加达亚运会电竞表演赛现场,连续作战的中国队势头不减,以绝对优势拿下了亚运会历史上第一枚电竞金牌。喜讯传来,整个中国电竞界都沸腾了,广大电竞游戏玩家从此也有了信仰。2018年9月12日,ROG玩家国度在北京凯迪拉克中心召开了“竞力势放”ROG信仰盛会。来自英特尔、英伟达、索尼互动娱乐与魔爪等公司的高层领导和合作伙伴,以及来自全...
/*这两天项目开发中,用到STM8的EEPROM功能,几个数据要掉电保存,在网上也查了一下EEPROM操作,发现网上出现的问题主要有两点:1、EEPROM读写不成功;2、EEPROM读写的时间太长;看了一下ST的库函数,自己测试了一下,没有发现什么问题,比较正常;在读写EEPROM期间,也有动态扫描LED数码管,没有发现数码管有闪烁。操作过程中:1、开发平台:STM8S105K4T6 IAR6.3 S...
配图来自 Canva上半年疫情对消费电子行业打击颇重,不过可穿戴设备依然实现了逆势增长。尤其得益于居家办公等外界环境的影响,不少用户对耳机类产品的需求变得更高,这使得耳戴智能设备在上半年的市场表现非常亮眼。IDC 数据显示,在今年第一季度,全球耳机类智能可穿戴产品出货量实现了 68.3%的同比增长,二季度出货量再次同比提升 32.6%,这也使得耳...
仿生机器人是指模仿生物、从事生物特点工作的机器人。二十一世纪人类将进入老龄化社会,发展“仿人机器人”将弥补年轻劳动力的严重不足,解决老龄化社会的家庭服务和医疗等社会问题,并能开辟新的产业,创造新的就业机会。仿生机器人体系结构机器人体系结构,就是指为完成指定目标的一个或几个机器人在信息处理和控制逻辑方面的结构方式。1、基于功能来分...

史海拾趣

问答坊 | AI 解惑

浅谈文本显示工业控制器控制步进伺服/编码器读数/带AD及DA对温度、温度、压力的检测

工业控制器(步进电机控制、编码器检测、AD/DA模块) 控制器(JMDM-2011)技术要点概括 特性: 一: 8位高性能单片机作为主控制芯片,程序空间为64K; 二: 主电源(内部工作电源)采用5V直流电, 外部电源采用12-24V直流电; 三 ...…

查看全部问答∨

变压器的设计工具

哥们有个设计变压器的工具,谁要?拿去! 晚上会补充附件~~~ [ 本帖最后由 西门 于 2009-5-12 19:26 编辑 ]…

查看全部问答∨

修改TE6410开机画面,遇到的问题

原板子没开机画面,修改TE6410开机画面,编译成功,烧写的时候出现 Download BIN file information: ----------------------------------------------------- [0]: Base Address=0x80030000 Length=0x0---------------------------------------- ...…

查看全部问答∨

高分求解Filter Driver的"device string is NULL"问题,测试WHQL的问题。

整了个Filter Driver。是基于Mouse Class的。 WHQL验证时,遇到问题。不知道何解。 Context Index:   2344544492 Current:      Checking DeviceID String Parent:       WTTLOG          C ...…

查看全部问答∨

关于wicne6.0下SDHC驱动的链接库问题

我在wince6.0下编译SDHC驱动,在source中,默认是如下lib文件: SOURCELIBS= \\      $(_COMMONOAKROOT)\\lib\\$(_CPUINDPATH)\\sdcardlib.lib \\      $(_COMMONOAKROOT)\\lib\\$(_CPUINDPATH)\\sdhcl ...…

查看全部问答∨

谁知道 SafeRTOS 和 FreeRTOS 的区别?

谁知道 SafeRTOS 和 FreeRTOS 的关系?LM3S9B96 上集成了 SafeRTOS ,不知道和 FreeRTOS 的具体区别是什么?有兴趣的朋友可查证下。…

查看全部问答∨

【Trf7960问题】MIFARE_ERROR_NO_CARD

我用TRF7960读写M1卡,电路部分参考Lm3s9b96的那个评估板,我的板子上天线部分已经输出13.56M正弦波,现在可以对TRF7960进行寄存器(0x00到0x0F)的读写,但是在用TI例程进行M1 读卡操作,当运行这个函数时:        ulUIDSiz ...…

查看全部问答∨

求助关于MSP430FG4619与LCD显示问题

我用的是MSP430FG4619,连接的LCD是NHD‐\C12832A1Z‐\NSW‐\BBW‐\3V3 用SPI,我查了有3pin和4pin模式, 我的这个连接用了SCL, STE, SIMO,SOMI没有连,不知道是3pin还是4pin 初始化还是有困难,请大家帮帮忙 以下是LCD datasheet上提供的sampl ...…

查看全部问答∨

AVR入门求助,望前辈们不吝赐教

如果说我用一块单片机Atmega32-16,插在基座上然后焊在万用板上,我每次想把程序烧进单片机里,是不是说在我焊好的万用板上引出单片机对应的MOSI,MISO,SCK,RESET,VCC,GND各个引脚插在我ISP下载器上相对应的引脚后,我就可以顺利烧录进程序了?另外 ...…

查看全部问答∨

TSP-Link——高级方法(并行测试)

测试设置 此配置的通道极数从2变为4。   该指令做的是分两个组闭合3721型1×30磁簧多路选通卡上的通道。按照这个例子,如果我们闭合通道2001,通道2031也将闭合。如果考虑对2602使用的影响,这将有明显的意义。   2602是双通道S ...…

查看全部问答∨
小广播
最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

厂商技术中心

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2026 EEWORLD.com.cn, Inc. All rights reserved