timer.c

来自「利用MC13213做的基于SMAC的接受并发送到串口的程序.可作为点对点实验中的」· C语言 代码 · 共 49 行

C
49
字号
#include "timer.h"
#include "eventDefs.h"

/* Globals */
UINT16 gu16msTimer = 0;
UINT16 gu16timerEvent[2];
extern UINT16 gu16Events;
extern UINT8 ensend;

interrupt void IRQTimer1(void) {
ensend = 1;
 
   gu16msTimer++;
   if (gu16timerEvent[0] != 0) {
      if(gu16timerEvent[0] == gu16msTimer) {
         gu16Events |= TIMER_EVENT0;
         gu16timerEvent[0] = 0; /* Turn off the timer0 */
      }
   }
   
   if (gu16timerEvent[1] != 0) {
      if(gu16timerEvent[1] == gu16msTimer) {
         gu16Events |= TIMER_EVENT1;
         gu16timerEvent[1] = 0; /* Turn off the timer1 */
      }
   }   
   
   TPM1SC &= ~0x80;  /* clear the interrupt */
 
}

/**************************************************************
*    Function:     delay
*    Parameters: 16-bit delay value
*    Return:        none
*
*    Simple blocking delay loop using HW timer.
**************************************************************/
 
void delay(UINT16 count) 
{
    UINT16 u16Match;
    
    u16Match = gu16msTimer + count;
    while (gu16msTimer != u16Match);
}


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?