您好,欢迎来到爱问旅游网。
搜索
您的当前位置:首页AVR单片机常用的延时函数

AVR单片机常用的延时函数

来源:爱问旅游网
AVR单片机常用的延时函数

/***************************************************************************/

//C header files:Delay function for AVR //MCU:ATmega8 or 16 or 32 //Version: 1.0beta //The author:

/***************************************************************************/

#include

void delay8RC_us(unsigned int time) //8Mhz内部RC震荡延时Xus { do {

time--; }

while(time>1); }

void delay8RC_ms(unsigned int time) //8Mhz内部RC震荡延时Xms {

while(time!=0) {

delay8RC_us(1000); time--; }

}

/******************************************************************************/

void delay1M_1ms(void) //1Mhz延时1ms {

unsigned char a,b,c; for(c=1;c>0;c--) for(b=142;b>0;b--) for(a=2;a>0;a--); }

void delay1M_xms(unsigned int x) //1Mhz延时xms {

unsigned int i; for(i=0;idelay1M_1ms();

0} }

/******************************************************************************/

void delay2M_1ms(void) //2Mhz延时1ms {

unsigned char a,b; for(b=4;b>0;b--) for(a=248;a>0;a--); NOP(); }

void delay2M_xms(unsigned int x) //2Mhz延时xms {

unsigned int i; for(i=0;idelay2M_1ms(); } }

/******************************************************************************/

void delay4M_1ms(void) //4Mhz延时1ms {

unsigned char a,b,c; for(c=7;c>0;c--) for(b=8;b>0;b--) for(a=34;a>0;a--); }

void delay4M_1us(void) //4Mhz延时1us {

NOP(); NOP(); }

void delay4M_xms(unsigned int x) //4Mhz延时xms {

unsigned int i; for(i=0;idelay4M_1ms();

0} }

/******************************************************************************/

void delay73782M_1us(void) //7.3782Mhz延时1us {

unsigned char a; for(a=2;a>0;a--); }

void delay73782M_1ms(void) //7.3782Mhz延时1ms {

unsigned char a,b,c; for(c=1;c>0;c--) for(b=2;b>0;b--) for(a=13;a>0;a--); }

void delay73782M_xms(unsigned int x) //7.3782Mhz延时xms {

unsigned int i; for(i=0;idelay73782M_1ms(); } }

/******************************************************************************/

void delay8M_1ms(void) //8Mhz延时1ms {

unsigned char a,b,c; for(c=11;c>0;c--) for(b=4;b>0;b--) for(a=;a>0;a--); }

void delay8M_1us(void) //8Mhz延时1us {

unsigned char a,b; for(b=1;b>0;b--) for(a=1;a>0;a--); }

/********************************************************************

0**********/

void delay12M_1us(void) //12Mhz延时1us {

unsigned char a,b; for(b=1;b>0;b--) for(a=3;a>0;a--); }

void delay12M_1ms(void) //12Mhz延时1ms {

unsigned char a,b; for(b=129;b>0;b--) for(a=45;a>0;a--); }

void delay12M_xms(unsigned int x) //12Mhz延时xms {

unsigned int i; for(i=0;idelay12M_1ms(); } }

/******************************************************************************/

void delay16M_1us(void) //16Mhz延时1us {

unsigned char a,b; for(b=1;b>0;b--) for(a=5;a>0;a--); }

void delay16M_1ms(void) //16Mhz延时1ms {

unsigned char a,b,c; for(c=17;c>0;c--) for(b=134;b>0;b--) for(a=2;a>0;a--); }

void delay16M_xms(unsigned int x) //16Mhz延时xms {

unsigned int i; for(i=0;i0{

delay16M_1ms(); } }

0

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- awee.cn 版权所有 湘ICP备2023022495号-5

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务