📄 delay.h
字号:
/*-----------------------------------------------------------------------
延时函数
系统时钟:
-----------------------------------------------------------------------*/
/***********************************************************************/
/**********************************************************************/
/**************************************************************************************/
//函数名 :DELAY_1us
//属性 :私有
//功能 :延时1us
//输入参数 :无
//输出参数 :无
//返回值 :
//修改日期 :
//修改人 :
/**************************************************************************************/
#include <avr/io.h>
#include <avr/delay.h>
#define DELAY_1us() _delay_loop_2((unsigned int)((1)*CPU_CRYSTAL/4))
/*void DELAY_1us(void)
{
for (int i=0;i<40;i++) {
asm("nop");}//_delay_us();
}*/
/**************************************************************************************/
//函数名 :DELAY_nus
//属性 :私有
//功能 :延时N us
//输入参数 :n--延时时间
//输出参数 :无
//返回值 :
//修改日期 :
//修改人 :
/**************************************************************************************/
#define DELAY_nus(us) _delay_loop_2((unsigned int)((us*15)*CPU_CRYSTAL/4))
/*void DELAY_nus(unsigned int n)
{
unsigned int i=0;
for (i=0;i<n;i++)
DELAY_1us();
}*/
/**************************************************************************************/
//函数名 :main
//属性 :私有
//功能 :主函数
//输入参数 :
//输出参数 :
//返回值 :
//修改日期 :
//修改人 :
/**************************************************************************************/
void DELAY_1ms(void) //1ms延时函数
{
unsigned int i;
for (i=0;i<(unsigned int)(XTAL*143-2);i++);
}
/**************************************************************************************/
//函数名 :main
//属性 :私有
//功能 :主函数
//输入参数 :
//输出参数 :
//返回值 :
//修改日期 :
//修改人 :
/**************************************************************************************/
void DELAY_nms(unsigned int n) //N ms延时函数
{
unsigned int i=0;
for (i=0;i<n;i++)
DELAY_1ms();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -