avatar_fokas

Reed Röle ilavesi

Başlatan fokas, 12 Haziran 2013, 09:31:14

fokas

Merhaba sayın hocalarım ETE hocamın derslerinden (Bazı harfler küçük çıkmıştır pbp da hepsi büyük)


'****************************************************************
'*  Name    : HAVAYA YAZI                                      *
'*  Author  : TEMEL  BALKI]                    *
'*  Notice  : Copyright (c) 2013 [select VIEW...EDITOR OPTIONS] *
'*          : All Rights Reserved                               *
'*  Date    : 10.06.2013                                        *
'*  Version : 1.0                                               *
'*  Notes   : REED RÖLE İLAVE   -16F84A                                               *
'*          :                                                   *
'****************************************************************   
TRISA=1
TRISB=0
PORTA=0
PORTB=0
  symbol REED=PORTA.1
 
if REED=1 then
goto TEMEL

  else
  endif
 
  TEMEL:
                     'TTTTT
  PORTB.0 =1
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =0
 
  pause 1
 
  PORTB.0 =1
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =0
 
  pause 1
 
  PORTB.0 =1
  PORTB.1 =1
  PORTB.2 =1
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =1
  PORTB.6 =1
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =1
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =0
 
  pause 1
 
  PORTB.0 =1
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =0
 
  pause 1
              'EEEE
  PORTB.0 =1
  PORTB.1 =1
  PORTB.2 =1
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =1
  PORTB.6 =1
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =1
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
   
  pause 1
 
  PORTB.0 =1
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =1
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =1
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
 
  pause 1
              'MMMMMMM
  PORTB.0 =1
  PORTB.1 =1
  PORTB.2 =1
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =1
  PORTB.6 =1
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =0
  PORTB.1 =1
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =0
 
  pause 1
 
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =1
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =0
  PORTB.1 =1
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =0
 
  pause 1
 
  PORTB.0 =1
  PORTB.1 =1
  PORTB.2 =1
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =1
  PORTB.6 =1
  PORTB.7 =1
 
  pause 1
             'EEEEEEEEEEEEE
  PORTB.0 =1
  PORTB.1 =1
  PORTB.2 =1
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =1
  PORTB.6 =1
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =1
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =1
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =1
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =1
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
 
  pause 1   
   
  PORTB.0 =1          'LLLLLL
  PORTB.1 =1
  PORTB.2 =1
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =1
  PORTB.6 =1
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
   
  pause 1
 
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
       
  pause 1
                         'BOSLUK
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =0
 
  PAUSE 1
 
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =0
   
  pause 1
 
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =0
 
  pause 1
 
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =0
 
  pause 1
 
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =0
       
  pause 1
 
  PORTB.0 =1                    'BBBBBBB
  PORTB.1 =1
  PORTB.2 =1
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =1
  PORTB.6 =1
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =1
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =1
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =1
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =0
  PORTB.1 =1
  PORTB.2 =1
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =1
  PORTB.6 =1
  PORTB.7 =0
 
  pause 1
                'AAAAAAAA
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =1
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =1
  PORTB.6 =1
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =0
  PORTB.1 =1
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =1
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =0
 
  pause 1
 
  PORTB.0 =1
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =1
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =0
 
  pause 1
 
  PORTB.0 =0
  PORTB.1 =1
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =1
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =0
 
  pause 1
 
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =1
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =1
  PORTB.6 =1
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =1                'LLLLLLLL
  PORTB.1 =1
  PORTB.2 =1
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =1
  PORTB.6 =1
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
       
  pause 1
 
  PORTB.0 =1              'KKKKKKKK
  PORTB.1 =1
  PORTB.2 =1
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =1
  PORTB.6 =1
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
   
  pause 1
 
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =1
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =1
  PORTB.6 =0
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =0
  PORTB.1 =1
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =1
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =1
  PORTB.1 =0
  PORTB.2 =0
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
       
  pause 1
                    'IIIIIIIIII
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =1
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
 
  pause 1
 
  PORTB.0 =1
  PORTB.1 =0
  PORTB.2 =1
  PORTB.3 =1
  PORTB.4 =1
  PORTB.5 =1
  PORTB.6 =1
  PORTB.7 =1
 
  PAUSE 1
 
  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =1
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1
 
         
 
  goto    TEMEL
  end

buraya kader geldim yazıyı yazdırıyorum fakat devirden dolayı sabit değil motoru devir ayarlı yaptım ama yine olmadı .Bende röle ilave ettim (pull down) ama motor dönmeden çalışmaya başlıyor yani edememişim .Birde mili saniyenin dişında mikro saniye olarak ayarlama şansımız varmıdır ..
ETE hocanın derslerinde 3. derse kadar geldim. Yardımlarınızı acizane talep ediyorum..

