1. sayfa
Ben pic c arıyorum.Sanırım bu program bu değil.Acaba pic c paylaşabilecek olan var mı? |
Bu program pic c yi ve derleyicisini içinde bulunduran bir program. HI-TIDE sadece c kodu yazmak içiçn arayüz. derleme işlemi yine picc ile yapılıyor. Normalde picc yi kurup mplab da kod yazıp mplab içinden derlemeyi pic c ye yaptırırsın. Fakat bu program sayesinde mplab a gerek kalmıyor kodlarını HI-TIDE üzerinde yazıp derle dediğin zaman direk derleniyor. Ayrıca yazdığın kodu öalıştırıp inceleyebiliyorsun. Eğer beklerseniz bu başlık altında nasıl kod yazılıp derleneceğini resimli olarak göstereceğim.Örnek programlar vereceğim. |
Denemeler-1 Kaldığımız yerden devam ediyoruz. Dünki mesajımda yeni bir projeye nasıl başlanacağını göstermiştim. Şimdi o adımları bildiğinizi varsayıp basit bir kod ile neler olduğunu anlatmaya çalışacağım. 1)Yukarıda anlatılan şekilde yeni bir projeye başlayın.Pic olarak 16f628a seçin 2)main.c sayfasını açınız. 3)Karşınızda boş bir sayfa göreceksiniz.Sayfada //TO DO ile başlayan yazıyı silebilirsiniz ve kodunuzu oraya yazabilirsiniz. Aşağıdaki resimde basit bir kod verilmiştir. < Resime gitmek için tıklayın > Tam ekran görmek için :https://store.donanimhaber.com/01/c2/c3/01c2c3ff066c5c84e3c77fef4757c724.gif Şimdi buradaki kodun ne yaptığını basitçe şöyle özetleyebiliriz. Pic'in B portuna bağlı ledleri 2 yanık 2 sönük durumunda tutar.
Çalışan kodun isis görüntüsü eklenmiştir. < Resime gitmek için tıklayın > Tam ekran görmek için:https://store.donanimhaber.com/d8/a0/1a/d8a01a60fcf690195c24ba7c52ccb4e7.gif Yazdığınız kodu denemeniz için ekte Proteus dosyalarını gönderiyorum. Şema 6.9 Sp5 te hazırlanmıştır. Fakat pakete hex kodlarını dahil etmedim onu size bırakıyorum ![]() ![]() http://rapid-share.com/files/21531757/Program_1.rar İndirmek için "-" işaretini siliniz. Şimdililk bu kadar.Hatalarım varsa affola. Devamı gelecektir. Kod çok basit olabililr. Fakat bir sıraya göre gitmeyi düşünüyorum. Takip ettiğim kitap "PIC PROGRAMLAMA 16F628A" dır. Yazarı Orhan Altınbaşak. Orda kodlar asm ile verilmiş. Ben onları c diline uyarlıyorum. Bazen birebir uayrlama kolay oluyor bazen se kendi mantığımı kullanıyorum. |
@respected nicli arkadaşımızın güzel bir pdf i ,ccs (pcwh) kullanımı anlatıyor. http://rapid-share.com/files/11425977/ccs_book.rar.html Nigel gardnerin kitabı güzel,internette Türkçesi de dolaşıyor. Birini bilen diğerine rahat geçiş yapabilir. Sonunuz iar olacak... ![]() |
kardeş ellerine sağlık çok güzel olmuş.... |
Yani pic c programında kullanılan bir dille yazılmış olan bir c kodunu bu derleyiciyle derleyebilirim değil mi? |
muzoo kardeş sana bir sorum var ve diğer arkdaşlara da birz konu dışı ama sorayım ben gine de Arkadaşlar bir konuda yardımınıza ihtiyacım var. sorun şu: Şimdi mıknatıs takılıyken yazı hep belirli bir noktada oluşuyor. ben mıknatısı çıkardım ve DELAYMS(20) yaptım yani tam motora göre ayarladım. sonra motor hareket ettiğinde yazı yavaşça hareket ediyor dönüyor. yani resmen havada kayan yazı gibi oluyor.AMA bmyle dönerken birden yazı öteki tarafa atlıyor. yine ne güzel dönüyor yavaşça yine aynı pat diye yazı atlıyor niye böyle oluyor????? lütfen bişeyler söyleyin ![]() video:: < Resime gitmek için tıklayın > http://www.youtube.com/watch?v=Sa9HXglpjqU evet arkadaşlar bu sorun mu değil mi??? |
Aklıma takılan şu aslında. NOrmalde yazının aynı yerde görünmesi iççn programda ayarlanan zamanlama ile motorun zamanlamasının tutması gerekiyor değil mi?Sallıyorum normalde yazının başlangıcı (düzlemi bir saat olarak düşünelim) saat 11 noktasında oluyor. aynı yerde görünmesi için programın hep aynı noktada tekrar edip başlaması lazım. Ama senin çalışmanda sanki motor devri ile programdaki gecikme tam oturmuyormuş gibi geldi. Daha öncede demiştim böyle bir çalışma yapmadığım için sadece tahmin yürütüyorum. Denemeler-2 Bir önce ki yazıda basit bir şekilde çıkışların nasıl kullanılacağını göstermiştim. Bu sefer ise girişten alınan bilgiye göre çıkışın değiştirilmesi mantığıyla çalışan yine basit bir kod vereceğim. Daha önce anlatıldığı gibi yeni bir proje açıyoruz.Pic olarak 16f628a kullanıyoruz.Aşağıda gerekli kodları veriyorum
Örnek ekran görüntüsü < Resime gitmek için tıklayın > Tam ekran görmek için ----------------> https://store.donanimhaber.com/a6/ad/d6/a6add66f36502619802d918d374320e9.gif Yazdığınız kodu denemek için gerekli olan ISIS dosyası ekte verilmiştir (v6.9 Sp5). Benzeşim sırasında anahtarlı açıp kapayarak programın verdiği tepkiyi görebilirsiniz.Hex dosyasıni vermedim. Onu siz halledersiniz ![]() Benzeşim dosyası------------> http://rapid-share.com/files/21789246/Program_2.rar (indirmek için "-" işaretini kaldırın) |
yaw bende girişteki bilgileri çıkışa nasıl atılır die düşündüm aklım PORTB = PORTA geldi kodu derledim proteus'ta simulasyonunu yaparken yanlış çalışıyordu demek ki CMCON'u ayarlıyormuşuz. Bir soruda bu bilgileri sen nasıl elde ettin acaba bu konuda da bilgi verebilirmisin. bu arada çalışmaların için teşekkürler... |
En baştan başlarsak c öğrenmek için C ve C++ adlı kitabı aldım.Sanırım sistem yayıncılık yazarlarından birinin adı Deitel'di. Daha sonra pic'e merak sarınca Altaş yayınlarından Pic Programlama 16f628 kitabını aldım. Kitapta kodlar asm dili ile verilmişti. Asm yi de sağolsun okulda z80 dersinde gördüm. Her ne kadar farklı olsa da mantığı benzerdi. Daha sonra bu pic kitabındaki kodları asm ye uyarlamaya çalıştım. Ondan sonra gerisi geldi. Ben de daha bu işte acamiyim ama uğraşmaya çalışıyorum boş buldukça. Denemeler-3 Bu gün if/else yapısıyla yapılmış basit bir kod ve bir butona 15 defa basılınca (sayaç uygulaması) bir ledin yanmasını sağlayan bir uygulama yapılacaktır.Sayaç uygulamasında geciktirme döngüleri kullanılmadığı için. Benzeşim sırasında frekansın düşürülmesi gerekmektedir (ben 6khz olarak kullandım) Daha yüksek hızlarda kod istenildiği gibi çalışmayacaktır.
Kodun örnek ekran görüntüsü < Resime gitmek için tıklayın > Tam ekran görmek için -------------> https://store.donanimhaber.com/6c/1c/15/6c1c150b8079aa3be174045167d05ecf.gif İkinci kodumuz ise bir butona 10 defa basıldığında ledi yakacak olan bir sayaç uygulaması. For ve while döngüleri ile hazırlanmıştır. İçinde basit bir geciktirme rutini vardır fakat mikrosaniyeler civarında geciktirme yaptığı için tavsiyem 5-6Khz pic hızında test edilmelidir. Geciktirme yeterli olmadığı için 1 Mhz de butona bir defa bastığınızda led yanacaktır.
Örnek ekran görüntüsü < Resime gitmek için tıklayın > Tam ekran görmek için----------> https://store.donanimhaber.com/0e/55/7c/0e557cf3ff5c3ba78499d5acebb47d4f.gif Ekte her iki program için benzeşim dosyaları verilmiştir. ISIS te hazırlanmıştır (v6.9 Sp5) İLk Program: http://rapid-share.com/files/21972717/Program_4.rar (indirmek için"-" leri silin) İkinci program:http://rapid-share.com/files/21972790/Program_5.rar Benzeşim dosyalarına hex kodue eklenmedi. |
1. sayfa
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye Ol Şimdi DeğilÜ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.