STM8L052定时器1配置30S

发布者:智慧启迪最新更新时间:2020-03-06 来源: eefocus关键字:STM8L052  定时器1  配置30S 手机看文章 扫描二维码
随时随地手机看文章

@[TOC]STM8L TIM1相关配置


Tim1基本介绍

TIM1由一个由可编程预分频器驱动的16位上下自动重载计数器组成。定时器可用于多种用途,包括:

•时基生成

•测量输入信号的脉冲长度(输入捕获)

•生成输出波形(输出比较,PWM和单脉冲模式)

•各种事件的中断功能(捕获,比较,溢出,中断,触发)

•捕获,比较,溢出事件的DMA请求功能

•与其他定时器或外部信号同步(外部时钟,复位,触发可校准)。

该定时器非常适用于各种控制应用,包括那些需要具有互补输出和死区时间插入的中心对齐PWM功能的应用。

定时器时钟可以来自内部时钟,也可以来自可通过配置寄存器选择的外部源。


配置

以下代码 自己配置了一个30S定时器,使用系统内部高速时钟16M,1600分频,装载值10000,重复计时30次而实现。本人使用的是STM8L052C6T6。不同STM8略微不同。


代码

void TIM1_Config(void)

{

TIM1_DeInit();

CLK_PeripheralClockConfig(CLK_Peripheral_TIM1, ENABLE);

TIM1_ClearITPendingBit(TIM1_IT_Update);


TIM1_TimeBaseInit(1599,TIM1_CounterMode_Up,10000,30);//30S

TIM1_ARRPreloadConfig(ENABLE);

TIM1_ITConfig(TIM1_IT_Update , ENABLE);

TIM1_GenerateEvent(TIM1_EventSource_Update);

while(TIM1_GetITStatus(TIM1_IT_Update) == RESET );// 清除计数器第一次无效中断

  TIM1_ClearFlag(TIM1_IT_Update);

 

TIM1_Cmd(ENABLE);              

}

关键字:STM8L052  定时器1  配置30S 引用地址:STM8L052定时器1配置30S

上一篇:MCU实战经验:多种的按键处理
下一篇:STM8无法跳出TIM2更新中断

推荐阅读最新更新时间:2024-11-13 15:17

定时器 T1 通过查询方式控制 LED1 周期性闪烁
关键就是对寄存器的配置。 CC2530的T1定时器(16位)需要配置三个寄存器T1CTL、T1STAT、IRCON 这里只是给出简单的介绍,要详细的可以参考CC2530的datasheet. T1CTL(0xE4) 作用是定时器 1 的控制和状态 T1CTL (Bit 3:2) 分频器划分值,如下: 00: 标记频率/1 01: 标记频率/8 10: 标记频率/32 11: 标记频率/128 T1CTL (Bit 1:0) 选择定时器1模式 00: 暂停运行。 01: 自由运行,从0x0000到0xFFFF反复计数。 10: 模,从0x0000到T1CC0反复计数。 11: 正计数/倒计数,从 0x0000 到 T1CC0 反复计
[单片机]
STM8S通过官方LIB使用定时器1从CH4输出PWM
在看STM8S的中文datasheet看得稀里糊涂的,这块功能调了两个晚上才出来。 贴出如下代码,给大伙参考: TIM1_DeInit(); TIM1_TimeBaseInit(16, TIM1_COUNTERMODE_UP, 999, 0x00);//250 TIM1_OC4Init(TIM1_OCMODE_PWM1, TIM1_OUTPUTSTATE_ENABLE, 499, TIM1_OCPOLARITY_LOW, TIM1_OCIDLESTATE_RESET);//50%占空比 TIM1_CCxCmd(TIM1_CHANNEL_4, ENABLE); TIM1_OC4PreloadConfig(ENABLE); T
[单片机]
LPC2478 定时器1的2路PWM配置
/单边模式下,永远是先高电平再低电平,而stm32可以更改 */ void vPwmInit(void){ //首先把IO配置为PWM模式 PINSEL7&=(~(3 16)); PINSEL7|=(3 16);//PWM1.1 P3.24; PINSEL7&=(~(3 22)); PINSEL7|=(3 22); //PWM1.4 P3.27; //再配置寄存器 PWM1TCR =0x02; //PWM1 计数器复位 PWM1PR =0x01; // 分频系数为2 PWM1MCR =0x02; //TC和MR0值相等时复位 PWM1PCR =0x0000; //单边沿触发 PWM1MR0 =1000; //分
[单片机]
热门资源推荐
热门放大器推荐
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

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

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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