M26

PAUSEUS   yazarsanız mikrosaniye bekler

tuncay37

  PORTB.0 =0
  PORTB.1 =0
  PORTB.2 =1
  PORTB.3 =0
  PORTB.4 =0
  PORTB.5 =0
  PORTB.6 =0
  PORTB.7 =1

bu şekilde uzun uzun yazmak yerine
portb=10000100
yazabilirsin.

fokas

M26 teşekkürler PAUSEUS Yerine PAUSES yazmışım
Tuncay 37 teşekkürler.

MS_59

Alıntı yapılan: tuncay37 - 12 Haziran 2013, 13:35:56

bu şekilde uzun uzun yazmak yerine
portb=10000100
yazabilirsin.
PORTB=%10000100  bu şekilde olacak
mehmet

tuncay37

evet yanlış yazmışım. önüne işaret koymadan yazarsak decimal olur.

pwm.c

daha önce sana CCS C ile program hazırlamıştım:
http://etepic.com/index.php/topic,1141.msg11803.html
devre ne oldu, çalışmadı mı?

if REED=1 then
goto TEMEL

  else
  endif

burada mantık hatası yapmışın. REED 1 olsada, 0 olsada ana döngüye gider.
bence yazı döngüsüne GOSUB ile yönlendir:

TEST:
if REED=1 then GOSUB TEMEL
GOTO TEST

TEMEL:
'...
'yazı karakterleri
'...
RETURN

