2 tane pic16f84a ile 9 katlı asansör devresi

Başlatan mstfrnci, 26 Aralık 2013, 22:33:19

mstfrnci

Arkadaşlar 2 tane pic 16f84 entegresi ile 9 katlı asansör devresi yapmam gerekiyorda,kodlarını yazıyorum yanlıs yapıyorum kodlamadan anlayan var ise yardımcı olabilirmi?Devre şeması ekte var yardımcı olursanız cok makbule gececek simdiden sagolun
http://u1312.hizliresim.com/1j/u/vx56u.png

OG

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

mstfrnci

kodu yazamıyorumki 2 pic icinde ayrı ayrı kod yazmam gerekiyor ama hata veriyor

OG

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

mstfrnci

Aslında sistemin calısması soyle soldaki butonlardan her biri 1 katı gösteriyor,butonlardan birine bastıgımda diger picteki displayde hangi butonu kacıncı kat olarak tanıttıysam onun yazması gerekiyor örnek vereyim 3. butona bastıysam lcd de ASANSOR KAT 3TE  gibi bisi yazdırmam gerekiyor


TRISA=%11111
TRISB=%11111111
DEFINE LCD_DREG   PORTB
DEFINE LCD_DBIT   4
DEFINE LCD_EREG   PORTB
DEFINE LCD_EBIT   3
DEFINE LCD_RSREG PORTB
DEFINE LCD_RSBIT 1
DEFINE LCD_BITS    4
DEFINE LCD_LINES 2
KAT1 VAR PORTA.3
KAT2 VAR PORTB.0
KAT3 VAR PORTB.1
KAT4 VAR PORTB.2
KAT5 VAR PORTB.3
KAT6 VAR PORTB.4
KAT7 VAR PORTB.5
KAT8 VAR PORTB.6
KAT9 VAR PORTB.7


bu kadar yazıyorum ilerisinden sonra karıstırıyorum galiba hata veriyor

pwm.c

