⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 avr-9_3_8.c

📁 <<AVR C语言的应用>>第九章中的例子 用ATmega1280 在IAR Embedded Workbench IDE平台编译连接通过的12个程序
💻 C
字号:
#include <ioavr.h>
#define uchar unsigned char
#define uint unsigned int
__flash uchar DATA_7SEG[ ]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
			0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
uchar led[6];
uint count;
void delay(uint t)
{
uint i;
  for (i=0;i<t;i++);
}
void init_disp(void)
{
	DDRB=0xff;
	DDRD=0xff;
	PORTD=0x80;
}
void disp(void)
{
uchar i;
for (i=0;i<6;i++)
        {
		PORTD=~(0x01<<i);
		PORTB=DATA_7SEG[led[i]];
		delay(1000);
	}
	PORTB=0x00;
	PORTD=0xff;
}

void be_pc0(void)
{
uint i;
	DDRC|=0x01;
		for (i=0;i<350;i++)
		{
			PORTC^=0x01;
			delay(350);
		}
}
void conv(void)
{
	led[5]=0;
	led[4]=count/10000;
	led[3]=count/1000%10;
	led[2]=count/100%10;
	led[1]=count/10%10;
	led[0]=count%10;
}
void main(void)
{
	init_disp();
	count=0;
	conv();
	for(;;)
	{
		while((PIND&0x80)==0x80)
		disp();
		be_pc0();
		count++;
		conv();
		while((PIND&0x80)==0)
		disp();		
	}
}











⌨️ 快捷键说明

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