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

最新更新时间:1970-01-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  定时器  进入中断 编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic549235.html

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

推荐阅读

车载屏的STM8单片机驱动 128x16点阵屏输出汉字
STM8单片机源程序:/*PE6  信号选择  0:控制卡   1: CPUPB7  5V电源控制  O:关   1:开*/#include <iostm8s105s4.h>#define        uint         unsigned    int#define        uchar        unsigned   
发表于 2021-11-25
STM8单片机无线315&433脉宽自适应_通用解码程序
单片机源程序如下:/*RFINT不能用PA1 要改板 改在PC6*//* Includes ------------------------------------------------------------------*/#define MAIN_C#include "ALL.h"void Delay(u16 nCount){  /* Decrement nCount value */  while (nCount != 0)  {    nCount--;  }}//10ms定时中断初始  在PWM时可更改void TIME1_CONF
发表于 2021-11-25
STM8单片机+EV1527无线315&433通用遥控解码程序
单片机源程序如下:/************************************************************************************************************        模块名称 : EV1527遥控解码*                  上升沿触发 触发中断后延时一段时间后检测引脚电平从而判断0 1采集上升沿触发后第6 10 14    &n
发表于 2021-11-25
stm8的18b20温度显示程序
单片机源程序如下:#include"stm8s.h"#include"Cry12864.h"#include"temp.h"#include"tim1.h"void LcdDisplay(int temp) ;uint a;void main( void ){ CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1);//内部时钟1分频16m  Ini_Lcd();//液晶初始化  Tim1_Init();//时钟初始化  while(1)  
发表于 2021-11-25
STM8单片机+EV1527无线315&433通用遥控解码
STM8_无线315&433通用解码单片机源程序如下:/************************************************************************************************************模块名称 : EV1527遥控解码*上升沿触发 触发中断后延时一段时间后检测引脚电平从而判断0 1采集上升沿触发后第6 10 14     个振荡周期时的引脚电平 RF98PT2262 连续触发是每个周期的间隔在15MS左右EV1527   宽电平时间 500US 窄 250us 同步码 5.7MS*****
发表于 2021-11-12
stm8 stm8s stm8af 485接口 modbus协议代码
本人使用stm8af62a6,stm8s和stm8af大多数是互通的,只用一个库函数62a6只能使用uart3!485接口是硬件,不需要管,任何硬件接线都可以实现代码见附件,已实现通信主函数代码,主要为初始化函数,以及modbus帧接收处理函数,帧接收处理按自己的需求自行修改,本例的处理函数为接收数据再多输出一点数据单片机源程序如下:/******************************************************************mian.c文件部分******************************************************************/void mai
发表于 2021-11-12
小广播
何立民专栏 单片机及嵌入式宝典

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

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2021 EEWORLD.com.cn, Inc. All rights reserved