www.pudn.com > 440B0-LwIP.zip > led_f.c


 
 
#include "snds.h" 
#include "std.h" 
#include "led_f.h" 
 
 
/****************************************************** 
函数名称:       delayMs() 
函数功能:       ms级延时. 
入口参数:       counter    需要延时多少个ms. 
返 回 值:       无. 
备    注:       这个时间只是一个大约时间. 
*******************************************************/ 
void delayMs(uint32 counter) 
{ 
    uint32  i; 
     
    while(counter--) 
    { 
        i = 400;          //1ms延时基数. 
        while(i--)     
            ; 
    }        
} 
 
/****************************************************** 
函数名称:       ledAllOn() 
函数功能:       点亮GPIO上的所有LED. 
入口参数:       无. 
返 回 值:       无. 
备    注:        
*******************************************************/ 
void ledAllOn(void) 
{	     
 	IOPMOD  |= 0xff;              //设置GPIO全为输出方式. 
	IOPDATA &= ~0xff;             //点亮GPIO上的所有LED. 
} 
 
/****************************************************** 
函数名称:       ledAllOff() 
函数功能:       灭掉GPIO上的所有LED. 
入口参数:       无. 
返 回 值:       无. 
备    注:        
*******************************************************/ 
void ledAllOff(void) 
{	     
 	IOPMOD  |= 0xff;              //设置GPIO全为输出方式. 
	IOPDATA |= 0xff;             //灭掉GPIO上的所有LED. 
} 
 
/****************************************************** 
函数名称:       ledRun() 
函数功能:       以跑马灯的方式循环点亮GPIO上的LED. 
入口参数:       counter    循环所有灯的次数. 
返 回 值:       无. 
备    注:        
*******************************************************/ 
void ledRun(int counter) 
{ 
 	uint8  j; 
 	 
	j = 0;   
 	if(counter <= 0) 	 return;	 
	counter = counter*8;	 
    while(counter--) 
	{ 
		IOPDATA |= 0xff;             //先让led全部熄灭. 
		delayMs(100);                               //延时0.2ms. 
 		IOPDATA = ~(0x01<