pıc 16f84 yardım

Başlatan yarar, 09 Aralık 2005, 22:13:41

yarar

selam aleykum
pıc programlama konusunda acemiyim  basit bir devreye ihtiyacım var
yardımlarınız için cok teşekkürler
pic 16F84a

iş akış şeması

1-   buton
2 -  buton basılımı
3 -  hayır  1 satıra  don
4 -  evet   5 satıra gec
5 -  1. role aç
6 -  2 saniye bekle
7 -  1. role kapat
8 -  iki snaiye bekle  
9 -  2. role aç  
10-  iki saniye bekle
11-  2. role kapat
12-  iki saniye bekle
13-  3. role aç
14-  iki saniye bekle
15-  3. role kapat
16-  iki saniye bekle
17-  4. role aç
18-  iki saniye bekle
19-  4. role kapat
20-   1 satıra geridon  
işlem sırasında butona bir den falzla basılırsa sorun olurmu ?

sevgiler  yarar

XX_CİHAN_XX

Butona basıldıktan sonra araya epey bır bekleme gırıyor.Dolayısıyla hiç bir sorun olmaz.Ama istersen butona basıldımı evet ise 5. satıra gec dıyorsun ya işte o 5. satıra birde buton bırakıldı mı sorusu ekleyebılırsın.Eger butondan parmak cekıldıyse 1. roleyı cektırıp programa devam edebılırsın.Ama suankı halıylede sorunsuz calısır.
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.

yarar

kodlar konusunda  yardım ederseniz sevinirim

bayramonur

Akış diyagramını çıkartmışşın zaten.Program yazmak en kolay iş.Yaptığın devre de zaten başlangıç seviyesinde çok karmaşık bir program yazmayacaksın.Kendin yazmayı dene takıldığın meselelerde biz yardımcı oluruz.Bu programı yazman sana daha yardımcı olacaktır.Picbasic ile ilgili makalelerden tut ebooklara hatta hazırda yazılmış kodlara kadar birçok bilgiyi bu forumda bulabilirsin biraz araştırıcı olalım.

yarar

BAYRAMONUR bey pogramı yazmayı denedim ama hata veriyo bana bir başlangıç lazım kod  yazma konusunda cok acemiyim yardım edersen sevinirm  
sevgiler yarar

XX_CİHAN_XX

Alıntı yapılan: "yarar"BAYRAMONUR bey pogramı yazmayı denedim ama hata veriyo bana bir başlangıç lazım kod  yazma konusunda cok acemiyim yardım edersen sevinirm  
sevgiler yarar
Bence yazdıgın hata veren programı buraya koy bızde nerde hata yaptıgını ve nasıl duzeltecegını gosterelım hem programın calısır hemde sen nerde hata yaptıgını ogrenmıs olursun.
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.

OG

Arkadaşlar haklı ancak henüz işin başında ve birşey bilmezken bazen çok acil yardım gerekir ve çaresiz kalırsınız. Böyle durumlarda el uzatmak lazım. Bu durumu bende yaşamıştım ve sevgili mmengi bana çok yardımcı olmuştu. Bunu unutmuyorum ve kendisine çok duacıyım.

@yarar

16F628A kullanıp portları aşağıdaki gibi ayarlıyorsun. Buton için PORTB.0 ile +5V arasına 2-3K lık direnç bağlıyorsun ve portb.0 ile şase yani - arasına bir buton bağlıyorsun.
Role çıkışları için de ilgili portlara bir direnç (2-3K) ile NPN bir transistörün bazına veriyorsun. Emetörü şase yani - voltaja bağlıyorsun. Kollektör ile +12V arasına röle bağlıyorsun. Rölelere ters diyot bağlıyorsun.

BUTON  PORTB.0
ROLE1  PORTB.1
ROLE2  PORTB.2
ROLE3  PORTB.3
ROLE4  PORTB.4

Butona bastıktan sonra bahsettiğin işleri sıra ile yapıyor. Bu arada butona tekrar basmanın bir önemi yok çünkü o işler bitmeden butona tekrar bakmıyor.

Hex dosya da aşağıdaki gibi. Herhangi bir osc bağlantısı yapmıyorsun, dahili osc kullanıyor.

:100000002828A301A200FF30A207031CA307031C9A
:1000100023280330A100DF300F200328A101E83E90
:10002000A000A109FC30031C1828A00703181528FC
:10003000A0076400A10F152820181E28A01C222844
:1000400000002228080083130313831264000800B1
:1000500007309F00831685010130860083128501D9
:1000600086013228640006183728382838283228B4
:1000700064300120640006183F28402840283228B8
:1000800086148316861083120730A300D030022016
:1000900086108316861083120730A300D03002200A
:1000A00006158316061183120730A300D0300220F4
:1000B00006118316061183120730A300D0300220E8
:1000C00086158316861183120730A300D0300220D4
:1000D00086118316861183120730A300D0300220C8
:1000E00006168316061283120730A300D0300220B2
:0E00F0000612831606128312322863007D2842
:02400E00543F1D
:00000001FF


FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

XX_CİHAN_XX

Cok basit bir program olsada bence ogretıcı olması acısından program kodlarınıda vermelısın.Hani derler ya yaptın bir iyilik bari tam yap hesabı :lol:
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.

kalman

@yarar
istersen core chart diye program var derlemede yapıyor bir denemeni tavsiye ederim.
Boardda arama yaparsan bulursun

OG

Alıntı yapılan: "XX_CİHAN_XX"Cok basit bir program olsada bence ogretıcı olması acısından program kodlarınıda vermelısın.Hani derler ya yaptın bir iyilik bari tam yap hesabı :lol:

Haklısın da arkadaş kodları öğrenmek değil acil işini çözmek için istemiş. Bu iş için pbp'da yazılacak olanlar kod bile sayılmaz. high, pause, low diye gidiyor işte.

@	device  pic16F628A, intrc_osc_noclkout, wdt_on, pwrt_on, mclr_off, protect_off


CMCON = 7 


TRISA = %00000000
TRISB = %00000001

BUTON var PORTB.0
ROLE1 var PORTB.1
ROLE2 var PORTB.2
ROLE3 var PORTB.3
ROLE4 var PORTB.4

PORTA=%00000000
PORTB=%00000000
Goto Basla

Basla:
      
Butonkont:                       
    if BUTON=0 THEN 
    goto Butonkont2
    else
    GOTO Butonkont
    endif
Butonkont2:
    pause 100
    if BUTON=0 THEN 
    goto Rolecek
    else 
    goto Butonkont
    endif
    
Rolecek:
    high ROLE1
    PAUSE 2000
    LOW ROLE1
    PAUSE 2000
    HIGH ROLE2
    PAUSE 2000
    LOW ROLE2
    PAUSE 2000
    high ROLE3
    PAUSE 2000
    LOW ROLE3
    PAUSE 2000
    high ROLE4
    PAUSE 2000
    LOW ROLE4
    
    goto Butonkont
    
    end
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

stlg

Servgili yarar
Arkadasım sen oncelikle asagıdaki sırayı takip etmelisin
basit bir pıcın 16f84 donanımını ogrenerek basla
sana picproje ve antrak turu yerler yardımcı olur
daha sonra programını yazmak icin bir editor ve derleyici mplab
yazmaya basladıysan proteus turu simulasyon yapabilecegin bir ortam
bu sekilde calısmalara baslarsan yavas yavas programlarının geliştigini gorebilirsin bizlerde sana ilerlemende yardımcı oluruz kolay gelsin

                ALLAHA EMANET OLUNUZ
ALLAHA EMANET OLUNUZ Hoştur bana senden gelen,  Ya gonca gül yahut diken,  Ya kaftandır yahut kefen,  Kereminde hoş lütfunda hoş.

yarar

Mesaja cevap veren arkadaşlar ilginiz için çok teşekkür ederim

Sayın OG bey mesajda 16F628A yazmıışınız bu 16F84A pıc karşılıgımıdır ? yoksa 16F628A farklı bir pıc midir

pic'i programlamak için kullandıgım devre Protopic lite  yazılım ise
P16PRO

deneme amaclı internetten buldugum led yak pic16f84 için dosyalar buldum bunları P16PRO ile pic  yuklemek istedim
" programming  failed  0 2801 3FFF" seklinde hata veriyo P16PRO  ayarları ile ilgili dokuman bulabilirmiyim

OG

@yarar kardeş
628 seçmemein sebebi pic osilatörü ile uğraşmayasınız diye. 84' de dahili osilatör yok, kristal ile hazırlamanız lazım. Zaten 628 ile 84 aynı fiyat. 628A yazdım çünkü şu anda piyasada daha çok A serisi var. 628/04 falan yazsam belki burada takılır ararsın diye. Olurmu olmazmı gibi sorularla uğraşmayasın diye. Tak yükle çalıştır.

Alıntı Yappic'i programlamak için kullandıgım devre Protopic lite yazılım ise
P16PRO

Protopic  hakkında hiç bilgim yok. Bende bir "willem" bir de "infinity" var. Willem için ICPROG, Infinit için kendi yazılımını kullanıyorum. Bana yetiyor bunlar. Zaten büyük işleri yapabilecek bilgim yok.
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.