proteus与keil Cx51的单片机仿真(定时器应用1)

发布者:心灵舞动最新更新时间:2015-12-25 来源: eefocus关键字:proteus  keil  Cx51  单片机仿真  定时器 手机看文章 扫描二维码
随时随地手机看文章
使用定时器定时,每隔10s使与P0、P!、P2、P3口连接的发光二极管闪烁10次;设P0、P!、P2、P3口低高电平灯亮,反之灯灭。

电路图:[转载]proteus与keil <wbr>Cx51的单片机仿真(定时器应用1)

C程序:

 #include
#include
#define uchar unsigned char
bit flag;
void delay();
uchar IntNumber,Flashnumber;//T0中断次数,闪烁次数
void main()
{
    TMOD=0x01;//T0方式1
    TL0=0xb0;
    TH0=0x3c;//定时器赋初值
    EA=1;//开总中断
    ET0=1;//开T0中断
    TR0=1;//启动T0
    IntNumber=200;//T0中断次数初始化
    flag=0;
while(1)
    {
      if(flag==1)
      {
        flag=0;
        for(Flashnumber=0;Flashnumber<10;Flashnumber++)
          {
            P0=0x00;P1=0x00;P2=0x00;P3=0x00;delay();//灯亮
            P0=0xff;P1=0xff;P2=0xff;P3=0xff;delay();//灯灭
           }
       }
     }
  }
void Int_T0() interrupt 1 using 2
{
    TL0=0xb0;//重赋初值
    TH0=0x3c;
    IntNumber-=1;//T0中断次数减1
    if(IntNumber==0x00)
    {
      IntNumber=200;
      flag=1;//10s到,闪烁标志位置1
     }
}
void delay()
{
    uchar i,j;
    for(i=0;i<255;i++)
    for(j=0;j<255;j++)
    ;
}


关键字:proteus  keil  Cx51  单片机仿真  定时器 引用地址:proteus与keil Cx51的单片机仿真(定时器应用1)

上一篇:proteus与keil Cx51的单片机仿真(测量脉冲宽度)
下一篇:proteus与keil Cx51的单片机仿真(定时器应用2)

推荐阅读最新更新时间:2024-03-16 14:41

STM32之高级定时器互补输出
#include stm32f10x.h /* RCC时钟配置 */ void RCC_config(void) { ErrorStatus HSEStartUpStatus; /* RCC寄存器设置为默认配置 */ RCC_DeInit(); /* 打开外部高速时钟 */ RCC_HSEConfig(RCC_HSE_ON); /* 等待外部高速时钟稳定 */ HSEStartUpStatus = RCC_WaitForHSEStartUp(); if(HSEStartUpStatus == SUCCESS) { /* 设置HCLK = SYSCLK */ RCC_HCLKConfig(RCC_SYSCLK_Div1); /*
[单片机]
基于MCS-51单片机使用定时器编写时钟程序(汇编)
1、仔细想想还不错的思路 用定时器写一个时钟程序,想想都觉得头大。撇开其他花里胡哨的功能,先从最基本的时间显示开始吧,剩下的以后再说。 我们一般希望的是时钟能不停地计时,在需要的时候调用显示来显示当前时间,同时也可以干其他事,所以当然不能用延时来写,不然这个时钟除了只能显示时间之外就是个废物了。 我们希望每定时到一秒的时候来个中断,在中断里使存储里的时间序列加一秒(时间序列以时分秒各一个字节的方式存储)。51单片机定时器0方式1的最大定时时间是216=65536μs,也就是大约65ms出头。但我们可以每50ms来一次中断,中断到第20次的时候时间序列加一秒;或者每20ms来一次中断,到第50次的时候时间序列加一秒。一般来说
[单片机]
基于MCS-51<font color='red'>单片机</font>使用<font color='red'>定时器</font>编写时钟程序(汇编)
AVR单片机定时器输出PWM的设计及注意问题
  一、定时/计数器PWM设计要点   根据PWM的特点,在使用ATmega128的定时/计数器设计输出PWM时应注意以下几点:   1.首先应根据实际的情况,确定需要输出的PWM频率范围,这个频率与控制的对象有关。如输出PWM波用于控制灯的亮度,由于人眼不能分辨42Hz以上的频率,所以PWM的频率应高于42Hz,否则人眼会察觉到灯的闪烁。   2.然后根据需要PWM的频率范围确定ATmega128定时/计数器的PWM工作方式。AVR定时/计数器的PWM模式可以分成快速PWM和频率(相位)调整PWM两大类。   3.快速PWM可以的到比较高频率的PWM输出,但占空比的调节精度稍微差一些。此时计数器仅工作在单程正向计数方式,
[单片机]
STM32单片机简易定时器PWM输出
由于RCC- CFGR时钟配置寄存器中 APB1设置为2分频,所以TIM3就是其倍频==72M 上次我发表的STM32单片机自带PWM输出实验大家可以参考学习: http://www.51hei.com/mcu/2123.html ,这次是用定时器产生的pwm. //----------------------------------定时器-----------time.c----------- #include time.h void time_init(u16 arr,u16 psc) { RCC- APB1ENR|=1 1; //TIM2定时器时钟使能 TIM3- ARR=arr; //设置重装
[单片机]
STM32<font color='red'>单片机</font>简易<font color='red'>定时器</font>PWM输出
STM32-(23):定时器TIM(实验)
定时器实验: 透过配置定时器相关寄存器的配置,实现定时器2每1S中断一次,通过数码管将时间实时的显示出来。 用到的函数功能如下: (1) 利用TIM_Delnit()函数将Timer设置为默认缺省值; (2) TIM_InternalClockConfig()选择TIMx来设置内部时钟源; (3) TIM_Perscaler来设置预分频系数; (4) TlM_CIockDivision来设置时钟分割; (5) TIM_CounterMode来设置计数器模式; (6) TIM_Period来设置自动装入的值; (7) TIM_ARRPerloadConfig()来设置是否使用预装载缓冲器; (8) TIM_ITConfig()来开启
[单片机]
STM32-(23):<font color='red'>定时器</font>TIM(实验)
51单片机学习笔记———7.按键法配置定时器
如果用延时函数来对按键进行检测的话,会消耗单片机的内存,不是很好,于是我们有以下方法: unsigned char cnt1 = 0XFF; cnt1 = (cnt1 1)|KEY1; if(cnt1!=0x00) { KeyLock = 0; } else if (KeyLock==0) { KeyNum = 1; KeyLock = 1;//防止按键触发 }
[单片机]
STM32的高级定时器里面死区的概念
“死区”的概念 PWM 脉宽调制 在电力电子中,最常用的就是整流和逆变。这就需要用到整流桥和逆变桥。以两电平为例,每个桥臂上有两个电力电子器件,比如IGBT。这两个IGBT不能同时导通,否则就会出现短路的情况。因此,设计带死区的PWM波可以防止上下两个器件同时导通。也就是说,当一个器件导通后关闭,再经过一段死区,这时才能让另一个导通。 死区,简单解释 通常,大功率电机、变频器等,末端都是由大功率管、IGBT等元件组成的H桥或3相桥。每个桥的上半桥和下半桥是是绝对不能同时导通的,但高速的PWM驱动信号在达到功率元件的控制极时,往往会由于各种各样的原因产生延迟的效果,造成某个半桥元件在应该关断时没有关断,造成功率元件烧毁。 死区就是在
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

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

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

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