Mikropascalda PWM ile renk geçiş efektli RGB Led projesi

Başlatan ftsahin, 23 Mayıs 2008, 14:44:40

ftsahin

Kodları mikropascalda yazdım ama uğraşmak istemeyenler için hex kodu rar dosyanın içinde mevcut. Aslında protonda yazmaya başladım ama hızı yetersiz geldi bu yüzden pascala geçtim. 20'den fazla renk geçişi var istenirse çoğaltılabilir.


http://rapidshare.com/files/116992364/pwm_rgb.rar.html






program pwm_rgb;
var i,r,g,b : byte;


procedure rgb(r_artis,g_artis,b_artis:integer);
var n,t : byte;
begin
  for t:=1 to 254 do
  begin
    r:=r+r_artis;
    g:=g+g_artis;
    b:=b+b_artis;
    for n:=0 to 1 do
    begin
      portb :=255;
      for i:=0 to 255 do
      begin
        if i=r then portb.0:=0;
        if i=g then portb.1:=0;
        if i=b then portb.2:=0;
      end;
    end;
  end;
  for n:=1 to 250 do
  begin
    portb :=255;
    for i:=0 to 255 do
    begin
      if i=r then portb.0:=0;
      if i=g then portb.1:=0;
      if i=b then portb.2:=0;
    end;
  end;
end;


begin
  trisb:=0;
  portb:=0;
  r:=0;
  g:=0;
  b:=0;
  while true do
  begin
    rgb( 1, 0, 0);//kırmızı
    rgb(-1, 0, 1);//mavi
    rgb( 0, 1,-1);//yeşil
    rgb( 1,-1, 1);//mor
    rgb( 0, 1,-1);//sarı
    rgb( 0, 0, 1);//turkuaz
    rgb(-1,-1,-1);//siyah
    rgb( 1, 1, 1);//beyaz
    rgb( 0,-1,-1);//kırmızı
    rgb(-1, 1, 1);//turkuaz
    rgb( 1, 0,-1);//sarı
    rgb(-1, 0, 1);//mavi
    rgb( 1,-1,-1);//kırmızı
    rgb( 0, 1, 0);//sarı
    rgb( 0,-1, 1);//mor
    rgb(-1, 1, 0);//turkuaz
    rgb( 1,-1,-1);//kırmızı
    rgb(-1, 1, 0); //yeşil
    rgb( 1, 0, 1);//beyaz
    rgb(-1,-1,-1);//siyah
    rgb( 1, 1, 0);//sarı
    rgb(-1, 0, 0);//yeşil
    rgb( 1,-1, 0);//kırmızı
    rgb( 0, 1, 1); //beyaz
    rgb( 0,-1, 0);//mor
    rgb(-1, 1,-1); //yeşil
    rgb( 0,-1, 1);//mavi
    rgb( 1, 1,-1);//sarı
    rgb( 0,-1,0);//kırmızı
    rgb( 0, 0, 1);//mor
    rgb( 0, 1, 0);//beyaz
    rgb(-1,-1,-1);//siyah
  end;
end.

asc


justice_for_all

peki renkleri random olarak yapmayi dusundunuzmu hic???
Deneyip de başaramayanları değil, yalnızca denemeye bile kalkışmayanları yargıla.   Gökhan Arslanbay