STM8的TIM4定时器1ms进入中断

发布者:PeacefulOasis最新更新时间:2021-11-01 来源: eefocus关键字:STM8  TIM4  定时器  进入中断 手机看文章 扫描二维码
随时随地手机看文章

TIM4 — 8位基本定时器

● 8位自动装载可调整的预分频器,比例可选为1~128之间任意的2的幂

● 时钟源: CPU时钟

● 中断源: 1个溢出/更新中断


需要实现1ms进入一次中断,可作为系统定时器


TIM4初始化


void Tim4_Init(void)

{

  TIM4_DeInit();

  TIM4_TimeBaseInit(TIM4_PRESCALER_64,250-1);//64分频,向上计数,16M/64/250 = 1ms计数完了触发中断

  TIM4_ARRPreloadConfig(ENABLE);//使能自动重装

  TIM4_ITConfig(TIM4_IT_UPDATE , ENABLE);//数据更新中断

  TIM4_Cmd(ENABLE);//开定时器

   __enable_interrupt(); 

}


系统内部时钟16M,经过64分频,然后除以250就得到1ms


中断程序


__interrupt void TIM4_UPD_OVF_IRQHandler(void) 

{

  Sys_Timer++;

  TIM4_ClearITPendingBit(TIM4_IT_UPDATE);

}


主函数


#include "stm8s.h"


int main(void)

{

Tim4_Init(); //系统定时器初始化 

  while (1)

  {

      if(Sys_Timer >= 10) //10ms

    {



        Sys_Timer = 0;  

LedTimer++;

    }

      if(LedTimer >= 50) //0.5s     

    {


     LedTimer = 0;

    }

  }  

}


关键字:STM8  TIM4  定时器  进入中断 引用地址:STM8的TIM4定时器1ms进入中断

上一篇:STM8S103之tim2捕获周期
下一篇:STM8S(105K4)使用笔记——TIM4的基础配置

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

51单片机普通定时器时钟参考程序
/* 1、按键可以调整当时时间 2、按键可以调节定时时间 *8位数码管显示 时间格式格式 12-08-00 标示12点08分00秒 S1 用于小时 加1操作 S2 用于小时减1操作 S3 用于分钟 加1操作 S4 用于分钟减1操作 */ #include reg52.h //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义 sbit KEY1=P3^0; //定义端口参数 sbit KEY2=P3^1; sbit KEY3=P3^2; sbit KEY4=P3^3; co de unsigned char tab ={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07
[单片机]
stm8串口接收中断程序理解及应用
  STM8系列是意法半导体公司生产的8位的单片机。该型号单片机分为STM8A、STM8S、STM8L三个系列。   STM8芯片特点   内核   高级STM8内核,具有3级流水线的哈佛结构   扩展指令集   存储器   程序存储器:8K字节Flash;10K 次擦写后在55°C环境下数据可保存20年   数据存储器:640 字节真正的数据   EEPROM;可达30万次擦写   RAM:1K字节   中断控制器功能:   ● 硬件中断的管理   ─ 所有I/O引脚都具有外部中断能力,每一个端口都有独立的中断向量以及独立的标志。   ─ 外设中断能力   ● 软件中断的管理(TRAP)   ● 具有灵活的优先级和中断等
