led_323.c

来自「双龙AVR-MEGA128开发板的配套源码。」· C语言 代码 · 共 43 行

C
43
字号
#include <iom323.h>
#include <macros.h>

/* This seems to produce the right amount of delay for the LED to be
 * seen
 */
void Delay()
	{
	unsigned char a, b;

	for (a = 1; a; a++)
		for (b = 1; b; b++)
			;
	}

void LED_On(int i)
	{
	PORTB = ~BIT(i);	/* low output to turn LED on */
	Delay();
	}

void main()
	{
	int i;
	DDRB = 0xFF;	/* output */
	PORTB = 0xFF;	/* all off */

	while (1)
		{
		/* forward march */
		for (i = 0; i < 8; i++)
			LED_On(i);
		/* backward march */
		for (i = 8; i > 0; i--)
			LED_On(i);
		/* skip */
		for (i = 0; i < 8; i += 2)
			LED_On(i);
		for (i = 7; i > 0; i -= 2)
			LED_On(i);
		}
	}

⌨️ 快捷键说明

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