stm8s定时中断

发布者:冷漠之心最新更新时间:2020-01-11 来源: eefocus关键字:stm8s  定时中断  定时器 手机看文章 扫描二维码
随时随地手机看文章

stm8s定时器有高级定时器TIM1,通用定时器TIM2,TIM3,TIM5,以及基本定时器TIM4,TIM6。定时中断配置基本一样。需要注意的也就是分频不同,定时器位数不同。16位定时器配置后面再说,这里以基本定时器TIM4为例,产生2ms中断,配置如下:


TIM4_IER_UIE = 1;//使能TIM4溢出中断   

TIM4_PSCR = 0x06; //配置TIM4 64分频,8us记一次数 

TIM4_ARR = 0xF9; //自动重装载的值->249,2ms中断

TIM4_CNTR = 0xF9;  


TIM4_CR1_CEN = 1; //使能TIM4计数


说明:主时钟为8M,根据手册,带入数值8000000/(2^6)=125000Hz,1/125000=8us,8*(0xF9+1)=2000us=2ms


中断函数如下:


/* Defines an interrupt handler for TIM4 vector. */

#pragma vector=25

__interrupt void TIM4_IRQHandler(void)


{


    TIM4_SR_UIF = 0;//清中断标志


}


注意:这里中文手册翻译有误,基本定时器只有SR寄存器

关键字:stm8s  定时中断  定时器 引用地址:stm8s定时中断

上一篇:stm8s uart配置
下一篇:STM8串口初始化寄存器配置

推荐阅读最新更新时间:2024-11-07 15:34

单片机定时中断的精确编程方法
MCS-51 单片机 的中断响应延迟时间,取决于其它中断服务程序是否在进行,或取决于正在执行的是什么样的指令。单中断系统中的中断响应时间为3~8个机器周期 。无论是哪一种原因引起的误差,在精确定时的应用场合,必须考虑它们的影响,以确保精确的定时控制。根据定时中断的不同应用情况,应选择不同的精确定时编程方法。 文中以定时器T1工作在定时方式1为例,晶振频率为12MHz 。 1 方法1   在定时器溢出中断得到响应时,停止定时器计数,读出计数值(反映了中断响应的延迟时间),根据此计数值算出到下一次中断时,需多长时间,由此来重装载和启动定时器。例如定时周期为1ms,则通常定时器重装载值为-1000(0FC18H)。下面的程序在计算每
[单片机]
内装定时器的通用电机控制电路图
内装定时器的通用电机控制电路图
[模拟电子]
内装<font color='red'>定时器</font>的通用电机控制电路图
单片机LED程序之二,利用定时器PWM实现LED的渐亮
程序来自网络,稍微修改了一下。 #include sbit LED_0 = P0^0; sbit LED_1 = P0^7; unsigned Count = 0; unsigned i = 0; void Time_Init(); void main(void) { Time_Init(); LED_0 = 0; LED_1 = 1; while(1); } void Time_Init(void) { TMOD = 0x02; // 0, ½ ½2 TH0 = 0x9C; TL0 = 0x9C; EA = 1; ET0 = 1; T
[单片机]
单片机定时器与单片机计数器
  本文主要介绍单片机芯片解密的相关基础知识:单片机计数器和单片机定时器。   一、计数概念的引入   在介绍单片机计数器和定时器之前,先从选票的统计谈起:画“正”。这就是计数,生活中计数的例程处处可见。例:录音机上的计数器、家里面用的电度表、汽车上的里程表等等,再举一个工业生产中的例程,线缆行业在电线生产出来之后要计米,也就是测量长度,怎么测法呢?用尺量?不现实,太长不说,要一边做一边量呢,怎么办呢?行业中有很巧妙的办法,用一个周长是1米的轮子,将电缆绕在上面一周,由线带轮转,这样轮转一周不就是线长1米嘛,所以只要记下轮转了多少圈,就能知道走过的线有多长了。   二、单片机计数器的容量   从一个生活中的例程看起:一个水盆在
[单片机]
单片机定时中断数码管程序
;数码管 ---- 目的:学习查表及间接寻址定时中断 ;完整代码下载地址: http://www.51hei.com/f/smysh.rar CHIP SN8F27E65 //{{SONIX_CODE_OPTION .Code_Option WDT_CLK Flosc/4 .Code_Option Reset_Pin P04 .Code_Option LVD LVD_Max ; 3.3V Reset .Code_Option Watch_Dog Disable ;关闭看门狗 .Code_Option Low_Fcpu Flosc/1 .Code_Option High_Clk IHRC_16M ; Internal 16M RC
[单片机]
STM32学习日志——定时器中断实验
今天学习的是通用定时器及其中断,首先是内部时钟的选择,定时器的时钟Tclk是由APB1时钟乘以1或2决定的,至于是1还是2,要看APB1的分频系数(AHB/APB1),如果为1,则乘以1,否则乘以2。接着就可以根据我们想设定的时间Tout,去配置ARR跟PSC,这两个数是存在16位的寄存器,所以他们的范围为(0-65535),在这个范围内任意取值,满足公式即可。如果我么要配置500ms,可将ARR配置为2499,PSC配置为14399。也就是定时器计数的一个周期为500ms。(ARR为自动重装载值,PSC为Tclk的预分频系数) 根据步骤去写程序就很简单了。 实现功能:通过定时器的中断控制一个绿灯翻转,时间为500ms
[单片机]
STM32学习日志——<font color='red'>定时器</font><font color='red'>中断</font>实验
51单片机入门 - 定时器中断应用实例
定时器中断应用实例 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 设计要求: 每秒点亮P1.0口的发光二极管一次,然后熄灭,使发光二极管形成闪烁效果 实现思路: 通过定时/计数器,每秒触发一次P1.0取反 涉及到的功能模块:定时器,中断,LED操作 定时器装填: 需要计数每秒的话,计数921600时溢出即可,在四种方式定时方式中,最大的计数范围是方式2:6553
[单片机]
51单片机入门 - <font color='red'>定时器</font><font color='red'>中断</font>应用实例
ARM之定时器0(中断
这也是一个很简单的程序,主要是应用ARM实现定时1秒中断的小程序,主要说明ARM7中中断的用法。 程序如下: #include LPC213x.H #define L5_Communicatin_Flag (1 28) //定义P0.28脚 /**************************************************************************** * 名称:IRQ_Time0() * 功能:定时器0中断服务程序,取反BEEPCON控制口。 * 入口参数:无 * 出口参数:无 ****************************************************
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

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

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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