AVR单片机-流水灯2
利用c语言的数组功能就可以实现花样流水灯的设计,只要把每种流动方式的代码写进数组,依次从数组取出显示就可以了。想要多少花样都由你说了算!
本文引用地址:https://www.eepw.com.cn/article/201611/323497.htm源代码:
/*
* LED1.c
*
* Created: 2011-6-24 15:29:32
* Author: ZYIN
*/
#include <avr/io.h>
unsigned char led0[]={0x81,0x42,0x24,0x18,0x00,0x18,0x24,0x42,0x81,0x00,0x55,0xaa,0x55,0xaa,0x55,0xaa,0xff,0x00,0xff,0x00,0xff,0x00};
void delay(void)
{
unsigned int j;
j=60000;
while(j--);
}
int main(void)
{
DDRF=0xff;
PORTF=0b00001000;
DDRA=0xff;
while(1)
{
char temp;
int i;
temp=0b00000001;
for(i=0;i<9;i++)//从左到右依次点亮
{
PORTA=~temp;
delay();
delay();
delay();
temp<<=1;
}
temp=0b10000000;
for(i=0;i<9;i++)////从右到左依次点亮
{
PORTA=~temp;
delay();
delay();
delay();
temp>>=1;
}
for(i=0;i<22;i++)
{
PORTA=~led0[i];
delay();
delay();
delay();
}
}
}
效果图:
评论