定时器/计数器0(定时器)

发布者:快乐飞跃最新更新时间:2024-08-15 来源: elecfans关键字:定时器  计数器  定时器中断 手机看文章 扫描二维码
随时随地手机看文章

/*

效果说明:

      定时器中断:通过单片机计数使程序执行

      一秒中断一次,中断发生时高四位亮一秒,中断发生后又回到主程序


*/

  

#include

#include

unsigned int i;

void delay()//延时子函数

{

   i=1000000;

   while(i--);//执行一次大概要一毫秒 这里给它一秒就是中断发生时高四位亮一秒

  }

 

//中断初始化

void zhongduan1()

{

   ET0 = 1;//启动计数器中断开关

   EA = 1;//总开关

   /*

   定时器的核心在这

   */  

   TMOD = 0x09;

   TH0 = 0x0D8;

   TL0 = 0x0F0;

   TR0 = 1;//启动定时器

 }

 

   

void main()//主函数

 { 

    zhongduan1();//中断初始化

    while(1)//while死循环,主程序一直执行,也就是点亮低四位一直亮,中断发生时就跳出执行中断函数程序,中断发生后又回到主程序

    {

      P0 = 0xf0;//点亮低四位

    }

 }

 

 

 //中断程序 也就是中断后要执行的程序

 void zhongduan() interrupt 1

 {  

      i++;

    if(i == 10)//让中断函数再循环10再执行其程序

    {  i = 0;

       P0 = ~0xf0;//高四位亮

    delay();//延时子函数调用  变现为中断发生时所要执行程序的时间

    TH0 = 0x0D8;

    TL0 = 0x0F0;

     }

  

}    



关键字:定时器  计数器  定时器中断 引用地址:定时器/计数器0(定时器)

上一篇:数码管八位显示时钟
下一篇:定时器/计数器0(计数器)

推荐阅读最新更新时间:2026-03-20 20:27