[单片机]
<font color='red'>stm8</font>串口接收<font color='red'>中断</font>程序理解及应用
51单片机使用定时器进行数码管动态扫描程序
数码管是51单片机学习中比较基础的一个模块,为简化电路连接,提高系统可靠性,降低制造成本,多位数码管广泛采用动态扫描的方式进行显示。如果程序编写不当,数码管动态扫描容易出现亮度不均匀、亮度过低、重影等现象。很多初学者会在主函数中使用while(1)循环,结合delay函数不断扫描,但这样得不断调用display扫描,如果单片机还要执行别的程序时,就会由于扫描不及时,导致各种问题。此外,在控制段选位选的先后顺序上,如果程序不当,则会造成显示重影等问题。在此给出一个稳定可靠的程序方案。 电路连接:P1口通过两个74HC573分别连接到八位数码管的段选和片选,段选、位选由P3.4和P3.5控制,低电平锁存 #include re
[单片机]
MI200e电力线通讯
最近做课设,选了电力线通讯这种途径,经过百度google等一番查询,最终敲定了mi200e这块国产芯片。 课设要求就是双机通讯,互传传感器信息以及模拟一个时钟 然后淘宝买了拆机的成品,我拿回来把mcu拆了然后飞出通讯端口和stm8交互。现在串口两边可以通讯了,下一步就是重新绘制一块完整的pcb,然后制版,并实现响应功能。 先上ref: http://search.eefocus.com/s?app_id=90&sub=1&q=mi200e 这是电路城搜索mi200e得出的结果,我主要参考第一篇,他在嘉立创还有发帖,点进去你就找得到了。 他使用stm8主控并绘制整块pcb,我则使用以前的stm8核心小板。由于mi200e
[单片机]
MI200e电力线通讯
STM8 ISP串口下载说明
1. 运行文件夹 “stm32-stm8_flash_loader_demo” 下的安装文件“Flash_Loader_Demonstrator_v 2.5.0_Setup.exe”。安装时可选择默认路径。 2. 以STM8-QC开发板为例讲解下载过程。 3. 使用PL2303下载线,PL2303驱动安装文件目录:“7 USB转串口线 PL2303资料最新驱动”。运行“PL2303_Prolific_DriverInstaller_v130.exe”,安装PL2302驱动。 4. PL2303下载线如下图所示: 图1 5.STM8-QC开发板实物图如下: 图2 6.本板引出SWIM
[单片机]
NEC V850 之 定时器TAB (计数溢出功能)
之前说过了比较简单的TMM0 ,只有一个溢出功能,简单实用,今天把TAB的溢出功能说明一下。TAB是一个比较高级的定时器,有输入捕获和输出比较,他的比较溢出功能也比较有特点,这次Kiwi项目就是用了这个特点才完成了间隔发送CAN信息的功能。首先TAB是能够自动重装的,另外它有2个定时器单元TAB0和TAB1,每个定时器单元有4个中断源。 定时器的使用还是蛮简答的,首先初始化定时器,然后把定时器的使能端和屏蔽位全部都打开,就可以使用了,因为其是自动重装定时器,在中断服务函数里面也不需要进行数值的重装。 定时的初始化有如下步骤:(以TAB0为例,TAB1同TAB0) 关闭定时器所有功能的使能位以及清零相应的中断标志位,这些寄存器还
[单片机]
STM32 SYSTICK定时器常见问题
我们知道,STM32库函数里通常使用来自内核的系统定时器SYSTICK作为时基,实现计数延时。一般来讲,ST公司提供的库函数里将SYSTICK定时器配置为1ms的定时器中断,每产生1ms中断则相关中断事件计数变量加一。具体应用中我们经常会调用那个Delay()函数以实现计数定时,做延时或超时管理。 有人在阅读ST提供的LL库里的这个延时函数时,发现代码里对延时参数总是做了个加1操作,代码如下: 上图中红色代码,程序进来后就对给定的延时参数做了个加1操作,这不将1ms延时变成2ms了吗? 其实,这个地方已经有做了注释,就是为了保证有1个最小的延时等待,函数参数给定1ms的延时,经过这样加1操作后就能保证至少1ms的实际延时
[单片机]
STM32 SYSTICK<font color='red'>定时器</font>常见问题
STM8】SPI通讯
这篇内容有点长,如果有人想透过我的博客学习STM8的SPI,那是我的荣幸 首先我要先说大纲,这样大家心里比较有底,可以把精力都用在SPI理解上 【SPI初步介绍】:介绍SPI如何接线、名称解释、通讯注意事项 【SPI引脚 - 初始化(上)】:相对于STM8,SPI的引脚位置说明,还有引脚的设置,另外还有初始化的部分代码 【SPI寄存器 - 初始化(下)】:使用寄存器做一些设定,例如波特率、SPI开启或关闭、SPI中断、传输方式。。。太多了,要看寄存器手册,我有整理图片出来,另外还包括完整的初始化代码 【SPI通讯】:SPI发送数据、SPI轮询方式接收数据、SPI中断方式接收数据 【SPI初步介绍】 下图是SPI的通讯方式
[单片机]
【<font color='red'>STM8</font>】SPI通讯

