Sırayla yakmak

Başlatan 90alper90, 18 Mart 2006, 20:51:00

90alper90

Şimdi bir buton olacak 4 led ilk başta hepsi sönük butona bastık 1 led yandı bir daha bastık 1 söndü 2 yandı böyle gidecek 4.led yanıkken sönecek ve program başa dönecek bu kodu nasıl yazarız

SpeedyX

bir sayac ve sayacın değerine göre çalışan bir select case rutini, butona her basılışta da sayacın değeri arttırılacak.

SpeedyX

şöyle birşey uydurdum, sanırım çalışır.

'INCLUDE "modedefs.bas"

@ DEVICE pic16F84
@ DEVICE pic16F84, WDT_off
@ DEVICE pic16F84, PWRT_ON
@ DEVICE pic16F84, PROTECT_OFF
@ DEVICE pic16F84, HS_OSC

Define osc 10

      PortA=0
      TrisA=%11111111
      PortB=0
      TrisB=%00000010

      DEFINE ledler PORTB
      SYMBOL buton =PORTA.0
      sayac var byte
      sayac2 var byte

main:
      while buton=0
      wend
      while buton=1
         pause 10
         sayac2=sayac2+1
         if sayac2>40 then
            sayac=sayac+1
            if sayac>4 then sayac=0
            Exit while
         end if
      wend

      Select Case sayac
       case 0  :  ledler=0
       case 1  :  ledler=1
       case 2  :  ledler=2
       case 3  :  ledler=4
       case 4  :  ledler=8
      End Select

      goto main

end

90alper90

Aseembling ederken hata veriyor

SpeedyX

Exit while kısmı doğru mu bilmiyorum, programı tam olarak pbp ye uyarlayamamış olabilirim ama genel mantık budur. nerede hata verdiğinide yazarsan...