51单片机中断系统详解(定时器计数器
51单片机中断级别 中断源 默认中断级别 序号(C语言用) INT0---外部中断0 最高 0 T0---定时器/计数器0中断 第2 1 INT1---外部中断1 第3 2 T1----定时器/计数器1中断 第4 3 TX/RX---串行口中断 第5 4 T2---定时器/计数器2中断 最低 5 中断允许寄存器IE 位序号 DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 符号位 EA ------- ET2 ES ET1 EX1 ET0 EX0 EA---全局中允许位。 EA=1,打开全局中断控制,在此条件下,由
[单片机]
51单片机定时器/计数器中断
Hz是频率单位。频率是指电脉冲,电磁波,声波和机械的振动周期循环时,1秒钟重复的次数 1Hz 代表每秒钟振动 1次 60Hz 代表​​每秒钟振动 60次 1KHz 代表​​每秒钟振动 1,000次 1MHz 代表​​每秒钟振动 1,000,000次 频率的常用单位:Hz KHz MHz GHz​ 对于声音,人类的听觉范围为 20Hz~2000Hz,低于这个范围叫次声波,高于这个范围叫超声波。​​ 单片机外接12MHz晶振时: 12MHz = 12,000KHz = 12,000,000Hz 1S = 1,000ms = 1,000,000us 12Mhz晶振时钟周期: 12,000,000Hz
[单片机]
基于STM32CUBEMX驱动低压步进器电机驱动器STSPIN220(3)----定时器中断产生指定数量脉
概述 在步进电机控制过程中,为了实现精确的位置和速度控制,经常需要输出指定数量的脉冲。这就需要使用定时器功能来生成PWM脉冲信号。 本文将详细介绍如何利用STM32CUBEMX配置定时器以输出指定数量的PWM脉冲。 定时器是STM32微控制器的一个重要功能模块,可用于生成各种定时和计数操作。通过合理配置定时器的参数和模式,我们可以实现精确的脉冲输出。 样品申请 https://www.wjx.top/vm/PpC1kRR.aspx 视频教学 https://www.bilibili.com/video/BV1k94y1C7Gw/ 完整代码下载 https://download.csdn.net/download/qq_
[单片机]
51单片机基础学习(十):定时器&中断的应用
一、前期准备 1. 定时器工作模式的设置 由于定时器工作模式寄存器TMOD是不允许位寻址的,所以对在两个定时器模式的设置上存在的一些技巧进行介绍。 ① 直接对寄存器TMOD进行十六进制形式的赋值。 ② 对寄存器进行“按位与 按位或”形式的赋值。 例如:定时器1保持原来的工作方式,使定时器0工作在模式1下。(假设此时定时器1工作在模式0下) //方式1 TMOD = 0x01; //0000 0001 同时对两个定时器的工作模式进行设置 AI运行代码 //方式2 TMOD = TMOD & 0xF0; //1111 0000 将TMOD的低4位清零,高4位保持不变。 TMOD = TM
[单片机]
基于霸道秉火的STM32F103ZET6嵌入式开发之------定时器中断3
1 #include time.h 2 #include led.h 3 #include beep.h 4 //¶¨Ê±Æ÷ÖжÏ3³õʼ»¯ 5 void TIME3_Ini_Init(u16 arr,u16 psc) 6 { 7 NVIC_InitTypeDef NVIC_InitStructure; 8 TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStructure; 9 //中断使能TIM3 10 RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3,ENABLE); 11 12 TIM_TimeBaseIn
[单片机]
基于霸道秉火的STM32F103ZET6嵌入式开发之------<font color='red'>定时器</font><font color='red'>中断</font>3
STM32之八定时器中断
STM32的通用定时器是一个通过可编程预分频器(PSC)驱动的16 位自动装载计数器(CNT)构成。STM32的通用定时器可以被用于:测量输入信号的脉冲长度(输入捕获)或者产生输出波形(输出比较和PWM)等。 使用定时器预分频器和RCC时钟控制器预分频器,脉冲长度和波形周期可以在几个微秒到几个毫秒间调整。STM32的每个通用定时器都是完全独立的,没有互相共享的任何资源。 STM3的通用TIMx (TIM2、TIM3、TIM4和TIM5)定时器功能包括: 1)16位向上、向下、向上/向下自动装载计数器(TIMx_CNT)。 2)16 位可编程(可以实时修改)预分频器(TIMx_PSC),计数器时钟频率的分频系数为1~65535之间
[单片机]
STM32之八<font color='red'>定时器</font><font color='red'>中断</font>
单片微机原理P2:80C51外部中断定时器系统
0. 外部中断   书上的废话当然是很多的了,对于中断我想大家应该早就有一个很直观的认识,就是“设置断点,执行外部外码,然后返回断点”这样的三个过程。中断给系统提供了一个良好的响应模式。当然了,响应中断的时候记得保护现场,这是写汇编的良好习惯。   80C51一共是5个中断源,这五个中断源分别是外部中断0,1定时器中断0,1,串口中断。 1. 我们现在先来看外部中断: 一般开外部中断分为4个步骤(不用查询的方式的话): 1. 设置触发方式(IT0/IT1) 2. 开启外部中断(EX0/EX1) 3. 设定优先级(IP寄存器) 4. 开启总中断(EA) 查询方式只是多了一步看IE的值而已   代码(汇编代码) SETB IT1
[单片机]
单片微机原理P2:80C51外部<font color='red'>中断</font>与<font color='red'>定时器</font>系统
数码管动态显示(定时器中断方式)+小数点+高位为0不显示
1 仿真现象 2 程序设计 2.1 主程序 #include REG52.H #include DisplaySmg.h #include Timer0.h unsigned int adc_result = 1234; void disp_num(void) //显示四位十进制数 { if(adc_result =1000) //千位 { LedBuf = adc_result/1000; } else { LedBuf =23; //不显示 } if(adc_result =100)
[单片机]
数码管动态显示(<font color='red'>定时器</font><font color='red'>中断</font>方式)+小数点+高位为0不显示
小广播
最新单片机文章
何立民专栏 单片机及嵌入式宝典

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

厂商技术中心

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

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