F3do
Lütfen Üye Olunuz...!!!

Join the forum, it's quick and easy

F3do
Lütfen Üye Olunuz...!!!
F3do
Would you like to react to this message? Create an account in a few clicks or log in to continue.

PIC Programlamaya Nasıl Başlamalı?

Aşağa gitmek

PIC Programlamaya Nasıl Başlamalı? Empty PIC Programlamaya Nasıl Başlamalı?

Mesaj tarafından FaTaL Perş. Ekim 30, 2008 11:54 pm

PIC Programlamaya Nasıl Başlamalı?


Merhaba Arkadaşlar,
Bu yazımızda PIC programlamaya başlamak isteyen arkadaşlara yardımcı
olmaya çalışacağız. Öncelikle PIC nedir onla girelim. PIC Microchip
firmasının üretimi olan mikrodenetleyicilerinin model ismidir. PIC
16F877, PIC 16F84, PIC 16F628A gibi, bunlar birer entegre ismi. Ancak
Mikrochip firmasının PIC mikrodenetleyicileri o kadar yaygın
kullanılıyor ki peçete yerine selpak ifadesinin kullanılması gibi PIC
denilince akla mikrodenetleyici geliyor. Neden yaygın kullanılıyor
derseniz ilk başta fiyat uygunluğu geliyor, kolay bulunması ve
internette ilgili dökümanların kolay bulunabilmesi de diğer artı
özellikleri. Sadece PIC mikrodenetleyicisi kullanmış biri olarak diğer
firmaların ürettiği (mesela motorola) mikrodenetleyiciler hakkında pek
bir bilgim yok. PIC le başladı öyle gidiyor, ancak bundan sonra
alternatifleri de değerlendirmeye çalışacağım.

PIC le neler yapabiliriz?
Bu soruya tam bir cevap vermek veya PIC le yapılabilecek uygulamalara
bir sınır koymak oldukça zor, elektronik tecrübeniz arttıkça
verebileceğiniz cevaplar da artacaktır. Ancak
basitçe;mikrodenetleyiciler bizim için karar verirler, ne zaman ne
yapması gerektiğini program aracılığıyla söylersiniz ve PIC bunu sizin
için yapar. Örn: PIC e ne zaman hangi ledleri yakacağını söylerseniz
led panelde kayan yazı yapabilirsiniz veya tuş takımından girilen şifre
nin doğruluk kontrolünü yapmasını isterseniz röle yardımıyla şifreli
kapı yapabilirsiniz...

Genel olarak PIC li bir sistem ne yapar?
Her şeyden önce PIC li bir sistem bir bilgisayar sistemidir, programcı
tarafından yapacağı uygulamaya uygun olarak geliştirilmiş ve PIC in
içine yüklenmiş bir yazılım vardır ve bu yazılım icra edilir. İçinde
yazılımı olmayan bir PIC hiç bir işe yaramaz, açılmayan bir bilgisayar
gibi. PIC in çalışması için yazılımın haricinde gereken 2 temel donanım
şartı vardır, besleme gerilimi ve osilatör. Aslında saydığımız bu üç
unsur (yazılım, besleme, osilatör) tüm bilgisayar sistemlerinin olmazsa
olmazıdır.

PIC programlamaya hangi model PIC le başlayalım?
Yeni başlayacak arkadaşlar için en uygun modelin 16F628 veya 16F628A 16F628A nın resmi için buraya tıklayınız)(
olduğunu düşünüyorum. Bu model PIC lerde dahili osilatör olduğu için
harici osilatör bağlamak durumunda kalmayacaksınız. Bu durumda
mikrodenetleyicimizi çalıştırmak için sadece VDD ucuna +5V ve VSS ucunu
toprağa bağlamamız yeterli olacaktır. Yani besleme gerilimini vererek
ve dahili osilatörü kullanarak bu PIC i çalıştırabiliriz.
-Dahili osilatörü nasıl aktif edeceğiz?
--Yazdığınız programda ilgili konfigürasyonu aktif hale getirerek. Bu
ve benzeri konfigürasyonlar program içerisinde yapılacağı gibi
yazdığınız kodun PIC e aktarılmasını sağlayan yazılım aracılığıyla da
yapılabilir ama birinci yöntem daha güvenlidir.

PIC 16F628 modelinde toplam 18 adet pin bulunur, bunlardan 16 tanesi
giriş-çıkış pini olarak kullanılabilir kalan 2 pin ise PIC in
çalıştırılmasıyla ilgilidir(Besleme pinleri). Bu 16 giriş-çıkış
pinimizden 8 tanesi A portuna 8 tanesi de B portuna ait pinlerdir.
Hangi pin nerdedir(kaçıncı bacak), ne işe yarar gibi soruların cevabını
PIC i üreten firmanın hazırladığı katalogdan(data*****) öğreniyoruz,
katalog uzun uzadıya anlatıyor her şeyi, güzel de anlatıyor, ama biz
yeni başlarken pin diagramlarının olduğu sadece ilk sayfaları
kullanacağız. Kataloga ulaşmanın en kolay yolu, google>16F628A yazıp
"enter"lamak.
-Girişi-çıkış pinleriyle ne yapacağız?
--Led yakalım mesela, yanıp sönen led yapalım, bir pini giriş olarak
kullanıp düğmeye basıldı mı basılmadı mı anlayıp çıkış yaptığımız başka
bir pindeki ledi yakalım... fena mı? Sadece led mi yakacağız.. hayır
tabii ki, yukarıda da söylediğim gibi uygulama dünyası çok geniş,
olaylarla tanıştıkça bana hak vereceksiniz Smile İlk uygulama olarak led
yakmak ideal, alışveriş listenize kablo, led, direnç, deney tablası,
pil ve regülatör gibi malzemeleri eklemeyi unutmayın böylece PIC i
programladıktan sonra kullanacağınız bir devre kurabilirsiniz.

(bu arada mikrodenetleyici = mikroişlemci + bellek + giriş-çıkış vs çevresel birimler olduğunu bildireyim)

Fiilen PIC programlamaya başlamak için gereken asgari gereçler;
Donanım Olarak;
1) Herhangi bir model PIC Mikrodenetleyicisi
2) PIC Programlama Cihazı (PIC Programlama devresi)
3) Bilgisayar
Yazılım olarak;
4) Derleyici (Seçtiğiniz programlama diline bağlı olarak size bir derleyici(compiler) gerekir)
5) Programlama Cihazıyla irtibatı kuracak olan(çoğunlukla programlama
cihazıyla birlikte verilir) yani yazdığınız kodu entegrenize
yüklemenizi sağlayan yazılım.


