ECG心电监护仪程序设计问题集锦(二)LED灯通过中断定时计数的方法灵活设置亮灭次数的设计用法

本文介绍了一种基于中断定时计数的LED闪烁程序设计方法。该方法通过将LED闪烁程序置于中断服务函数中实现扫描监测,方便了LED闪烁次数的控制。仅需设置参数LED1_COUNT的值即可改变闪烁次数。

LED闪烁程序代码如下:

void LED_BRIGHT(void) //10MS_扫描一次.
{  
  if(LED1_COUNT > 0x00)
  {
      LED1_TIMES++;      
      if(LED1_TIMES < 6)   
        LED1_0;         // 灭60ms
else
 LED1_1;       //两130ms
      if(LED1_TIMES > 20)
      {
LED1_TIMES = 0x00;
LED1_COUNT--;    //闪亮次数自减
      }
  }
}

**************************************************************************************

中断定时计数LED闪烁扫描程序代码如下:

#pragma vector = TIMER0_A0_VECTOR
__interrupt void Timer_A (void)
{
   LED_BRIGHT();   //扫描LED  

}

*******************************************************************************

程序中闪烁次数控制变量:LED1_COUNT=2

*********************************************************************************

以上三段程序的巧妙结合运用方便了LED闪烁次数的控制,此种程序设计方法思路是通过中断定时的方法,将LED闪烁程序放在中断中进行扫描监测,此种用法方便程序中LED灯闪烁程序的放置,中断定时服务函数通过每次定时扫描LED闪烁程序,检查LED1_COUNT参数值得变化,定时执行LED灯的亮灭,而其他程序中则不需要再调用LED闪烁函数,只需要设置参数LED1_COUNT的数值,因此非常方便程序的可读性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值