| Bu ay, gazetede yeni bir yazı dizisi olarak geçen ay başlayan Sn.Adnan
IŞIK’ın pic 16f877 açıklamalarına yardımcı olacak bir PIC16F877 uygulaması
yayınlayayım dedim.
Pic 16f877 birçok bakımdan oldukça gelişmiş bir işlemcidir. Pic16f84
bu güne kadar birçok amatöre hızlı programlanabilmesi ile olanak tanısa
da yan peripheralleri çok kısıtlı bir işlemci olarak dışarıdan birçok şeyi
sizin bağlamanızı gerektiriyordu. En büyük eksiği bir A/D dönüştürücüyü
içinde ihtiva etmemesi idi. PIC 16F877 ile ilgili detayları Sn. Adnan IŞIK’ın
yazısından okumanızı tavsiye ederim.
Biz bu ay pic16f877’nin A/D özelliği ile ilgilineceğiz. Bir termometre
uygulaması ile A/D dönüştürücüyü kullanarak basit bir LCD ekranlı ev termometresi
yapacağız. LM35 national firmasının ürettiği ve piyasada rahatça bulunan
bir ısı sensörüdür. LM35 çıkışında sıcaklığa bağlı olarak değişen linear
bir gerilim üretir. Bu gerilim 10mv/C şeklinde değişir. Yani sıcaklığın
arttığı her derece için gerilim 10 milivolt artar. LM35 çıkışını bir A/D
dönüştürücüye verip bu voltajı anlık okuyarak ve bir LCD göstergede göstererek
termometremizi yaparız... Kulağa hoş ve kolay geliyor değil mi? Hatta
bazılarınızın “Yahu 16f877 böyle bir proje için büyük ve pahalı değil mi?
PIC16C71’in nesi var?” dediğinizi de duyar gibiyim.
Bu projeyi pic16C71 ile gerçekleştirdiğimizi varsayalım. Bu durumda
elimizde 8 bitlik A/D dönüştürücüsü olan bir işlemci olacak. 8 bitlik A/D
dönüştürücü 5 volt / 255 =0.0196 voltluk yani 20 milivoltluk adımlarla
sonucu bize gösterebilecektir. LM35 ise her derece için 10 milivoltluk
artışla sonucu voltaj cinsinden ifade eder. Eğer 8 bitlik PIC16C71 kullanırsak
her iki derecede bir gösteren termometre yapmış oluruz ki bence bunu yapmayıp
Dijital ölçü aletimizi termometre olarak LM35’le kullanalım 1 derecelik
adımlı daha hassas sonuç alırız.
PIC16F877’nin üstünlüğü burada A/D dönüştürücüsünde kendini gösteriyor.
PIC16F877 10 bitlik bir A/D ‘ye sahip.10 bit , 5 Volt / 1024 = 0,00485
volt yani yaklaşık 5 milivoltluk bir hassasiyet demektir. LM35, 10 milivoltluk
adımlarla gittiğine göre biz 0.5 derece hassasiyeti kolayca elde ederiz.
Bu nedenden ötürü PIC16C71 veya 8 bitlik A/D’ler lm35 ile direkt kullanıma
uygun değildir. Eğer bir Opamp ile LM35 voltajını 10 veya 100 gibi bir
kat sayı ile çarparsanız o zaman rahatıkla hassiyeti 8 bitlik A/D’ler için
uygun hale getirirsiniz.
Yukarıdaki şemaya tıklayarak daha
büyük görebilirsiniz.
Devremiz şemadan görüleceği gibi oldukça basit. LM35 transistör şeklinde
gösterilse de bir transistör değildir. LM35 bacak bağlantıları ve özelliklerini
LM35.PDF
dosyasından bakın. PIC 16F877 hex dosyasını termo.zip
dosyası içinde bulacaksınız.
Şimdi en önemli konuya PIC16F877 programlama konusuna gelelim. Mart2000
sayısında verdiğim programlayıcı bu iş için uygun DEĞİLDİR...!!!
Ya Microchip PICSTART PLUS veya sizin bulacağınız herhangi bir PIC16F877
programlayabilen programlayıcı ile bu işi yapmanız lazım.
LCD gösterge hitachi HD44780 veya Samsung KS0066 tip bir LCD kontrol
işlemcisi ihtiva eden herhangi bir 2 satır LCD alfanümerik modül olabilir.
Bu ay PIC16F877 ile LM35 ısı sensörü entegresini kullanarak bir LCD
göstergeli 0-150 derece arasını ölçen termometre yaptık, darısı gelecek
ayın başına...
Başarılar..
|