init.c

来自「基于ARM Winbond W90P710学习板的LED驱动的开发。」· C语言 代码 · 共 95 行

C
95
字号
/****************************************************************************
 *
 * 				       电子科技大学嵌入式软件工程中心 版权所有
 *
 ***************************************************************************/
#include "init.h"

void mySleep(int);
void test1();
void test2();
void test3();

int main()
{
	test3();
	return 1;
}

void test1()
{
	int i=0;
	Led_Open();
	while(1)
	{
		Led_Write(i);
		mySleep(100);
		if(++i > 255) 
		{
			i=0;
		}
	}
}

void test2()
{
	int i=1;
	Led_Open();
	while(1)
	{
		Led_Write(i);
		mySleep(1000);
		i <<= 1;
		if(i > 255) 
		{
			i=1;
		}
	}
}

void test3()
{
	int i=1;
	int j=1;
	Led_Open();
	while(1)
	{
		Led_Write(i);
		mySleep(1000);
		if(1==j)
		{
			i <<= 1;
		}
		else
		{
			i >>= 1;
		}
		if(i > 255) 
		{
			j=0;
		}
		if (i ==0)
		{
			j=1;
			i=1;
		}
	}	
}
//延时函数
void mySleep(int sleeps)
{
	int i=0;
	while(sleeps -->0)
	{
		while(i++ <0xFFFF)
		{
			//编译器不应该使用优化功能,否则该延时函数可能被删除。
		}	
	}
}





⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?