Arama butonu
Bu konudaki kullanıcılar: 1 misafir
18
Cevap
647
Tıklama
0
Öne Çıkarma
PIC programlama yardım lütfen..!
S
14 yıl (17 mesaj)
Er
Konu Sahibi

arkadaşlar pic programlama işine yeni başlayanlardanım. iki ledi 500 ms aralıklarla yakıp söndürme uygulaması yapıyorum. fakat ledlerin ikisi birden yanıyo ve belirttiğim zaman aralıklarında hiç sönmüyo. sadece yanıyo. sizce sorun nerde olabilir yardımcı olabilirseniz sevinirim. bunlarda derleyiciye yazdıgım kodlar:


void main()
{

setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_OFF);
setup_psp(PSP_DISABLED);
setup_spi(SPI_SS_DISABLED);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
setup_comparator(NC_NC_NC_NC);
setup_vref(FALSE);

set_tris_b(0x00);
output_b(0x00);

while(1){
output_high(pin_b0);
delay_ms(500);
output_low(pin_b0);
output_high(pin_b1);
delay_ms(500);
output_low(pin_b1);
}


}

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil





< Bu mesaj bu kişi tarafından değiştirildi salih452 -- 25 Temmuz 2012; 1:39:08 >

A
14 yıl (4116 mesaj)
Yarbay

Hangi C derleyecisini kullanıyorsunuz? Isis gibi bir simülasyon ortamında deneme şansınız oldu mu? Osilatör problemi olabilir, kurduğunuz şemayı ekleme şansınız var mı?


Bu mesaja 1 cevap geldi.
S
14 yıl (17 mesaj)
Er
Konu Sahibi

CCS C derleyicisi kullanıyorum. Şemayı isis te kurdum ve denedim çalışıyor.
Devre karışık olabilir anlatayım. iki tane 5V luk gerilim verdim. birisinin 10k lık direncle MCLR girişine bağladım. Diğeri ise 11 ve 32 pinlerine verdim. 12 ve 31 pinlerini toprağa bağladım. 33 ve 34 pinlerini de 330 luk direnclerle ledlere bağladım ve çıkışları toprağa verdim. 13 ve 14 pinleri 20MHz lik kristal var ve 22pf lik kondansatör.

< Resime gitmek için tıklayın >



< Resime gitmek için tıklayın >





< Bu mesaj bu kişi tarafından değiştirildi salih452 -- 25 Temmuz 2012; 17:24:11 >
Bu mesaja 2 cevap geldi.
D
14 yıl (2845 mesaj)
Yarbay

cevap basit: söndürdükten sonra hiç bekleme yapmamışsınız. output_low dedikten sonra 500ms gecime koyun.



A
14 yıl (4116 mesaj)
Yarbay

İki ayrı 5V kaynak kullanıyorsunuz anladığım kadarıyla. Fotoğraftan net göremiyorum, nötrlerini birleştirdiniz mi?

Bazı breadboardlarda, kırmızı ve mavi çizgili bulunan yatay bağlantılar ortadan kesik olabiliyor. Dikkat ederseniz PIC'in olduğu yerde mavi ve kırmızı çizgiler kesilmiş. Orlarda bağlantı da kesiliyor olabilir. O yata bağlantıların bir uçtan öteki uca bağlı olduğuna emin olabilir misiniz?

Programlarken osilatör tipinin HS olup olmadığını kontor edebilir misini?

Hiç CCS C kullanmadım ama ISIS'te çalışıyorsa kod olarak bir hata olmaması gerekir.


Bu mesaja 1 cevap geldi.
S
14 yıl (17 mesaj)
Er
Konu Sahibi

koda ekleme yap diyen arkadaşım dediğini yaptım gene olmadı hala aynı şey oluyor. nötrleri birleştir diyen arkadaşm dediğin gibi breadboardın ortasından bağlantı kesiliyo bunu biliyorum zaten ama dediğin gibi üst kısımla alt kısmı birleştirdigimde bu sefer ledler hiç yanmıyo. zaten bana göre birleşmemesi gerekiyo çünkü farklı gerilim kaynakları kullanıyorum. ya kafayı yiycem 10 gündür bununla ugraşıyorum sorun nerde acabaaa çıldıracam :@ Yardımcı olan arkadaşlarım ilginiz için çok teşekkür ediyor ve yardımlarınızın devamını bekliyorum :))


Bu mesaja 1 cevap geldi.
G
14 yıl (1451 mesaj)
Binbaşı

quote:

Orijinalden alıntı: salih452

