新聞中心

AVR單片機(jī)-流水燈2

作者: 時(shí)間:2016-11-29 來(lái)源:網(wǎng)絡(luò) 收藏
  利用單片機(jī)可以做出各種花樣的流水燈效果,曾經(jīng)就見(jiàn)有人用一片STC89C52單片機(jī)接了32個(gè)LED,做成一個(gè)心的形狀,然后送給了女朋友。呵呵~~

  利用c語(yǔ)言的數(shù)組功能就可以實(shí)現(xiàn)花樣流水燈的設(shè)計(jì),只要把每種流動(dòng)方式的代碼寫(xiě)進(jìn)數(shù)組,依次從數(shù)組取出顯示就可以了。想要多少花樣都由你說(shuō)了算!

本文引用地址:http://butianyuan.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++)//從左到右依次點(diǎn)亮
{
PORTA=~temp;
delay();
delay();
delay();
temp<<=1;
}
temp=0b10000000;
for(i=0;i<9;i++)////從右到左依次點(diǎn)亮
{
PORTA=~temp;
delay();
delay();
delay();
temp>>=1;
}
for(i=0;i<22;i++)
{
PORTA=~led0[i];
delay();
delay();
delay();

}
}
}

效果圖:



關(guān)鍵詞: AVR單片機(jī)流水

評(píng)論


技術(shù)專(zhuān)區(qū)

關(guān)閉