#5
yanlış yoldasın.
şu zamanda 16f84a kullanan artık yok. bunlar taşdevri aygıtı. bence başka bir entegre kullan derim.
ayrıca, devre şemasında butonları hatalı bağlamışın haberin olsun.
_/\/\/\_ -[ı- -ı>|- -|ı|ı|ı- -ı< -||- -l[]l-

OG

@mstfrnci
ETE Hocanın dersleri var. Onlara bakman gerek.
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

Andromeda

PicBasic de serin ve serout komutlarını bir inceleyin..1 adet pinden seri bilgi gönderip alır.
veya;
diyotlarla kodlama yaparak tuşlar 4 bit ile 1. pic e gelir, sonra 4 bit ile çıkar ve 2. pic e aynı şekilde 4 bit ile girer.
mesela 4. buton 0100 ile tanımlanır ..
" Tanrı, iradesini hakim kılmak için yeryüzündeki iyi insanları kullanır, yeryüzündeki kötü insanlar ise kendi iradelerini hakim kılmak için Tanrı'yı kullanırlar." ..." Tanrı'dan mesaj gelmiyor, biz Tanrı'ya mesaj gönderiyoruz"

mehmet

Bu da acil ödevlerden biri galiba...

@mstfrnci vediğiniz kodlar sadece tanımlamalar. Öncesi ve sonrası yok mu?
Olan olmuştur,
olacak olan da olmuştur.
Olacak bir şey yoktur.
---------------------------------------------
http://www.mehmetbilgi.net.tr

mstfrnci

Yaptıgınız yorumlardan dolayı teşekkür ederim kodun devamı yok benim yazmam gerekiyor ama yazamıyorum en iyisi dedigniz gibi ders ETE hocanın derslerine bakayım

ercan_t


pwm.c arkadaşın dediği gibi, butonları yanlış bağlamışsın şematik yanlış,
butona bassanda basmasanda 1 alırsın.


mstfrnci

arkadaslar ben ugrastım cizimi yaptım kodları yazdım verici devresinde kodlarım düzgün fakat alıcı devresinde display'e rakamları cıkartamıyorum tekrar yardımcı olabilirmisiniz?
kodlarım söyle
VERİCİ DEVRESİNİN KODLARI:

TRISA=%11110
TRISB=%11111111
PORTA=0
PORTB=0
BUT1 VAR PORTA.4
BUT2 VAR PORTB.0
BUT3 VAR PORTB.1
BUT4 VAR PORTB.2
BUT5 VAR PORTB.3
BUT6 VAR PORTB.4
BUT7 VAR PORTB.5
BUT8 VAR PORTB.6
BUT9 VAR PORTB.7
CIKIS VAR PORTA.0
VERICI VAR BYTE
VERICI=0

x VAR BYTE   
BASLA:


IF BUT1=0 THEN
       WHILE  BUT1=0
       WEND
       VERICI=21
       GOSUB GONDER
ENDIF       
IF BUT2=0 THEN
       WHILE BUT2=0
       WEND
       VERICI=22
       GOSUB GONDER
ENDIF       
IF BUT3=0 THEN
       WHILE BUT3=0
       WEND
       VERICI=23
       GOSUB GONDER
ENDIF
       
IF BUT4=0 THEN
       WHILE BUT4=0
       WEND
       VERICI=24
       GOSUB GONDER
ENDIF       
       
IF BUT5=0 THEN
       WHILE BUT5=0
       WEND
       VERICI=25
       GOSUB GONDER
ENDIF       
       
IF BUT6=0 THEN
       WHILE BUT6=0
       WEND
       VERICI=26
       GOSUB GONDER
ENDIF
       
IF BUT7=0 THEN
       WHILE BUT7=0
       WEND
       VERICI=27
       GOSUB GONDER
ENDIF
       
IF BUT8=0 THEN
       WHILE BUT8=0
       WEND
       VERICI=28
       GOSUB GONDER
ENDIF
       
IF BUT9=0 THEN
       WHILE BUT9=0
       WEND     
       VERICI=29
       GOSUB GONDER
         
ENDIF

GOTO BASLA                                               

GONDER:
SEROUT2 CIKIS,396,["M","S","T","F",VERICI]
SEROUT2 CIKIS,396,["M","S","T","F",VERICI]


RETURN
END





ALICI DEVRESİ KODLARI :
TRISA=255
TRISB=0
PORTA=0
PORTB=0
ALICI VAR PORTA.0
SAYI VAR BYTE
Y VAR BYTE
Y=0

SAYI[0]=$7E
SAYI[1]=$0C
SAYI[2]=$B6
SAYI[3]=$9E
SAYI[4]=$CC
SAYI[5]=$DA
SAYI[6]=$FA
SAYI[7]=$0E
SAYI[8]=$FE
SAYI[9]=$DE


BASLA:

SERIN2 PORTA.0,396,[WAIT("MSTF"),ALICI]

   IF ALICI=21 THEN
    SAYI[1]= $0C
   ENDIF
   
   IF ALICI=22 THEN
   SAYI[2]=$B6
   ENDIF

   IF ALICI=23 THEN
   SAYI[2]=$B6
   ENDIF

   IF ALICI=24 THEN
   SAYI[4]=$CC
   ENDIF

   IF ALICI=25 THEN
   SAYI[5]=$DA
   ENDIF

   IF ALICI=26 THEN
   SAYI[6]=$FA
   ENDIF
   
   IF ALICI=27 THEN
   SAYI[7]=$0E
   ENDIF

      IF ALICI=28 THEN
   SAYI[8]=$FE
   ENDIF

    IF ALICI=29 THEN
   SAYI[9]=$DE

   ENDIF




GOTO BASLA
END


Devrenin calısması ise hangi butona basarsam displaydede o sayıyı görmem gerekiyor mesela kat:1 'e basınca displayde 1 yazması lazım fakat alıcı devresinden displaye aktarmada bi sıkıntı var gibi anlayanlar bi kodları gözden geciripte yardım ederse cok makbule gececek,simdiden teşekkür ederim

devre resmi burada : http://u1312.hizliresim.com/1j/w/vyyvj.png

Maxim

yukarıda da yazmışlar
tekrar yazalım "BUTONLAR YANLIŞ BAĞLI"

mstfrnci

#13
Butonlarda yanlıs olmaması lazım derste yaptıgımız örneklerde sürekli bu sekilde baglıyoruz sorunsuz calısıyor fakat bu 7 seg. displayi calıstıramıyorum kodlarda bir sorun var gibi,devreyi yanlıs yapmısım son yazdıgım cevapta dogru olan devreye bakabilirsiniz.

MCansız

 Birincisi pic16f84 entegre değil mikrodenetleyici öncelikle bunun farkında olun size bunu öğreten hocalara ne demeli ?  Buton dirençleri pull up yapılmış butona basınca portlar sıfırlanır direç değerleri 10k-4.7k olmalı bunu düzeltin bu hariç yazılımda ve donanımda sıkıntı yok  devrenin çalışması gerek eger yazılım ve isis dosyalarını paylaşırsanız sorun daha kolay bulunur

Belli ki PIC konusunda birşey bilmiyorsunuz önce ders alın ETE nin dersleri size fazlasıyla yeter sonrası basit.