Şimdi internette pek sık duyduğumuz bazı isimleri bu kategorilere koyalım (terimlerden kafası karışan arkadaşlar için),
ICPROG: 5. maddemizle ilgili; yazdığımız kodların PIC e yükleme amaçlı kullanabileceğimiz aracı yazılımlardan bir tanesidir.

PicBasic: 4. maddemizle ilgili, PIC programlama yapabilmek için
alternatif programlama dillerinden bir tanesi, bu dille programlamak
istiyorsanız PicBasic derleyicisine ihtiyacınız var demektir.

Pic C: Yine 4. maddemizle ilgili, PIC C de pic programlamada
kullanılabilecek alternatif dillerden birisidir. Aslında kendisi bir
dil değil kategoridir, PIC C denilince çeşitli firmalar tarafından
geliştirilmiş CCS C, HI-TECH C veya Micro C gibi PIC programlama
yapmamızı sağlayan ek kodlar barındıran C dilleri kast edilir.

- C dilini (veya Visual Basic) biliyorum, pic programlamada nasıl yardımı olabilir?
--PIC programlama için kullanılan PIC C, PIC Basic gibi dillerde
standart C ve Visaul Basic gibi dillerde kullandığınız komutlar
kullanılır ama ek olarak PIC donanımıyla alakalı bazı komutlar da
vardır. Standart dilleri kullanmış biri olarak sadece bazı yeni
fonksiyonları ve biraz PIC konfigürasyon ayarları hakkında bilgi
edinerek kullandığınız standart dilin PIC versiyonunda uygulama
geliştirmeye başlayabilirsiniz.


Pic Assembly: Her mikrodenetleyicinin bir yazılım dili olmak
zorundadır, yoksa mikrodenetleyici çalışmayan bilgisayar gibi olur.
Microchip de PIC leri üretirken yazılım dili olarak PIC assembly yi
üretmiştir. İşlev olarak yukarıda saydığımız dillerden farkı yoktur
yani bu dil de pic e yazılım geliştirmek için kullanılır. Ancak bu dil
size diğer dillerle karşılaştırılamayacak kadar geniş bir yetki sağlar.
Çünkü sistemin kendi dilini kullanıyorsunuz, C veya Basic gibi bir
tercüman kullanmıyorsunuz. Sağladığı yetkinin yanında dezavantaj olarak
çok temel komutları kullandığınız için program geliştirme süreci yavaş
işler .Örnek vermezsem olmaz(!) Bir binayı prefabrik gibi hızlıca
yapmak var tuğla tuğla yapmak var; yavaş gelişim... buna karşın duvarda
bir sorun olunca ne oluyor bu duvara demek var, sorun şu tuğlada
olabilir demek var; sisteme hakimiyet... Umarım anlatabilmişimdir.
Assembly programcıları da çeşitli imkanları kullanarak nispeten
hızlanabilirler(makro veya altprogramcıkları saklayarak) ancak olayın
genel görüntüsü bu şekildedir.

Hangi dili seçelim derseniz(yani bana sorarsanız)? Ben CCS C ile
başladım, epeyce uygulama geliştirdikten sonra Assembly öğrenmeye
başladım ve bir çok şeyi Assembly ile daha iyi öğrendim. Ben hemen bir
şeyler yapmak istiyorum derseniz C, basic gibi yüksek seviyeli
dillerden başlayabilirsiniz. Derinlemesine öğreneyim sonra uygulama
geliştiririm diyorsanız-ki biraz sabır istiyor- assembly derim.