_/\/\/\_ -[ı- -ı>|- -|ı|ı|ı- -ı< -||- -l[]l-

fokas

#7
Hocam  o ilk yaptığım devreydi kodlar alıntı idi ben basic öğreniyorum .Temamen ögrendiklerimle yapayım dedim ama beceremedik.
Siz değerli hacalardan yardım alalım dedik.Hazırladıgınız kodlar çalıştı.Teşekkürler

fokas

#8
Sayın pwm. c hocam
------------------------------------

TRISA=1
TRISB=0
PORTA=0
PORTB=0

  symbol REED=PORTA.1
 
  BASLA:
 
if REED=1 then     
  gosub temel
  goto basla
 
  TEMEL:
                     'TTTTT
  PORTB=%0000001
 
  pauseus 560
 
  PORTB=%0000001
 
   pauseus 560
 
  PORTB=%1111111
           
   pauseus 560
 
  PORTB=%0000001
 
   pauseus 560
 
  PORTB=%0000001
 
   pauseus 560
              'EEEE
  PORTB=%1111111
 
   pauseus 560
 
  PORTB=%1001001
   
   pauseus 560
 
  PORTB=%1001001
 
   pauseus 560
 
  PORTB=%1001001
 
   pauseus 560
 
  PORTB=%1001001
 
   pauseus 560
                        'MMMMMMM
  PORTB=%1111111

   pauseus 560
 
  PORTB=%0000001
 
   pauseus 560
 
  PORTB=%0000110
   
   pauseus 560
 
  PORTB=%0000001
 
   pauseus 560
   
  PORTB=%1111111

   pauseus 560
                         'EEEEEEEEEEEEE
  PORTB=%1111111
 
   pauseus 560
 
  PORTB=%1001001
   
   pauseus 560
 
  PORTB=%1001001
 
   pauseus 560
 
  PORTB=%1001001
 
   pauseus 560
 
  PORTB=%1001001 
 
   pauseus 560
   
  PORTB=%1111111          'LLLLLLL

   pauseus 560
 
  PORTB=%1000000
   
   pauseus 560
 
  PORTB=%1000000
 
   pauseus 560
 
  PORTB=%1000000
 
   pauseus 560
   
  PORTB=%1000000
       
   pauseus 560
                         'BOSLUK
  PORTB=%0000000
 
   pauseus 560
 
  PORTB=%0000000
   
   pauseus 560
 
  PORTB=%0000000
 
   pauseus 560
 
  PORTB=%0000000
 
   pauseus 560
 
  PORTB=%0000000
 
       
   pauseus 560
 
  PORTB=%1111111               'BBBBBBBBBBBB
 
   pauseus 560
 
  PORTB=%1001001
 
   pauseus 560
 
  PORTB=%1001001
 
   pauseus 560
 
  PORTB=%1001001
 
   pauseus 560
 
  PORTB=%01111110
 
   pauseus 560
                'AAAAAAAA
  PORTB=%1111110
 
   pauseus 560
 
  PORTB=%0001001
 
   pauseus 560
 
  PORTB=%0001001
 
   pauseus 560
 
  PORTB=%0001001
 
   pauseus 560
 
  PORTB=%0111110
 
   pauseus 560
  PORTB=%1111111          'LLLLLLL

   pauseus 560
 
  PORTB=%1000000
   
   pauseus 560
 
  PORTB=%1000000
 
   pauseus 560
 
  PORTB=%1000000
 
   pauseus 560
 
  PORTB=%1000000
 
   pauseus 560
 
  PORTB=%1111111               'KKKKKK
 
   pauseus 560
 
  PORTB=%0001000

   
   pauseus 560
 
  PORTB=%0010100
 
   pauseus 560
 
  PORTB=%0100010
 
   pauseus 560
 
  PORTB=%1000001
       
  pauseus 560
                    'IIIIIIIIII
  PORTB=%0000000
 
   pauseus 560
 
  PORTB=%01000100
 
   pauseus 560
 
  PORTB=%1111101
 
  pauseus 560
         
  PORTB=%01000100
 
  pauseus 560
 
  PORTB=%0000000
 
  pause 160
 
return

---------------
nerde yanlış yapıyorum .Havaya yazı reed röle startı ile başlayacak ve 1 kez yanacaklar .

pwm.c

#9
BASLA:

if REED=1 then     
  gosub temel
  goto basla


burayı şu şekilde yaz:

BASLA:

if REED=1 then gosub temel
  goto basla

gosub komutu then'in hemen yanında olmalı.

porta.1 giriş yapmak için  TRISA=2 değeri vermelisin.

program başınada config ayarlarını ekle:
@ Device pic16F84a, PROTECT_OFF , WDT_OFF , XT_OSC , PWRT_OFF 
TRISA=2
TRISB=0
PORTA=0
PORTB=0
  symbol REED=PORTA.1
  BASLA:
if REED=1 then gosub temel
  goto basla
  TEMEL:
                     'TTTTT
  PORTB=%0000001
  pauseus 560
  PORTB=%0000001
   pauseus 560
  PORTB=%1111111           
   pauseus 560
  PORTB=%0000001
   pauseus 560
  PORTB=%0000001
   pauseus 560
              'EEEE
  PORTB=%1111111
   pauseus 560
  PORTB=%1001001 
   pauseus 560
  PORTB=%1001001
   pauseus 560
  PORTB=%1001001
    pauseus 560
   PORTB=%1001001
    pauseus 560
                        'MMMMMMM
  PORTB=%1111111
   pauseus 560
   PORTB=%0000001
    pauseus 560
   PORTB=%0000110
      pauseus 560
   PORTB=%0000001
    pauseus 560
     PORTB=%1111111
    pauseus 560
                         'EEEEEEEEEEEEE
  PORTB=%1111111
    pauseus 560
   PORTB=%1001001
      pauseus 560
   PORTB=%1001001
   pauseus 560
   PORTB=%1001001
    pauseus 560
   PORTB=%1001001
    pauseus 560
     PORTB=%1111111          'LLLLLLL
   pauseus 560
   PORTB=%1000000
      pauseus 560
   PORTB=%1000000
    pauseus 560
   PORTB=%1000000
    pauseus 560
     PORTB=%1000000
     pauseus 560
                         'BOSLUK
  PORTB=%0000000
    pauseus 560
   PORTB=%0000000
      pauseus 560
   PORTB=%0000000
   pauseus 560
   PORTB=%0000000
    pauseus 560
   PORTB=%0000000
   pauseus 560
   PORTB=%1111111               'BBBBBBBBBBBB
    pauseus 560
   PORTB=%1001001
    pauseus 560
   PORTB=%1001001
    pauseus 560
   PORTB=%1001001
    pauseus 560
   PORTB=%01111110
    pauseus 560
                'AAAAAAAA
  PORTB=%1111110
    pauseus 560
   PORTB=%0001001
   pauseus 560
   PORTB=%0001001
    pauseus 560
   PORTB=%0001001
   pauseus 560
   PORTB=%0111110
    pauseus 560
  PORTB=%1111111          'LLLLLLL
   pauseus 560
   PORTB=%1000000
      pauseus 560
   PORTB=%1000000
    pauseus 560
   PORTB=%1000000
   pauseus 560
   PORTB=%1000000
    pauseus 560
   PORTB=%1111111               'KKKKKK
    pauseus 560
   PORTB=%0001000
   pauseus 560
   PORTB=%0010100
    pauseus 560
   PORTB=%0100010
    pauseus 560
   PORTB=%1000001
         pauseus 560
                    'IIIIIIIIII
  PORTB=%0000000
   pauseus 560
   PORTB=%01000100
    pauseus 560
   PORTB=%1111101
   pauseus 560
     PORTB=%01000100
   pauseus 560
   PORTB=%0000000
   pause 160
return
_/\/\/\_ -[ı- -ı>|- -|ı|ı|ı- -ı< -||- -l[]l-

fokas

#10
Hocam teşekkürler oldu.

Powered by EzPortal