Posted by : Unknown 26 Haziran 2015 Cuma

PİC PROGRAMLAMA -8
Merhaba arkadaşlar.Bugün ledler ile kalp animasyonu yapacagız.


Şekildeki gibi devremizi oluşturuyoruz. Ve gelelim kod kısmına :
int32 RND[]={0b00010001000100010001000100010001,//1-5-9-13-17-21-25-29 ledler yanacak
0b00110111011101110111011101110111,//4-8-12-16-20-24-26-30 ledler yanmayacak
0b00111111011111110111111101111111,//8-16-24 yanmayacak
0b00111111111111111111111111111111,//tüm ledler yanacak
};
void ShowAnimation(int32 anim)
{  output_a(anim);
   output_b(anim >> 6);
   output_c(anim >> 14);
   output_d(anim >> 22);
   }
int8 i;
void main()
{output_a(0*00);//a,b,c ve d portlarımız çıkış portumuz ve çıkışlarını lojik-0 olarak ayarladık
output_b(0*00);
output_c(0*00);
output_d(0*00);
set_tris_a(0*00);
set_tris_b(0*00);
set_tris_c(0*00);
set_tris_d(0*00);
delay_ms(100);
   while(TRUE)
   {
     ShowAnimation(RND[3]);//rnd dizisininin 3 indisindeki degeri alacak ve çıkışa gönderecek
     delay_ms(200);
     ShowAnimation(RND[2]);//rnd dizisininin 2 indisindeki degeri alacak ve çıkışa gönderecek
     delay_ms(200);
     ShowAnimation(RND[1]);//rnd dizisininin 1 indisindeki degeri alacak ve çıkışa gönderecek
     delay_ms(200);
     ShowAnimation(RND[0]);//rnd dizisininin 0 indisindeki degeri alacak ve çıkışa gönderecek
     delay_ms(200);
     for(i=0;i<30;i++)
     {delay_ms(500);
     ShowAnimation(0xFFFFFFFF<<(30-i));//bu döngü son ledden başlyarak 1.lede kadar yakar
     }
     delay_ms(500);
     for(i=0;i<30;i++)
     {delay_ms(500);
     ShowAnimation(0xFFFFFFFF>>i);//bu döngü son ledden başlayark 1.lede kadar söndürür
     }
     delay_ms(500);
     for(i=0;i<30;i++)
     {delay_ms(500);
     ShowAnimation(0xFFFFFFFF>>(30-i));//bu döngü 1.ledden başlayarak son lede kadar sırayla ledlerı yakar
     }
     delay_ms(500);
     for(i=0;i<30;i++)
     {delay_ms(500);
     ShowAnimation(0xFFFFFFFF<<i);//bu döngü 1.ledden başlayarak son lede kadar sırayla söndürür
     }
     delay_ms(500);
   }
}


Burada zaman ayarlaması ve animasyonlar üzerinde oynama yapabiliriz.
Devrenin proteus dosyasını isteyen arkadaşlar bize facebook üzerinden ulaşırlarssa seviniriz.

yorumlarınız bizim için önemli

Bültene abone ol | Yorumlara abone ol

ELEKTRO BLOGGER A HOŞGELDINIZ

ARAMA YAP

EN COK OKUNANLAR

- Copyright © ELEKTRO-BLOGGER Blogger