koda ekleme yap diyen arkadaşım dediğini yaptım gene olmadı hala aynı şey oluyor. nötrleri birleştir diyen arkadaşm dediğin gibi breadboardın ortasından bağlantı kesiliyo bunu biliyorum zaten ama dediğin gibi üst kısımla alt kısmı birleştirdigimde bu sefer ledler hiç yanmıyo. zaten bana göre birleşmemesi gerekiyo çünkü farklı gerilim kaynakları kullanıyorum. ya kafayı yiycem 10 gündür bununla ugraşıyorum sorun nerde acabaaa çıldıracam :@ Yardımcı olan arkadaşlarım ilginiz için çok teşekkür ediyor ve yardımlarınızın devamını bekliyorum :))

farklı gerilim kaynakları da kullanılsa gnd uçları birleştirilir. Koda bekleme eklemene gerek yok. İşlemci türüne göre kristalin bağlanması gereken kondansatör değeri değişir. 20MHz üretemiyor olabilir. MCLR reset ucunu işlemciyi hangi güç kaynağı ile besliyorsan ona bağlamalısın. Kullandığın kristal türü nedir? resmin çok net değil. Ayrıca kodda watchdog kullanıyorsan onuda sürekli resetlemelisin yada devre dışı bırakmalısın...

Daha birçok sorun oluşabilir ama şimdilik aklıma gelenler bunlar.


Bu mesaja 1 cevap geldi.
S
14 yıl (17 mesaj)
Er
Konu Sahibi

ama dediğin gibi uçları birleştirdiğimde bu sefer ledler hiç yanmıyo. 4Mhz lik kristal kullanarak deneyim dedim gene aynı şey oluyo değişen bişey olmyuo. watchdog un ne oldugunu bilmiyorum ama kodlarda hiç öyle bir terim geçirmedim.


Bu mesaja 1 cevap geldi.
S
14 yıl (17 mesaj)
Er
Konu Sahibi

neyse arkadaşlar yardımlarınız için çok teşekkür ederim breadboard da kafayı yedi heralde normal dirençle bağladıgım led bile yanmıyo artık kafayı yedirtecek bana en iyisi ben bu pic işine biraz ara vereyim. yardımlarınız için tekrar çok teşekkür ederim.


Bu mesaja 1 cevap geldi.
A
14 yıl (4116 mesaj)
Yarbay

Niye iki farklı kaynak kullanıyorsunuz? Daha net fotoğraf çekebilirseniz daha iyi olabilir.

Bence pes etmeyin hemen.


Bu mesaja 1 cevap geldi.
S
14 yıl (17 mesaj)
Er
Konu Sahibi

serdar çiçek in ccs c ile pic programlama kitabını okuyorum bilirsiniz belki ordakine uygun olsun diye iki kaynak kullandım. arkadaş 10 gündür ugrasıyorum ya hemen pes etmedim yani :). bu işlerden anlayan arkadasım var onunla görüşene kadar ara veriyim dedim.


Bu mesaja 1 cevap geldi.
A
14 yıl (4116 mesaj)
Yarbay

Bahsettiğiniz kitabı bilmiyorum fakat motor vs gibi ağır yükler sürmüyor, buradaki gibi sadece LED yakmaya çalışıyorsak iki ayrı kaynak kullanmamız sadece bizi daha çok yoracaktır.

Ben yine de size yardımcı olabilir diye devreniz için örnek bir breadboard yerleşimi çizdim, tek kaynaklı.

< Resime gitmek için tıklayın >


Bu mesaja 1 cevap geldi.
D
14 yıl (2845 mesaj)
Yarbay

Koda bekleme koymana gerek yok diyenlerin programlama bilgisinden ciddi şüphelerim var.



< Bu ileti mobil sürüm kullanılarak atıldı >

S
14 yıl (17 mesaj)
Er
Konu Sahibi

kardeşim çok teşekkür ederim yardımın için ve diğer arkadaşların yardımları için heralde devremde bi problem vardı dediğin gibi kurdum devreyi halloldu. tekrar çok çok teşekkür ederim.


Bu mesaja 2 cevap geldi.
A
14 yıl (4116 mesaj)
Yarbay

Rica ederim

İyi çalışmalar...



D
14 yıl (2845 mesaj)
Yarbay

quote:

Orijinalden alıntı: salih452

kardeşim çok teşekkür ederim yardımın için ve diğer arkadaşların yardımları için heralde devremde bi problem vardı dediğin gibi kurdum devreyi halloldu. tekrar çok çok teşekkür ederim.

bekleme koydun mu koymadın mı output_low dedikten sonra?


Bu mesaja 1 cevap geldi.
S
14 yıl (17 mesaj)
Er
Konu Sahibi

D
14 yıl (2845 mesaj)
Yarbay

Koymadan denesene bir de istediğiniz gibi çalışacak mı? Bazı arkadaşlar çalışır demiş de onlara cevap olsun.


Bu mesaja 1 cevap geldi.
D
14 yıl (2845 mesaj)
Yarbay

Keşke paylaşsaydınız sordugum bilgiyi.



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.