推荐帖子

ADXL345传感器振动环境下的加速度检测
我现在用adxl345传感器来做自行车刹车检测,用X轴来检测速度变化刹车可以做到很灵敏了,但是过小颠簸的时候误判为刹车,这个程序方面要怎么优化?ADXL345传感器振动环境下的加速度检测
新技术 ADI参考电路
【玄铁杯第三届RISC-V应用创新大赛】LicheePi 4A+003打印外壳
本篇介绍基3D打印外壳的相关工作。主要介绍两部分:LicheePi4A外壳效果和像素屏外壳加工制作过程。1、LicheePi4A外壳在论坛里大佬提供了LicheePi4A开发板的3D文件,我只需弄到3D打印机里面等着就行了,这个比较简单,打印完的效果如下图。组装过程如下图:组装完成后如下图:大佬提供的图纸还是很靠谱的,打印完的外壳只需简单刮一下毛边,基本上就能严丝合缝的扣合在一起。有了这个外壳做保护,就不用担心调试时不小心误触造成损坏了。2、像素屏外
sipower 玄铁RISC-V活动专区
关于cortex-M3中断优先级如何使用的解答
最近在帖子上看到有童鞋在问关于M3的优先级的问题,很多人都不太了解IntPriorityGroupingSet()和IntPrioritySet()的用户,这里整理了一篇关于中断优先级的文章,请大家仔细阅读,如果还有不懂的,请与我联系。qq:906411450 关于cortex-M3中断优先级如何使用的解答谢谢楼主啦我先下来看看呵呵说的非常清楚,相信很多人看了这个文档后会搞明白困惑好久的问题,Thanks!回复楼主Triton.zhang的帖子看看
Triton.zhang 微控制器 MCU
炼狱传奇-初涉战场
大家好,在这一节中,我们主要通过点LED灯这个小实验来学会基于FPGA开发的基本流程和一些简单的编码规范,从最初的建立工程、设计输入到最后的仿真、下板。点点滴滴中,收获我们的第一颗果实,踏上FPGA设计之路。首先,我们需要新建一个工程文件夹,而且该文件夹的命名和所在的路径绝对不能包含任何中文或中文字符,在这里,我们把它命名为led_learn。接下来,我们需要对quartusII软件进行操作,完成设计:1.打开quartusII界面,如图所示:按照工程向导,新建一个工程,点
梦翼师兄 FPGA/CPLD
有源滤波器
老师,这个里面,我令C1与C2的值为0.1uf,然后利用Q值为0.707列一个方程(Q=1/2α),和已知的截止频率5kHZ列一个方程。解方程组,得到的R1=450ohm,R2=225ohm。可是我用这些值搭出来电路,用频谱分析看了一下,它的波特图不对,截止频率为10k左右。并且在5kHZ时,增益比预设的通带增益还要大。可能是什么原因呢?有源滤波器非常棒,讲的太高了,价值非常高,收获很多啊
光芒。 模拟与混合信号
【Follow me第二季第3期】 EK-RA6M5开发板开箱以及预编译程序测试
很开心能够参与【Followme第二季第3期】活动,这期开发板的厂商来自于瑞萨公司,其型号是RA6M5,通过活动页面,了解到这块开发板功能十分强大。一、开箱首先通过得捷商城进行下单,大约等个10来天收到了从美国发来的板子、开发板包装精美,有一块开发板、两根USB线、一根网线。二、预编译程序测试开发板上默认有四个LED灯亮,其中LED5是电源指示灯,LED4白色、LED2是绿色灯、LED1是渐变的蓝色,一亮一灭。按照开发板手册,在ek-ra6m5-
swzswz DigiKey得捷技术专区
小广播
设计资源 培训 开发板 精华推荐

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

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

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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