Pic İle Manyetik Fırlatıcı için yazılım Yardımı lazım...

Başlatan elektro41, 15 Nisan 2012, 21:21:15

elektro41

Merhaba arkadaşlar 16f877 ile yapılan fırlatıcı projem için yardımınıza ihtiyacım var.Öncelikle ben denetleyici için gereken programın mantığını anlatayım sizde rica etsem programı c de yazsanız çok iyi olur..

1) RA0 a bağlı  Butona basınca    RB0....RB7 ayrıca RC0....RC7 tüm pinleri lojik 1 olcak ve 20 saniye boyunca (delay_ms komutlu olcak) öyle kalıcak.
Ve bunu gösteren RA2 ye bağlı 1 led yanıcak 20 saniye bitince bu led söncek.

2) 20 saniye bittikten sonra o tüm pinler lojik 0 olcak ve bunu da gösteren RA3 e bağlı 2. bir led yansın.

3) En sonda bir RA1 e bağlı bir butona basınca   RD0....RD7 sırayla lojik1 olsun yani yürüyen ışık gibi ama tabi zaman ayarlı olsunlar birden değil sırayla yine delay_ms komutu olsun hepsinde. Tabi ki bunuda belirten RA4 e bağlı 3. led yansın.

Programı en başa almak içine mclr ucunu kullanıcam.

Buna göre programı yazacak arkadaşlara çok teşekkür ederim. Devre şemasını ben kendim çizdim onuda ekliyorum. Yardımcı olur size.
İyi Akşamlar...



gogge

Hevesini kırmak istemem ama, sana direk kod yazacak birisi olacağını sanmıyorum.

Ayrıca bahsettiğin yazılım temel düzeydeki programlama bilgisi ile yazılabilir.

Sen bir yerden başla. Biz sana yardım edelim.

Önemli olan balık tutumak.  8)

SpeedyX

Hacker olan adama bir yak söndür programı vız gelir, yanlış mı? ;)

skara1214

#include <16f877.h>   
#fuses HS,NOWDT//kristale göre hs yi xt olarak değiştir(eğer 4 Mhz kullanıyorsan yok kullanmıyorsan kalsın hs olarak)
#use delay (clock=20000000) //kristali buraya yaz
int i=0;
void main ( )
{
   while(true)
  {
   while(!input(pin_a0));
   output_b(0xff);
   output_c(0xff);
  delay_ms(20000);
     output_b(0x00);
   output_c(0x00);
  output_high(pin_a3);
while(!input(pin_a1));
for(i=i;i<=256;i*=2)
{
output_d(i);
delay_ms(1000);
}
output_high(pin_a4);
}
}
Herkes ölür ama herkes gerçekten yaşamaz

elektro41

Hepinize çok teşekkür ederim ama ben proteusta denedim ve;

Kodda düzeltilmesi gereken yerler:

1) RA0 a bağlı butona basınca B ve C portları lojik 1 oluyor ama bunu belirtmesi gereken  RA2 ye bağlı led yanmıyor.

2) RA1 e bağlı butona basınca RA4 e bağlı ledin yanması ve de tüm de portlarının birden değil sırayla lojik 1 olması gerekiyor, Yani RD0,RD1.RD2 şeklinde. (Yazılımdaki sorun ise birden lojik 0 oluyor,  Ve led yanmıyor.)

3) D portlarının her birine zamanlama koyulmamış bununda düzeltimesi gerekiyor.

Uğraştığınız için teşekkürler ama sorunlar bunlar.

muhittin_kaplan

manyetik fırlatıcı için zamanlmayı ve Bobin mesafelerini nasıl ayarladınız ?

elektro41

Daha ayarlamadım zaten ayarlamam için denemeler yapmam gerekiyor bu yüzden ilk başta sistemi çalışır hale sokmak gerekiyor.
Ondan sonra bobin ateşlemesinin zamanlamasını yazılımla halledeceğim.

Şuan zaten programla uğraşıyorum.




elektro41

Arkadaşlar programı düzelttim sadece fırlattığı gösteren kırmızı led kaldı diğer herşey çalışıyor .
skara1214 ve diğer ilgilenen herkeze çok teşekkürler.
SpeedyX o msn adresim baya eski hala onu kullanıyorum o zamanlar koyduk şimdide öyle gidiyor ayrıca ben 17 yaşıma yeni girdim programlama için yardım istemem bence doğal. Yani o kadar da kötü değilim ama skara1214 olmasa yapamazdım.

İlgilenen herkese birkez daha teşekkür ediyorum iyi akşamlar...