ledi pwm ile kısıp açmak

Başlatan basm, 22 Mart 2009, 18:12:34

basm

Selam arkadaşlar, aranıza yeni katılır katılmaz sizden yardım istemek ne kadar doğru bilmiyorum fakat, işte burdayım  :)

3 adet ledin parlaklığını sabit bir süre içinde sürekli kısıp açmak istiyorum, googleda lcd,dimmer,modulation,pwm kelimeleri ile baya bir araştırma yaptım fakat bu işi pic ile yapılanına maalesef rastlayamadım.

en çok işime yarayan, linkleride sizlerle paylaşmak istiyorum ve yardımlarınızı bekliyorum.

şimdiden teşekkürler.

http://www.ladyada.net/learn/proj1/basicpwm.html

http://principialabs.com/arduino-pulse-width-modulation/

http://www.instructables.com/id/Mini-Dotclock/

http://www.instructables.com/id/Minidot-2---The-holoclock/

http://www.instructables.com/id/Microdot---wrist-watch-LED-pattern-timepiece/

Chan86

Öncelikle aramıza hoşgeldin.Hangi dilde yazmayı düşünüyorsun programını ?

mustafa_cmbz

http://principialabs.com/arduino-pulse-width-modulation/

bende yukarıdaki video'da olduğu gibi yapmak istiyorum fakat 3 renk animasyonu da yaptırabileceğim bişeyler istiyorum...şuan akım sınırlayıcı üzerinde çalışıyorum bakalım becerebilirsek pwm ile bişeyler yapacağız.

daha deneme ye vaktim olmadı ama bişey sormak istiyorum nu videodaki gibi bişey yapmaya kalksak ledi'i yavaş yavaş yakıp söndürecek programın mantığı nasıl olmalı mesela ben protonda 16f628 için bir devre tasarlıyorum ve merak ettiğim şey şu:

HPWM 1,255,1000  
HPWM 1,200,1000  
HPWM 1,150,1000  
HPWM 1,100,1000  
HPWM 1,50,1000  
HPWM 1,25,1000  


arkası arkasıya bu komutları vererek led'i bu şekilde yavaşça söndürmek mi mantıklı yoksa for...next ile döngü kurarak yapmak mı daha mantıklı...

eğer öyle ise peki for...next için örnek verecek varmı acaba_?


..iyi çalışamlar..

basm

Alıntı yapılan: "Chan86"Öncelikle aramıza hoşgeldin.Hangi dilde yazmayı düşünüyorsun programını ?

Teşekkürler, hoş gördük. Dil olarak assembly, picbasic yada c olabilir, herbiri konusunda orta düzeyde bilgim var. Önemli olan rahatça bulunabilecek 16f84,628 yada 877 picleriyle yapmayı diliyorum.

aklımda şöyle bir örnek vardı aslında:

@ DEVICE PIC16F84A
@ DEVICE PIC16F84A, WDT_OFF
@ DEVICE PIC16F84A, PWRT_OFF
@ DEVICE PIC16F84A, PROTECT_OFF
@ DEVICE PIC16F84A, XT_OSC

SURE VAR BYTE
PERYOT VAR BYTE
SYMBOL AC = PORTA.0
SYMBOL KIS = PORTA.1
SYMBOL LED = PORTB.0

SURE = 5
PERYOT = 10

PORTA = 0
PORTB = 0
TRISA = %00000011
TRISB = 0

basla:
    IF AC = 0 THEN
        SURE = SURE + 1
        IF SURE > PERYOT THEN SURE = PERYOT
        PAUSE 150
    ENDIF
    IF KIS = 0 THEN
        SURE = SURE - 1
        IF SURE = 255 THEN SURE = 0
        PAUSE 150
    ENDIF
    
    HIGH LED
    PAUSE SURE
    LOW LED
    PAUSE (PERYOT - SURE)
GOTO BASLA

END

tyildizak

Alıntı yapılan: "mustafa_cmbz"
HPWM 1,255,1000  
HPWM 1,200,1000  
HPWM 1,150,1000  
HPWM 1,100,1000  
HPWM 1,50,1000  
HPWM 1,25,1000  


arkası arkasıya bu komutları vererek led'i bu şekilde yavaşça söndürmek mi mantıklı yoksa for...next ile döngü kurarak yapmak mı daha mantıklı...

eğer öyle ise peki for...next için örnek verecek varmı acaba_?

Mustafa, arka arkaya hpwm komutları kullanırsan program hafızasında çok fazla yer kaplayacaktır, doğrusu "for-next" döngüsüyle yapmaktır.
örnek kod:
     define osc 4
      trisc = 0
      i var byte
  
