Şimdi Ara

ccs c kod hatası

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
3 Misafir - 3 Masaüstü
5 sn
11
Cevap
0
Favori
1.629
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • 16f628a için basit bir program yaptım fakat son kısımda sıkıntı çıktı bakabilir misiniz??

    #include <led2-but.h> 



    void main()
    {
    set_tris_a(0xe0);
    set_tris_b(0x00);
    output_a(0xe0);
    output_b(0x00);
    while(1){

    if(input(pin_a7))
    while(input(pin_a7)){
    output_high(pin_b1);
    delay_ms(20);
    output_low(pin_b1);
    output_high(pin_b2);
    delay_ms(20);
    output_low(pin_b2);
    output_high(pin_b3);
    delay_ms(20);
    output_low(pin_b3);
    }
    else
    output_b(0x00);



    if(input(pin_a6))
    while(input(pin_a6)){
    output_high(pin_a0);
    delay_ms(20);
    output_low(pin_a0);
    output_high(pin_a1);
    delay_ms(20);
    output_low(pin_a1);
    output_high(pin_a2);
    delay_ms(20);
    output_low(pin_a2);
    }
    else
    output_a(0x00);



    if(input(pin_a5))
    while(input(pin_a5)){
    output_high(pin_b4);
    delay_ms(20);
    output_low(pin_b4);
    output_high(pin_b5);
    delay_ms(20);
    output_low(pin_b5);
    output_high(pin_b6);
    delay_ms(20);
    output_low(pin_b6);
    }
    else
    output_b(0x00);



    if(input(pin_b7))
    while(input(pin_b7)){
    output_high(pin_a3);
    delay_ms(20);
    output_low(pin_a3);
    output_high(pin_a4);
    delay_ms(20);
    output_low(pin_a4);
    output_high(pin_b0);
    delay_ms(20);
    output_low(pin_b0);
    }
    else
    output_b(0x00);
    output_a(0x00)
    }
    }




     ccs c kod hatası


     ccs c kod hatası



    < Bu mesaj bu kişi tarafından değiştirildi eebm38 -- 6 Ocak 2013; 14:48:15 >







  • up
  • Buton baglantılarını aşagıdaki çizdigim şekilde yaparsan sorun çözülür. Her buton için ayrı ayrı bu sistemi kur ardından. J1 pin'inin oldugu yerden pinlere bagla. Kolay gelsin.



     ccs c kod hatası
  • Komut'ta da hata var

    set_tris_b(0x00);

    ilet b port'unu komple çıkış yapmıssın.

    set_tris_b(0b10000000); yapmalısın.
    yada
    set_tris_b(0x80);
  • quote:

    Orijinalden alıntı: slayer_ank

    Komut'ta da hata var

    set_tris_b(0x00);

    ilet b port'unu komple çıkış yapmıssın.

    set_tris_b(0b10000000); yapmalısın.
    yada
    set_tris_b(0x80);

    kod hatasını düzeltmeme rağmen b7 pine akım geliyor yani çıkış gibi görünüyor



     ccs c kod hatası
  • dosyalarını ekle müsait bir zaman bakayım ben. Tüm dosyalarını ekle yalnız. Gördügüm kadarıyla kendi dosyanı kullanıyorsun onu filanda ekle.
  • quote:

    Orijinalden alıntı: slayer_ank

    dosyalarını ekle müsait bir zaman bakayım ben. Tüm dosyalarını ekle yalnız. Gördügüm kadarıyla kendi dosyanı kullanıyorsun onu filanda ekle.

    http://****.com/files/577571194/led2-but.rar

    link rapid share. hem isis dosyası hem de ccs dosyaları var ayrıca kis 13 le tarattım sorun yok.



    < Bu mesaj bu kişi tarafından değiştirildi eebm38 -- 7 Ocak 2013; 23:53:39 >
  • Yapay Zeka’dan İlgili Konular
    ccs c port ayarlama
    16 yıl önce açıldı
    C:\rescyled\boot.com HATASI
    17 yıl önce açıldı
    Daha Fazla Göster
  • Geçenlerde gene bir kod üzerinde yardım etmiştim sana galiba. Gördügüm kadarıyla daha acemisin. Geçen yardım ederken de belirtmiştim şase ayarlarını, pic seçimini ve setup ayarlarını manuel olarak kendi programın içinde yap. Başka bir kaynak kullanma sebebi ise bütün komutlar vs gözünün önünde olur ne nedir nerde sorun var düzeltirsin... Biraz daha ilerleyince istedigin gibi calış o zaman sorun kalmaz.

    Hatalarına gelirsek;

    if komutu altında 1 komut yazıcaksan { } paranteze gerek yoktur ama 1 den fazla komut varsa kullanman lazım bu 1.

    2.si sana set_tris_b(0x80); yap dedim sen komple nerede b port'u gördüysen iliştirmişsin. Örnegin output_b(0x80); gibi komutları da eklemişsin. aradaki farkı araştır ögren. elinden geldigince ne yaptırmak istedigini satır satır takip et. Yani bu komutu yazdım şimdi şunu yapıcak gibi hayal et. Komutların işlemini iyi ögren.

    3.sü kullandıgın kaynak kodunda FUSES HS yani high speed harici osc kullanılacagı belirtilmiş. Sen OSC1 OSC2 girişlerini giriş olarak kullanamazsın cünki oraya kristal baglaman lazım. Fuses INTRC_IO komutu ile düzelttim. Bu ise dahili osc kullanılacagını ve OSC1 OSC2 pinlerinin IO olarak kullanılacagı anlamı taşır.

    4.sü 628A'da RA4 için acık kollektör yapısına sahiptir. Bundan dolayı cıkış olarak kullanılacaksa RA4'e pullup direnç'i ile +5volt verilmeli.

    5.si bu bir tavsiye konu başında da söyledim tekrar söylüyorum. Komutları ögrenmeden kaynak dosyası kullanma. Kullandıgın kaynak dosyasının bir mantıgı yok kendi yazdıgın direkt program dosyası içerisinde de o ayarları yapabilirsin. Hem hepsi gözünün önünde olur kafan karışmaz hata yapmıs olursan düzeltirsin.

    6.sı RA5 MCLR degil pinidir. Buraya lojik 0 uyguladıgınızda microişlemci resetlenir. Lojik 1 de resetlenmez. Not kapısı vardır fark bu. Lojik 0 not kapısından geçip Lojik1 olarak algılanır ve micro işlemciyi resetler. Giriş olarak kullanıcagın için 628A'in şase ayarı olan MCLR iptali kullanman saglıklı olur o da; Fuses NOMCLR dir.

    Led'lerin yanma süresini 20ms'den 100ms'ye cektim daha rahat göreyim diye. İstersen düzeltirsin.

    Daha dikkatli çalışmalar...

    http://www.dosya.tc/server26/MwrDzc/YeniKlas_r.rar.html

    Not: RA4'e baglı olan led biraz sönük yanıyor. Direnç'i 330R yaparsan parlaklıgı artar.



    < Bu mesaj bu kişi tarafından değiştirildi slayer_ank -- 8 Ocak 2013; 2:15:00 >




  • quote:

    Orijinalden alıntı: slayer_ank

    Geçenlerde gene bir kod üzerinde yardım etmiştim sana galiba. Gördügüm kadarıyla daha acemisin. Geçen yardım ederken de belirtmiştim şase ayarlarını, pic seçimini ve setup ayarlarını manuel olarak kendi programın içinde yap. Başka bir kaynak kullanma sebebi ise bütün komutlar vs gözünün önünde olur ne nedir nerde sorun var düzeltirsin... Biraz daha ilerleyince istedigin gibi calış o zaman sorun kalmaz.

    Hatalarına gelirsek;

    if komutu altında 1 komut yazıcaksan { } paranteze gerek yoktur ama 1 den fazla komut varsa kullanman lazım bu 1.

    2.si sana set_tris_b(0x80); yap dedim sen komple nerede b port'u gördüysen iliştirmişsin. Örnegin output_b(0x80); gibi komutları da eklemişsin. aradaki farkı araştır ögren. elinden geldigince ne yaptırmak istedigini satır satır takip et. Yani bu komutu yazdım şimdi şunu yapıcak gibi hayal et. Komutların işlemini iyi ögren.

    3.sü kullandıgın kaynak kodunda FUSES HS yani high speed harici osc kullanılacagı belirtilmiş. Sen OSC1 OSC2 girişlerini giriş olarak kullanamazsın cünki oraya kristal baglaman lazım. Fuses INTRC_IO komutu ile düzelttim. Bu ise dahili osc kullanılacagını ve OSC1 OSC2 pinlerinin IO olarak kullanılacagı anlamı taşır.

    4.sü 628A'da RA4 için acık kollektör yapısına sahiptir. Bundan dolayı cıkış olarak kullanılacaksa RA4'e pullup direnç'i ile +5volt verilmeli.

    5.si bu bir tavsiye konu başında da söyledim tekrar söylüyorum. Komutları ögrenmeden kaynak dosyası kullanma. Kullandıgın kaynak dosyasının bir mantıgı yok kendi yazdıgın direkt program dosyası içerisinde de o ayarları yapabilirsin. Hem hepsi gözünün önünde olur kafan karışmaz hata yapmıs olursan düzeltirsin.

    6.sı RA5 MCLR degil pinidir. Buraya lojik 0 uyguladıgınızda microişlemci resetlenir. Lojik 1 de resetlenmez. Not kapısı vardır fark bu. Lojik 0 not kapısından geçip Lojik1 olarak algılanır ve micro işlemciyi resetler. Giriş olarak kullanıcagın için 628A'in şase ayarı olan MCLR iptali kullanman saglıklı olur o da; Fuses NOMCLR dir.

    Led'lerin yanma süresini 20ms'den 100ms'ye cektim daha rahat göreyim diye. İstersen düzeltirsin.

    Daha dikkatli çalışmalar...

    http://www.dosya.tc/server26/MwrDzc/YeniKlas_r.rar.html

    Not: RA4'e baglı olan led biraz sönük yanıyor. Direnç'i 330R yaparsan parlaklıgı artar.

    cevap için çok teşekkür ederim. set_tris_b(0x80) yapınca düzelmediği için diğerlerinide değiştirip denedim. kaynak dosyasını da ccs c oluşturuyor yani bnm ekstra eklediğim birşey yok, dediğiniz gibi yeniyim çok bişey bilmiyorum.ama en kısa zamanda ayarlar yapmayı öğrenecm. birde siz bunların hepsini nerden öğrendiniz ben nerden çalışabilirim?

    teşekkürler




  • Rica ederim. Sorun yaşarsan gene biraz araştır çözemezsen ö.m atabilirsin. Bende çok iyi sayılmam daha bir çok eksigim var. Sana tavsiyem Serdar Çicek'in CCS Pic programlama kitabını almandır. Temeli oturtabilirsin o kitap ile gerisi de senin diger kaynaklardan araştırmana baglı. Ben böyle yapıyorum yani. Kitap çok pahalı degil 15-20tl arası birşeydi yalnış hatırlamıyorsam. Hatta link'i aşagıda.

    http://www.altaskitap.com/CCS-C-Ile-PIC-Programlama,PR-37.html
  • quote:

    Orijinalden alıntı: slayer_ank

    Rica ederim. Sorun yaşarsan gene biraz araştır çözemezsen ö.m atabilirsin. Bende çok iyi sayılmam daha bir çok eksigim var. Sana tavsiyem Serdar Çicek'in CCS Pic programlama kitabını almandır. Temeli oturtabilirsin o kitap ile gerisi de senin diger kaynaklardan araştırmana baglı. Ben böyle yapıyorum yani. Kitap çok pahalı degil 15-20tl arası birşeydi yalnış hatırlamıyorsam. Hatta link'i aşagıda.

    http://www.altaskitap.com/CCS-C-Ile-PIC-Programlama,PR-37.html

    şansıma kitap üni kütüphanesinde varmış :D yrn gidip alcm. takıldığım yer olursa dediğiniz gibi ö.m atarm kolay gelsin




  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.