?? delay.c
字號:
/*******************************************************************************
*
* Filename: Delay.c
*
* Author: Duke Chang
* Company: RAiO Technology Inc.
* Case:
* Device: MXIC MX10E8050IQC at 18.432MHz
* Date: 2005/10/1
* Modifier: Duke Chang
* Modify Date: 2005/10/13
* Visions: 1.0
* Compiled Using Keil C v7.00a
*
*******************************************************************************/
#include "Delay.h"
//==============================================================================
//Subroutine: Delay2us
//Function: Delay 2us at XTAL=22.1184MHz => OK
// at XTAL=36.864MHz => OK
//==============================================================================
void Delay2us(uchar Counter)
{
#ifdef C22MHz
while(--Counter);
#endif
#ifdef C36MHz
while(--Counter);
#endif
}
//==============================================================================
//Subroutine: Delay100us
//Function: Delay 100us at XTAL=22.1184MHz => OK
// at XTAL=36.864MHz => OK
//==============================================================================
void Delay100us(uchar Counter)
{
#ifdef C11MHz
int i;
Counter = Counter >> 1;
for(i = 0 ; i < Counter ; i++);
#endif
#ifdef C12MHz
int i;
Counter = Counter >> 1;
for(i = 0 ; i < Counter ; i++);
#endif
#ifdef C22MHz
while(Counter--)
{
Delay2us22MHz(86);
}
#endif
#ifdef C36MHz
while(Counter--)
{
Delay2us(146);
}
#endif
}
//==============================================================================
//Subroutine: Delay1ms
//Function: Delay 1ms at XTAL=22.1184MHz => OK
// at XTAL=36.864MHz => OK
//==============================================================================
void Delay1ms(uchar Counter)
{
#ifdef C11MHz
int i,j;
for(i = 0 ; i < Counter ; i++)
{
for(j = 0 ;j < 150 ; j++);
}
#endif
#ifdef C12MHz
int i,j;
for(i = 0 ; i < Counter ; i++)
{
for(j = 0 ;j < 78 ; j++);
}
#endif
#ifdef C22MHz
while(Counter--)
{
Delay100us(10);
}
#endif
#ifdef C36MHz
while(Counter--)
{
Delay100us(10);
}
#endif
}
//==============================================================================
//Subroutine: Delay100ms
//Function: Delay 100ms at XTAL=22.1184MHz => OK
// at XTAL=36.864MHz => OK
//==============================================================================
void Delay100ms(uchar Counter)
{
#ifdef C22MHz
while(Counter--)
{
Delay1ms(101);
}
#endif
#ifdef C36MHz
while(Counter--)
{
Delay1ms(101);
}
#endif
}
//==============================================================================
//Subroutine: Delay10ms
//Function: Delay 10ms at XTAL=22.1184MHz => OK
// at XTAL=36.864MHz => OK
//==============================================================================
void Delay10ms(uchar Counter)
{
#ifdef C22MHz
while(Counter--)
{
Delay1ms(11);
}
#endif
#ifdef C36MHz
while(Counter--)
{
Delay1ms(11);
}
#endif
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -