pwm ile parlayarak sıra ile yanan ledler

Başlatan exper, 08 Şubat 2016, 21:44:15

exper

  arkadaşlar (PWM)li  0 dan artarak yanan ledler  ile  yürüyen ışık yapmak istedim
symbol leri  eşleştiremediim için istenilen porta hükmedemedim sembol leri nasıl eşleştirebilirim
kodlar aşağıda tşk....



Dim SURE As Word
   Dim I As Word
Symbol BIR = PORTB.5
Symbol IKI = PORTB.4
Symbol UC  = PORTB.3
Symbol DORT= PORTB.2
Symbol BES = PORTC.7
Symbol ALTI= PORTC.6
Symbol YEDI= PORTC.5
Symbol SEKIZ = PORTC.4
Symbol CIKIS  = PORTB
portb=0  : portc=0 : SURE =500

While 38=38 
             
        CIKIS = BIR 
gosub yak
         CIKIS = IKI
gosub yak
         CIKIS = UC
gosub yak
         CIKIS = DORT
gosub yak
         CIKIS = BES
gosub yak
         CIKIS = ALTI
gosub yak
         CIKIS = YEDI
gosub yak
         CIKIS = SEKIZ

portb=0  : portc=0
delayms 300

Wend                       
End 

yak:
               For I =1 To SURE
                      CIKIS =0 : DelayUS (SURE - I) 
                      CIKIS =1 : DelayUS I 
                Next
DelayMS 30
  return                           

mehmet

For döngüsü yerine if kullanınız. Tek sayıcınız olsun. Bu sayıcı her port için ayrı ayrı kontrol
edilir.
If den önce tümünü 1 yapın. Ortak zaman
sayıcısı ile portların zamanı karşılaştırılır. Eşit
durumunda ilgili port sıfır yapılır.
Ek:
Bu anlattığım soft pwm.  Ticari nedenlerden
ötürü kod paylaşılamayabilir. Kimseye kızmayın.
Olan olmuştur,
olacak olan da olmuştur.
Olacak bir şey yoktur.
---------------------------------------------
http://www.mehmetbilgi.net.tr
https://creativecommons.org/licenses/by/4.0/deed.tr "CC BY"

exper

      sıkıntı o değil   
               For I =1 To SURE
                      portb.5=0 : DelayUS (SURE - I) 
                      portb.5=1 : DelayUS I 
                Next

                For I =1 To SURE
                      portb.4=0 : DelayUS (SURE - I) 
                      portb.4=1 : DelayUS I 
                Next
şeklinde yapınca oluyor ama her led için ayrı ayrı yazmak yerine
bu şekilde yazıp

         CIKIS =portb.5   
     For I =1 To SURE
                      CIKIS =0 : DelayUS (SURE - I) 
                      CIKIS =1 : DelayUS I 
                Next
CIKIS adını her port için değiştirmek gerek ....