Pic Programlamaya Giriş -2 (Jal Kullanımı)

Pic Programlama’ya kaldığımız yerden devam ediyoruz. En son Pic Programlamaya Giriş 1 -Isis Kullanımını- anlatmıştık. Bugün Jal(Just Another Language) edit programı aracılığı ile pic’imize program atacağız ve flasör devremizin yanıp sönmesini sağlayacağız. JalEdit hakkında daha fazla bilgiyi JalTurk’den temin edebilirsiniz.
Jal programını C:\ dizinine kopyaladıktan sonra içerisindeki JalEdit.exe yi çalıştırıyoruz. Okulumuzda ki hocamız Bünyamin Boz’un bizde uygulamış olduğu eğitim tekniği ile devam edeceğiz ama önce biraz eğitim tekniğinden bahsedeyim. Hiç jaledit’te döngüler şöyle kurulur, koşullar böyle sağlanır diye bahsetmeyeceğiz. Zamanla örnekler üzerinden neyin ne yaptığını öğreneceğiz. İlk örneğimize geçelim.

Öncelikle ilk iki satırımız olmasa olmaz. Birinci satırda kullanacak olduğumuz pic’in modelini ve kristal’in kaç Mhz oldğunu belirliyoruz. İkinci satırda ise jal editin kütüphanesini çağırıyoruz.

include 16f84_4 -- Pic'imizi ve kaç Mhz ile çalıştığını belirledik
include jlib -- Kütüphanemizi çağırdık.
pin_b0_direction = output -- Pic üzerinde ki b0 pinini çıkış olarak belirledik
forever loop -- işlemlerimizin devamlı çalışabilmesi için sonsuz bir döngü içerisine aldık
pin_b0 = high -- b0 pinini high yaparak sinyal gönderiminde bulunduk
delay_1s -- ledimizin yanıp södüğünü görebilmek amacıyla 1 sn beklettik
pin_b0 = low -- b0 pinindeki sinyali keserek ledin sönmesini sağladık
delay_1s -- 1sn lik bir bekleme daha yaptık.
end loop -- Döngüyü sonlandırdık

Şimdi kodları biraz daha inceleyelim ilk iki satırın olmazsa olmazlardan olduğunu söylemiştik. 3. Satırda çıkış olarak b0 pinini kullanacağımızı belirttik. 4. satırda açıklamada da belirtildiği üzere işlemlerimizin devamlılığını sağlayabilmek için yani bir kere çalışıp durmaması için sonsuz bir döngü açtık. 5. Satırda b0 pinine sinyal göndererek bağlamış olduğumuz devre elemanın devreye girmesini sağladık. 6 ve 8. satırlarda devreye giren elemanı fark edebilmek için(ledin yanıp söndüğünü görmek istedik) 1sn’lik bekleme yaptık. 7. Satırda da b0 pinine gönderilen sinyali low komutu ile kestik ve böylece yanan ledi söndürmüş olduk. Ve en son döngümüzü kapattık.
Şimdi bu satırlar biraz uzun gelmiş olabilir. Jal’i yapanlar da öyle düşünmüş olmalıki daha kısa bir yolunu geliştirmişler. Aynı işlemi gerçekleştirebilmek için şu komut ta kullanılabilir.

include 16f84_4 -- Pic'imizi ve kaç Mhz ile çalıştığını belirledik
include jlib -- Kütüphanemizi çağırdık.
pin_b0_direction = output -- Pic üzerinde ki b0 pinini çıkış olarak belirledik
forever loop -- işlemlerimizin devamlı çalışabilmesi için sonsuz bir döngü içerisine aldık
pin_b0 ! = pin_b0 – bu satır b0 pinin tersini al demektir. Yani 1 ise 0 , 0 ise 1 yap demektir.
end loop – döngü sonlandırıldı.

Şimdi kod yazma işlemimiz de bittiğine göre kodları kontrol ettikten sonra pic’in alayacak olduğu hex diline çevirmemiz gerekiyor bunuda jal da tek bir buton yerine getiriyor.
Yukarıdaki resimde işaretli olan butona bir kere bastığımızda kodların yazım kurallarına doğru olup olmadığını kontrol eder ve eğer doğruysa bize en altta OK mesajını verir. Şayet bir yazım hatası varsa hata mesajının üzerine çift tıkladığınızda sizi direk hatalı kod satırına götürür. OK yazısını gördükten sonra resimdeki işaretlenen butona çift tıkladığınızda jal çalışmanızı kaydettiğiniz dosyanın yanına aynı isimle oluşturulmuş ve uzantısı hex olan yeni bir dosya daha oluşturacaktır. Bu hex dosyasını isis programındaki pic’imize sağ-sol tık combosuyla girip gösterdikten sonra devremizde bir hata yoksa ışığı görebilmemiz gerekiyor. Mesela bende bir hata çıktı bataryamı ters bağlamışım. Onu bir önceki konuda anlatılmış olan favori butonumla düzelttikten sonra ışığı görmeyi başarabildim.

Eğer derlemede bir sorun ile karşılaştıysanız her kodun arasında olması gereken boşlukları kontrol edin ve jlib yazılması gereken yere jlip yazmayın. Farklı bir hata ile karşılaşırsanız yorumlardan size cevap vermeye çalışırım. Fakat ben her ihtimale karşı Flaşör Devre Tasarımı ve Jal Dosyası’nı gönderiyorum. Sağlıcakla Kalın…

Yorumlar

Popüler Yayınlar