Pic Assembler: Pic assembly kodlarını makine koduna(hex) çeviren
yazılım, compiler gibi. Compiler ve assembler in amacı aynıdır(makine
kodu) ama "input" dosyaları farklıdır.

Yukarıda saydığımız 5 şarta sahip olduğunuzda PIC programlamak için yapmanız gerekenler sırasıyla şöyle olacaktır.
1) Bilgisayarımızı açar, PIC C Derleyicimizi çalıştırırız(PIC C
dillerinden birini kullandığımızı varsayalım). Yapmak istediğimiz
uygulamaya ve mikrodenetleyicimize göre kodumuzu yazarız.

2) Kodu derleyip, hex dosyası oluşturduktan sonra hex dosyasını PIC e
yükleyecek olan ve yukarıda da aracı yazılım olarak bahsettiğimiz
yazılımı çalıştırırız.

3) Mikrodenetleyicimizi PIC Programlama cihazına yerleştirdiysek
yazdığımız kodun hex uzantılı dosyasını bu yazılım aracılığıyla PIC
imize yükleyebiliriz ve artık PIC i programlama cihazından söküp
devremizde kullanabiliriz. Bu 3 adımda bilgisayarla ilgili olan kısmı
geride bırakmış oluyoruz. Artık PIC i devremizde çalıştırabiliriz.

Ancak tüm bunları sağlamak ve hatasız uygulamalar geliştirmek yeni
başlayan arkadaşlar için epeyce zor olacaktır. Bu yüzden en uygun
başlama yönteminin simülasyon programlarıyla olduğunu düşünüyorum.
Simülasyon programı kullandığımız durumda yukarıdaki listenin donanım
bölümündeki 1)”Herhangi bir model PIC Mikrodenetleyicisi”
2)”PIC Programlama Cihazı” maddelerinden kurtuluyoruz ve daha da
önemlisi yanlış bağlantılarla yanabilecek donanım veya çalışmayı
önleyebilecek donanım hatalarından kurtuluyoruz.

Yazılım çevresinde elektronik simülasyonu yapan bir çok program var
ancak PIC simülasyonu yapabilen pek yok. PIC simülasyonu yapan ve benim
de kullandığım PROTEUS adında gayet güzel bir simülasyon programı var.
(PIC simülasyonunu mümkün kılan programların özelliği yazdığınız
kodları bu programlar sayesinde bilgisayar ortamında PIC e yükleme ve
çalıştırma imkanı vermesidir. )
Bu işlemleri fiilen yapmak istediğimizde 1. PIC i programlamak için bir
takım işlemler 2. çalıştırmak için birtakım işlemler yapmak
durumundasınız, ancak simülasyon programları sayesinde programlamak
için PIC inize sağ tıklayıp derleme sonucu oluşan hex dosyasını kaynak
olarak göstermek, çalıştırmak için de simülasyon programınızın çalıştır
düğmesine basmak yeterli olacaktır.

PIC programlamak için gereken asgari gereçlerin yeni bir listesini yapmamız gerekirse;
1) Yazacağınız kodları derleyip, hex dosyasına çevirecek derleyici.
(Seçeceğiniz dile göre değişir, PIC C Dili, PIC Basic dilleri için
derleyiciler internette mevcut)
2) Proteus Simülasyon Programı
olacaktır.

Bu şekilde PIC programlama dünyasına hızlı giriş yapabilirsiniz, bu
işlemlere illa da fiilen başlamak istiyorsanız bir kaç denemeden sonra
yine simülasyon ortamına döneceksiniz çünkü yazdığınız kodları gerçek
bir PIC de denemeniz için gereken işlemler sürekli yapıldığında çok can
sıkıcı olur, genelde kodumuzdan emin olduğumuzda son işlem olarak
gerçek PIC e yükleme yaparız, ha bir aksilik olursa en fazla bir kaç
defa değiştirip yükleriz. Kod geliştirme işlemini simülasyon üzerinden
ilerletiyoruz son aşamada gerçek bir PIC e yüklüyoruz (hazır olduğunu
düşündüğümüzde), bu her seviyeden PIC programcısı için böyledir.

Arkadaşlar şimdilik bu kadar, yeni başlayacak arkadaşlara yardımcı olmaya çalıştım, umarım faydalı olmuştur.


alıntıdır.
FaTaL
FaTaL
Yönetici
Yönetici

Erkek
Başak Horoz
Mesaj Sayısı : 2005
Yaş : 30
Nerden : Geldik Bu Dünyaya!!!
İş/Hobiler : Web & 3D Tasarım
Lakap : FaTaL / FeDo
Ruh Hali : PIC Programlamaya Nasıl Başlamalı? Yogun10
Rep : 945
Kayıt tarihi : 06/02/08

https://f3do.yoo7.com

Sayfa başına dön Aşağa gitmek

Sayfa başına dön

- Similar topics

 
Bu forumun müsaadesi var:
Bu forumdaki mesajlara cevap veremezsiniz