1. sayfa
| 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ı? |
|
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 > |
| cevap basit: söndürdükten sonra hiç bekleme yapmamışsınız. output_low dedikten sonra 500ms gecime koyun. |
|
İ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. |
| 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. |
| 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. |
| 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. |
|
Niye iki farklı kaynak kullanıyorsunuz? Daha net fotoğraf çekebilirseniz daha iyi olabilir. Bence pes etmeyin hemen. |
| 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. |
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 > |
| Koda bekleme koymana gerek yok diyenlerin programlama bilgisinden ciddi şüphelerim var. |
| 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. |
Rica ederim İyi çalışmalar... |
bekleme koydun mu koymadın mı output_low dedikten sonra? |
| Koymadan denesene bir de istediğiniz gibi çalışacak mı? Bazı arkadaşlar çalışır demiş de onlara cevap olsun. |
| Keşke paylaşsaydınız sordugum bilgiyi. |
1. sayfa
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);
}
}
< Bu mesaj bu kişi tarafından değiştirildi salih452 -- 25 Temmuz 2012; 1:39:08 >