STM8S精确延时+LED闪烁

初学者,写的一个LED闪烁程序,延时一秒,用示波器看过!
#include"iostm8s105c4.h"
#define LED PC_ODR_ODR1
void GPIO_Init()
{
  PG_DDR_DDR0=1;
  
  PG_CR1_C10=1;
  
  PG_CR2_C20=0;
  
  PG_ODR_ODR0=0;
  
  PC_DDR_DDR1=1;
  
  PC_CR1_C11=1;
  
  PC_CR2_C21=0;
  
}
/********** 微秒级延时程序*********/ 

void Delayus(void) 
{  
  asm("nop"); 
  
  asm("nop"); 
  
  asm("nop"); 
 
  asm("nop");  
}
/********** 毫秒级延时程序**********/ 

void Delayms(unsigned int time) 

{ 
    
  unsigned int i; 
    
  while(time--)   
    
	for(i=900;i>0;i--) 
    
	  Delayus();  
  
} 

main()
{
  GPIO_Init();
  
  while(1)
  {
	LED=~LED;
	
	Delayms(125);
  }
}

你可能感兴趣的:(IAR,for,STM8)