You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
213 lines
2.3 KiB
213 lines
2.3 KiB
#include "bsp_config_delay.h"
|
|
|
|
#if (TYPE_MCU == TYPE_MCU_STC_8H
|
|
|| TYPE_MCU == TYPE_MCU_STC_8G
|
|
|| TYPE_MCU == TYPE_MCU_STC_8A
|
|
|| TYPE_MCU == TYPE_MCU_STC_8F)
|
|
#if (D_sys_MainFre == MainFre_22M)
|
|
|
|
void Delay100us() //@22.1184MHz
|
|
{
|
|
unsigned char i, j;
|
|
|
|
i = 3;
|
|
j = 221;
|
|
do
|
|
{
|
|
while (--j);
|
|
} while (--i);
|
|
}
|
|
|
|
void Delay200us() //@22.1184MHz
|
|
{
|
|
unsigned char i, j;
|
|
|
|
_nop_();
|
|
i = 6;
|
|
j = 188;
|
|
do
|
|
{
|
|
while (--j);
|
|
} while (--i);
|
|
}
|
|
|
|
void Delay500us() //@22.1184MHz
|
|
{
|
|
unsigned char i, j;
|
|
|
|
i = 15;
|
|
j = 90;
|
|
do
|
|
{
|
|
while (--j);
|
|
} while (--i);
|
|
}
|
|
|
|
void Delay600us() //@22.1184MHz
|
|
{
|
|
unsigned char i, j;
|
|
|
|
_nop_();
|
|
i = 18;
|
|
j = 57;
|
|
do
|
|
{
|
|
while (--j);
|
|
} while (--i);
|
|
}
|
|
|
|
|
|
void Delay1ms() //@22.1184MHz
|
|
{
|
|
unsigned char i, j;
|
|
|
|
i = 29;
|
|
j = 183;
|
|
do
|
|
{
|
|
while (--j);
|
|
} while (--i);
|
|
}
|
|
|
|
void Delay100ms() //@22.1184MHz
|
|
{
|
|
unsigned char i, j, k;
|
|
|
|
i = 12;
|
|
j = 57;
|
|
k = 122;
|
|
do
|
|
{
|
|
do
|
|
{
|
|
while (--k);
|
|
} while (--j);
|
|
} while (--i);
|
|
}
|
|
|
|
void Delay200ms() //@22.1184MHz
|
|
{
|
|
unsigned char i, j, k;
|
|
|
|
i = 23;
|
|
j = 113;
|
|
k = 248;
|
|
do
|
|
{
|
|
do
|
|
{
|
|
while (--k);
|
|
} while (--j);
|
|
} while (--i);
|
|
}
|
|
|
|
void Delay500ms() //@22.1184MHz
|
|
{
|
|
unsigned char i, j, k;
|
|
|
|
i = 57;
|
|
j = 27;
|
|
k = 112;
|
|
do
|
|
{
|
|
do
|
|
{
|
|
while (--k);
|
|
} while (--j);
|
|
} while (--i);
|
|
}
|
|
|
|
void Delay600ms() //@22.1184MHz
|
|
{
|
|
unsigned char i, j, k;
|
|
|
|
i = 68;
|
|
j = 83;
|
|
k = 238;
|
|
do
|
|
{
|
|
do
|
|
{
|
|
while (--k);
|
|
} while (--j);
|
|
} while (--i);
|
|
}
|
|
|
|
void Delay1000ms() //@22.1184MHz
|
|
{
|
|
unsigned char i, j, k;
|
|
|
|
i = 113;
|
|
j = 53;
|
|
k = 228;
|
|
do
|
|
{
|
|
do
|
|
{
|
|
while (--k);
|
|
} while (--j);
|
|
} while (--i);
|
|
}
|
|
|
|
void delayInMs(U16 n)
|
|
{
|
|
if(n<=50)
|
|
{
|
|
do{
|
|
Delay1ms();
|
|
}while(n--);
|
|
}
|
|
else if(n<=100)
|
|
{
|
|
Delay100ms();
|
|
}
|
|
else if(n<=200)
|
|
{
|
|
Delay200ms();
|
|
}
|
|
else if(n<=500)
|
|
{
|
|
Delay500ms();
|
|
}
|
|
else if(n<=600)
|
|
{
|
|
Delay600ms();
|
|
}
|
|
else if(n<=1000)
|
|
{
|
|
Delay1000ms();
|
|
}
|
|
else
|
|
{
|
|
}
|
|
}
|
|
|
|
void delayInUs(U16 n)
|
|
{
|
|
if(n<=100)
|
|
{
|
|
Delay100us();
|
|
}
|
|
else if(n<=200)
|
|
{
|
|
Delay200us();
|
|
}
|
|
else if(n<=500)
|
|
{
|
|
Delay500us();
|
|
}
|
|
else if(n<=600)
|
|
{
|
|
Delay600us();
|
|
}
|
|
else if(n<=1000)
|
|
{
|
|
Delay1ms();
|
|
}
|
|
else
|
|
{
|
|
}
|
|
}
|
|
|
|
#endif //end (D_sys_MainFre == MainFre_22M)
|
|
#endif
|
|
|