main:

      for i = 1 to 255
      hpwm 1,i,1000              
      pause 8
      next i

      pause 1000

      for i = 255 to 1 step -1
      hpwm 1,i,1000
      pause 8
      next i

      goto main

end



kolay gelsin.

arslan74

Alıntı yapılan: "mustafa_cmbz"http://principialabs.com/arduino-pulse-width-modulation/

bende yukarıdaki video'da olduğu gibi yapmak istiyorum fakat 3 renk animasyonu da yaptırabileceğim bişeyler istiyorum...şuan akım sınırlayıcı üzerinde çalışıyorum bakalım becerebilirsek pwm ile bişeyler yapacağız.
arkası arkasıya bu komutları vererek led'i bu şekilde yavaşça söndürmek mi mantıklı yoksa for...next ile döngü kurarak yapmak mı daha mantıklı...

eğer öyle ise peki for...next için örnek verecek varmı acaba_?


..iyi çalışamlar..

Merhaba, Ben verdiğiniz linke benzer ürün yapmıştım. Yapalı cok oluyor. mantığını unutum sayılır. Ama temelde Timer timer kesmesi kullanarak bu işi yaptım.

Örnek projeyi proteus simulasyonu ve komple proje olarak upload ediyorum. Proteus simulasyonda ki osiloskopta genliğin daralıb genişlemesini görebilirsiniz.

http://rapidshare.com/files/212863510/Led_Dimmer_Ver1.0.rar

Selamlar

basm

Alıntı yapılan: "arslan74"
Alıntı yapılan: "mustafa_cmbz"http://principialabs.com/arduino-pulse-width-modulation/

bende yukarıdaki video'da olduğu gibi yapmak istiyorum fakat 3 renk animasyonu da yaptırabileceğim bişeyler istiyorum...şuan akım sınırlayıcı üzerinde çalışıyorum bakalım becerebilirsek pwm ile bişeyler yapacağız.
arkası arkasıya bu komutları vererek led'i bu şekilde yavaşça söndürmek mi mantıklı yoksa for...next ile döngü kurarak yapmak mı daha mantıklı...

eğer öyle ise peki for...next için örnek verecek varmı acaba_?


..iyi çalışamlar..

Merhaba, Ben verdiğiniz linke benzer ürün yapmıştım. Yapalı cok oluyor. mantığını unutum sayılır. Ama temelde Timer timer kesmesi kullanarak bu işi yaptım.

Örnek projeyi proteus simulasyonu ve komple proje olarak upload ediyorum. Proteus simulasyonda ki osiloskopta genliğin daralıb genişlemesini görebilirsiniz.

http://rapidshare.com/files/212863510/Led_Dimmer_Ver1.0.rar

Selamlar

arslan74, emeğin için teşekkürler fakat rapidshare'da indirme limitine ulaştığı için indiremedim, mümkünse farklı bir barındırma sayfasına (mediafire.com, ifile.it gibi) tekrardan yükleyebilirmisin?

şimdiden teşekkürler.

arslan74

Benim Atmam gecikebilir. Şirkette rapide kısıtlama var. İndiren birisi tekrar başka yere yüklerse senin işin daha hızlı  haledilir.

Eğer ADSL modemle bağlaniyorsan ve static IP kullanmiyorsan Modemin elektriğini ac kapa. Ip değişeceği için, rapid sınırlamasıda ordadan kalkacaktır.

Selamlar

basm

Alıntı yapılan: "arslan74"Benim Atmam gecikebilir. Şirkette rapide kısıtlama var. İndiren birisi tekrar başka yere yüklerse senin işin daha hızlı  haledilir.

Eğer ADSL modemle bağlaniyorsan ve static IP kullanmiyorsan Modemin elektriğini ac kapa. Ip değişeceği için, rapid sınırlamasıda ordadan kalkacaktır.

Selamlar

Rapidshare'dan indirememin nedeni yüklediğiniz dosya rapidshare'a kayıtlı bir premium yada collector bir üyenin dosyası olamadığından sadece 10 kez indirmeye izin vermektedir. Umarım bir şekilde edinebiliriz, sadece ben değil ilgilenen diğer arkadaşlarda ..

Tekrardan teşekkürler.

M_B

İmkanın sınırlarını görmek için imkansızı denemek lazım.                                                             Fatih Sultan Mehmet

mustafa_cmbz

