YARDIM LAZIM

Başlatan ulasserhat, 06 Eylül 2010, 14:55:49

ulasserhat

12 KANAL RF PROGRAMINI TERLSEME DEĞİLDE HER BUTON İÇİN FARKLI ANİMASYON YAPMAYA ÇALIŞIYORUM YARDIM LAZIM TEŞEKKÜTR
DEFINE OSC 4
PORTA=0
TRISA=%00000001
TRISB=0

BILGI var BYTE
SYMBOL VERIIN=PORTA.0
PORTB=0
porta=0
MAIN: 
   BILGI=0             
   serIN2 VERIIN,813,[WAIT ("ETE"),BILGI]
   SELECT CASE BILGI
   CASE 255
   GOTO MAIN
   CASE 254 
   TOGGLE PORTB.0
   CASE 253
   TOGGLE PORTB.1
   CASE 251
   TOGGLE PORTB.2
   CASE 247
   TOGGLE PORTB.3
   CASE 239
   TOGGLE PORTB.4
   CASE 223
   TOGGLE PORTB.5
   CASE 191
   TOGGLE PORTB.6
   CASE 127
   toggle portb.7
   case 28
   toggle porta.1
   case 26
   toggle porta.2
   case 22
   toggle porta.3
   case 14
   PORTA.4=1-PORTA.4
   
   END SELECT

   PAUSE 200
GOTO MAIN       
           
           
             
END
               
   DEFINE OSC 4
TRISA=%00011110
TRISB=%11111111
OPTION_REG.7=0
BILGI VAR BYTE


SYMBOL VERIOUT=PORTA.0

MAIN:      BILGI=255
           GOSUB PORTA_BAK
           IF PORTB<255 THEN
             BILGI=PORTB
               GOSUB VER
               while portb<255:wend
             ENDIF

            pause 10
            GOTO MAIN           
       

VER:
      serout2 VERIOUT,813,[REP$AA\5,REP$00\5,REP$FF\5]
      serout2 VERIOUT,813,["E","T","E",BILGI]
      serout2 VERIOUT,813,["E","T","E",BILGI]
      serout2 VERIOUT,813,["E","T","E",BILGI]
      serout2 VERIOUT,813,["E","T","E",BILGI]
      RETURN
     
PORTA_BAK:
       BILGI=PORTA & %00011110
       IF BILGI<30 THEN
         GOSUB VER
'         PAUSE 100
       ENDIF
       WHILE PORTA<30 : WEND
       RETURN 
END
               
                   

chailuck

HER NE KADARDA TEK MESAJLIK ÜYE ARKADAŞLARIMIZDAN OLSANDA
aradığını bulamamışsın sanırım ama
yardım istiyorsanız daha açıklayıcı yazmanız lazım müneccim değiliz sonuçta...
İmkanın sınırlarını görmek için imkansızı denemek lazım. (Fatih Sultan Mehmet)  Ayıplarını gördüğünüz komşuyu kınamayınız. Sırlarını açıklamayınız.Çünkü gördüğünüz bu sır size emanettir, emanete hıyanet kötü ve çirkin bir filldir. (Hacı Bayramı Veli )  meyve veren ağacın taşlanması çok hoş ;)

ulasserhat

Öncelikle teşekkürler;
Yukarıdaki program sadece 12 kanalı on/off yapıyor.
Benim amacım ise;hangi kanalın butonuna basarsam, o kanalda bağlı olan ledlerin,  oluşturduğum alt programlardaki animasyonları yapmasını sağlamak usart kesmesi yapmam lazım sanırım ama beceremedim.Yardımın olursa çok sevinirim...

chailuck

Alıntı yapılan: ulasserhat - 25 Eylül 2010, 16:34:44
Öncelikle teşekkürler;
Yukarıdaki program sadece 12 kanalı on/off yapıyor.
Benim amacım ise;hangi kanalın butonuna basarsam, o kanalda bağlı olan ledlerin,  oluşturduğum alt programlardaki animasyonları yapmasını sağlamak usart kesmesi yapmam lazım sanırım ama beceremedim.Yardımın olursa çok sevinirim...

arkadaşım bu oldukça basit sadeec biraz basic bilmek gerek,,

MAIN:
   BILGI=0             
   serIN2 VERIIN,813,[WAIT ("ETE"),BILGI]
   SELECT CASE BILGI ; bak burada bilginin durumuna bak diyor
   CASE 255 ; bilgi dec255 ise
   GOTO alt  ; alt programına git diyor gir gel de diyebilirsin gosub alt diyebilirsin yada senin animasyonu oluşturduğun biryere
   CASE 254 ; dec 254 ise
   ;TOGGLE PORTB.0  ; bunu illaki kullanmak zordunda değilsin ya portları kullanma animasyonunun olduğu alt programı çağır
   CASE 253 ; ve bu şekilde programa devam et select case işlemi hızlı yapılır yani bilgi durumunda değişiklik olduğunu kontrol edip gelmesi animasyonunda çok farkedilmeden halledeilebilecek bir iş..
   ;TOGGLE PORTB.1
İmkanın sınırlarını görmek için imkansızı denemek lazım. (Fatih Sultan Mehmet)  Ayıplarını gördüğünüz komşuyu kınamayınız. Sırlarını açıklamayınız.Çünkü gördüğünüz bu sır size emanettir, emanete hıyanet kötü ve çirkin bir filldir. (Hacı Bayramı Veli )  meyve veren ağacın taşlanması çok hoş ;)