breadboard üzerinde devreyi çalıştırmada sorun

Başlatan gracon, 28 Ekim 2013, 17:46:59

gracon

Öncelikle merhaba. Pic üzerine uygulama yapmaya yeni başladım. Picbasicpro ile yazdığım kodlar proteus'ta kurduğum devrede çalışıyor.Fakat breadboard üzerine kurunca çalışmıyor. En basit bir uygulama dahi çalışmıyor( Pic'in bir bacağına bağlı ledi yakma). Devreye elektriği 9V 1A adaptör ile veriyorum. 7805 kullanarak Pic'i besliyorum. Pic'in osilatör bacaklarını doğru bağladım(4 Mhz Krystal ve 2 adet 22pf Kon.). Ölçü aletiyle ölçüğümde 7805'in çıkışında 5V var. Pic'in besleme bacaklarında 5V var. Yani pic'e elektrik geliyor. Fakat led'i yakamıyor. Sorunun pic'te olabileceğini düşünerek başka bir pic'te de kodları yükleyerek denedim. Pic'e kodları bir usb pic programlayıcı ile yazıyorum. Programlayıcı hex dosyasını pic'e yazarken veri gönderdiğine dair led'i yanıyor. Program hata vermiyor.  (kullandığım pic modeli 16F84A)
Ne yaptıysam sorunu bulamadım. Bu konuda yardımcı olur musunuz? 

PicBasicPro Kodlar

trisa=%00000000
trisb=%00000000
portb=0
portb.1=1
end

forsa1975

Problem Yaşadıklarım:
Besleme devresi: çıkışta 1000 MF kondansator olmaması ve pic besleme ayaklarına yakın 100nf kondansator.
Kristal : bazen 27 pf kondansatörler sorun çıkarıyor.  Kondansatorsuz çalıştırıyorum. Kristalin kararsızlıklara sebep olduğunu başka kristal taktığımda normal olduğunu gördüm.
Reset pini: 4.7K ile +5V a bağlamayı unutmamak gerekiyor.

Kodun başına tanımları yazmanızda fayda var.
Kod bir kez çalışıyor. Ve duruyor. Bunun yerine sürekli komutu uygularsan döngü içinde şöyle bir avantajın olabilir. Devrende bir temassızlık vb problem varsa kod çalışırken sen bir yerlere dokunduğunda bazen ters giden şeyler düzelebiliyor ve program çalışıyor. Bu sayede sorunun nerde olduğunu görebilirsin. Örneğin kristale dokunmak bile bazen işi çözebiliyor.

Kolay gelsin.

@ DEVICE pic16F84A   
@ DEVICE pic16F84A, WDT_on
@ DEVICE pic16F84A, PWRT_ON
@ DEVICE pic16F84A, XT_OSC


trisa=%00000000
trisb=%00000000
portb=0
porta=0
basla:
portb.1=1
goto basla
end


ayhani

Alıntı yapılan: gracon - 28 Ekim 2013, 17:46:59

PicBasicPro Kodlar

trisa=%00000000
trisb=%00000000
portb=0
portb.1=1
end

Ben picbasic pro kullanmıyorum ama senin programda delay-gecikmeler nerede? Delay olmazsa proteusun simülasyon hızınan dolayı belki sen programı çalışıyormuş gibi görürüsün fakat gerçekte RB.0 pini senin gözünün göremeyeceği hızda yakıp söndürülmeye çalışır. Yani kısaca programın çalışmaz.
Ayrıca kodlarının bir döngü içinde olması gerekmez mi?
En iyi bildiğim şey hiçbir şey bilmediğimdir.

gracon

İlginiz için teşekkürler. Önerdiğiniz kodları kullandım. Fakat devre yine çalışmadı. Sorun osilatör devresinden kaynaklanıyormuş. Pic16f84A yerine pic16f628 ve dahili osilatör kullandım. Board üzerindeki devre çalıştı. Bundan sonra 628 üzerinden çalışmalarıma devam edeceğim.