hocam ben 16f628 ile rgb led sürmek istiyorum yanlız takıldığım bir nokta var 16f628 de 1 tane pwm modülü var peki 3 ayrı led'i tek tek nasıl yakıp sönürebilirim_? mesela kırmızı yavaş yavaş yanacak arkasında yeşil yanacak arkasından da mavi yanacak (renkler önemli değil) bu tarz bir uygulamayı 16f628 ile nasıl yapabiliriz_? mantık nasıl olmalıdır_? 2-3 günden bu yana kafamı kurcalıyor aklıma gelen 1 pwm ile 1. led'i sürmek timer ile de diğerini kontrol etmek...

eğer timer ile 3 ledi'i de ayrı ayrı kontrol edebilirsek ozaman 16f84 ile de aynı uyuglama yapılabilinir hatta 12f675 ile de yapılabilinir diye düşünüyorum tek sorun nasıl bir komut lazım pause for next ile bişiler yapılmalı örnek arama aşamasındayım...ledleri pic-akım sınırlayıcı lm317'li bir devre ve led şeklinde sürmeyi deniyeceğim bakalım olacak mı_? iyi çalışmalar....

arslan74

Alıntı yapılan: "mustafa_cmbz"hocam ben 16f628 ile rgb led sürmek istiyorum yanlız takıldığım bir nokta var 16f628 de 1 tane pwm modülü var peki 3 ayrı led'i tek tek nasıl yakıp sönürebilirim_? mesela kırmızı yavaş yavaş yanacak arkasında yeşil yanacak arkasından da mavi yanacak (renkler önemli değil) bu tarz bir uygulamayı 16f628 ile nasıl yapabiliriz_? mantık nasıl olmalıdır_? 2-3 günden bu yana kafamı kurcalıyor aklıma gelen 1 pwm ile 1. led'i sürmek timer ile de diğerini kontrol etmek...

eğer timer ile 3 ledi'i de ayrı ayrı kontrol edebilirsek ozaman 16f84 ile de aynı uyuglama yapılabilinir hatta 12f675 ile de yapılabilinir diye düşünüyorum tek sorun nasıl bir komut lazım pause for next ile bişiler yapılmalı örnek arama aşamasındayım...ledleri pic-akım sınırlayıcı lm317'li bir devre ve led şeklinde sürmeyi deniyeceğim bakalım olacak mı_? iyi çalışmalar....

Merhaba,

Benim verdiğim projeyi incele, içinde kodlarda mevcud. Kod üzerinde basit oynama yaparak istediğiniz olayı yapabilirsiniz.

Bu kodu 12F629 veya 12f675 için yazılmıştir. içinde hazır PWM olmadığı için timer kesmesiyle olayı cözdüm. Ancak gercek PWM kadar hassas olmasada işlemci hızın göre Led uygulamalar için parlaklık kontrolü yapılabiliyor.

Selamlar

M_B

Alıntı yapılan: "mustafa_cmbz"hocam ben 16f628 ile rgb led sürmek istiyorum yanlız takıldığım bir nokta var 16f628 de 1 tane pwm modülü var peki 3 ayrı led'i tek tek nasıl yakıp sönürebilirim_? mesela kırmızı yavaş yavaş yanacak arkasında yeşil yanacak arkasından da mavi yanacak (renkler önemli değil) bu tarz bir uygulamayı 16f628 ile nasıl yapabiliriz_? mantık nasıl olmalıdır_? 2-3 günden bu yana kafamı kurcalıyor aklıma gelen 1 pwm ile 1. led'i sürmek timer ile de diğerini kontrol etmek...

eğer timer ile 3 ledi'i de ayrı ayrı kontrol edebilirsek ozaman 16f84 ile de aynı uyuglama yapılabilinir hatta 12f675 ile de yapılabilinir diye düşünüyorum tek sorun nasıl bir komut lazım pause for next ile bişiler yapılmalı örnek arama aşamasındayım...ledleri pic-akım sınırlayıcı lm317'li bir devre ve led şeklinde sürmeyi deniyeceğim bakalım olacak mı_? iyi çalışmalar....


Sanırım linkteki gibi bir çalışma yapmak istiyorsun.
Bunu incele birde  arslan74 hocamızın projesine bak.
http://www.biltek.tubitak.gov.tr/gelisim/elektronik/dosyalar/30/rgb_termometre.pdf
İmkanın sınırlarını görmek için imkansızı denemek lazım.                                                             Fatih Sultan Mehmet

cetinkaya

Alıntı YapSanırım linkteki gibi bir çalışma yapmak istiyorsun.
Bunu incele birde  arslan74 hocamızın projesine bak.
http://www.biltek.tubitak.gov.tr/gelisim/elektronik/dosyalar/30/rgb_termometre.pdf

hocam linkteki rgb ledi 4 bacakli benim elimdeki rgb ledleri 6 bacakli onlari nasil baglicam ? örnek proje varmi