T.C. KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ BÖLÜMÜ GRAFİK SIVI KRİSTAL EKRANLI SAYISAL TERMOMETRE

Benzer belgeler
T.C. KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ BÖLÜMÜ TEK RENK GRAFİK LCD İLE OYUN UYGULAMASI

BÖLÜM Mikrodenetleyicisine Giriş

Adres Yolu (Address Bus) Bellek Birimi. Veri Yolu (Databus) Kontrol Yolu (Control bus) Şekil xxx. Mikrodenetleyici genel blok şeması

İçİndekİler. 1. Bölüm - Mİkro Denetleyİcİ Nedİr? 2. Bölüm - MİkroDenetleyİcİlerİ Anlamak

RF İLE ÇOK NOKTADAN KABLOSUZ SICAKLIK ÖLÇÜMÜ

MEB YÖK MESLEK YÜKSEKOKULLARI PROGRAM GELİŞTİRME PROJESİ. 1. Tipik bir mikrobilgisayar sistemin yapısı ve çalışması hakkında bilgi sahibi olabilme

B.Ç. / E.B. MİKROİŞLEMCİLER

1. Ders Giriş. Mikroişlemcili Sistem Uygulamaları

EEM 419-Mikroişlemciler Güz 2017

Mikroişlemci Nedir? Mikrodenetleyici Nedir? Mikroişlemci iç yapısı Ders Giriş. Mikroişlemcili Sistem Uygulamaları

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

İÇİNDEKİLER 1. KLAVYE KLAVYE RB KLAVYE RBHIGH DİSPLAY... 31

8051 Ailesi MCS51 ailesinin orijinal bir üyesidir ve bu ailenin çekirdeğini oluşturur çekirdeğinin temel özellikkleri aşağıda verilmiştir:

PIC Kontrollü LED Sürücü Devresi

CUMHURİYET MESLEKİ VE TEKNİK ANADOLU LİSESİ BİLİŞİM TEKNOLOJİLERİNİN TEMELLERİ DERSİ DERS NOTLARI BELLEKLER

EEM 419-Mikroişlemciler Güz 2016

Hacettepe Robot Topluluğu

8051 Ailesi MCS51 ailesinin orijinal bir üyesidir ve bu ailenin çekirdeğini oluşturur çekirdeğinin temel özellikkleri aşağıda verilmiştir:

DERS 5 PIC 16F84 PROGRAMLAMA İÇERİK. PIC 16F84 bacak bağlantıları PIC 16F84 bellek yapısı Program belleği RAM bellek Değişken kullanımı Komutlar

Çalışma Açısından Bilgisayarlar

Bir mikroişlemci temel olarak üç kısımdan oluşur. Bunlar merkezi işlem birimi (CPU), giriş çıkış birimi (G/Ç) ve bellektir.

Sistem Programlama. Kesmeler(Interrupts): Kesme mikro işlemcinin üzerinde çalıştığı koda ara vererek başka bir kodu çalıştırması işlemidir.

DOKUMANLAR

B.Ç. / E.B. MİKROİŞLEMCİLER

MİKRODENETLEYİCİLER. Yrd.Doç.Dr. İlker ÜNAL

BÖLÜM 1: MİKRODENETLEYİCİLER

Mikroişlemciler. Alper Bayrak Abant İzzet Baysal Üniversitesi Bolu

Embedded(Gömülü)Sistem Nedir?

Mikroişlemcili Sistemler ve Laboratuvarı

DC motorların sürülmesi ve sürücü devreleri

Bu yürütme, Prof. Dr. Hakan ÜNDİL (Bir haftalık derse ait ders notudur)

HAFTA 1 KALICI OLMAYAN HAFIZA RAM SRAM DRAM DDRAM KALICI HAFIZA ROM PROM EPROM EEPROM FLASH HARDDISK

Ders devam zorunluluğu bulunmaktadır ve 2 hafta derse katılmayan öğrenci devamsızlıktan kalacaktır.

PIC KULLANARAK GÜÇ KARSAYISI ÖLÇÜM DEVRESİ TASARIMI VE SİMÜLASYON

PIC 16F877 nin kullanılması

4-Deney seti modüler yapıya sahiptir ve kabin içerisine tek bir board halinde monte edilmiştir.

PIC16F877A nın Genel Özellikleri

PIC Mikrodenetleyicileri

GAZİANTEP ÜNİVERSİTESİ

Bilgisayar Donanım 2010 BİLGİSAYAR

Haftalık Ders Saati Okul Eğitimi Süresi

BİLGİSAYAR SİSTEMLERİ

William Stallings Computer Organization and Architecture 9 th Edition

PIC Programlama. Devrim Çamoğlu

8. MİKROİŞLEMCİ MİMARİSİ

(Random-Access Memory)

PROGRAMLANABİLİR LOJİK DENETLEYİCİ İLE DENEYSEL ENDÜSTRİYEL SİSTEMİN KONTROLÜ

Teorik Bilgi DENEY 7: ASENKRON VE SENKRON SAYICILAR

KONTROL VE OTOMASYON KULÜBÜ

Mikroişlemcili Sistemler ve Laboratuvarı 5.HAFTA:BÖLÜM-1

MİKROİŞLEMCİ MİMARİLERİ

T.C. NİĞDE ÜNİVERSİTESİ MÜHENDİSLİK-MİMARLIK FAKÜLTESİ ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ. Uzaktan Kumanda Edilen Lamba Dimmer inin Gerçekleştirilmesi

Mikroişlemciler Dersi. PIC Mikro denetleyiciler ve Programlama

KANPUR/microcontrollers/micro/ui/Course_home3_16.htm Yrd.Doç. Dr.

Bilgisayar Mimarisi ve Organizasyonu Giriş

Çizgi İzleyen Robot Yapımı

MİKROİŞLEMCİ (MİKROPROSESÖR - CPU) NEDİR? Prof. Dr. Hakan ÜNDİL (Bir haftalık derse ait ders notudur)

TIMER. SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ

DERS 12 PIC 16F84 ile KESME (INTERRUPT) KULLANIMI İÇERİK

Mikrobilgisayar Sistemleri ve Assembler

DONANIM KURULUMU. Öğr. Gör. Murat YAZICI. 1. Hafta.

Günümüz. Intel Core i nm teknolojisi 1.86 Milyar tranzistör. Intel Core i nm teknolojisi 1.4 Milyar tranzistör

İşletim Sistemleri (Operating Systems)

İŞLEMCİLER (CPU) İşlemciler bir cihazdaki tüm girdilerin tabii tutulduğu ve çıkış bilgilerinin üretildiği bölümdür.

EEM 306 Mikroişlemciler ve Lab. Doç.Dr. Mehmet SAĞBAŞ

PLC (Programlanabilir Lojik. Denetleyici)

Mikrobilgisayar Donanımı

ANAKART (MOTHERBOARD)

SPARC v8 İŞLEMCİ SİMÜLASYONU

Bahar Dönemi. Öğr.Gör. Vedat MARTTİN

T.C. ERCİYES ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ MEKATRONİK MÜHENDİSLİĞİ BÖLÜMÜ MEKATRONİK LABORATUVARI 1. PIC MİKRODENETLEYİCİSİ ve UYGULAMALARI

Mikroişlemci: Merkezi işlem biriminin fonksiyonlarını tek bir yarı iletken tümleşik devrede birleştiren programlanabilir sayısal elektronik devre

RADYO FREKANSIYLA KABLOSUZ SICAKLIK KONTROLÜ WIRELESS TEMPERATURE CONTROL BY RADIO FREQUENCY

Operatör panelleri FED

MİKROİŞLEMCİ (Microprocessor) NEDİR?

Erzurum Teknik Üniversitesi RobETÜ Kulübü Robot Eğitimleri. ARDUİNO EĞİTİMLERİ I Arş. Gör. Nurullah Gülmüş

MİKROİŞLEMCİLER. Mikroişlemcilerin Tarihsel Gelişimi

Öğr.Gör. Dr. Bülent ÇOBANOĞLU

Bahar Dönemi. Öğr.Gör. Vedat MARTTİN

BİLGİSAYAR DONANIMI KONU: ANAKART RAM-ROM ADI: KÜBRA SOYADI: ŞAHİN NO: SINIFI:1/B ADI: SELMA SOYADI: ÇELİK NO: SINIFI:1/B

İÇİNDEKİLER. 1-1 Lojik ve Anahtara Giriş Lojik Kapı Devreleri... 9

PIC16F877 Mikrodenetleyicisi İle Uzay Vektör PWM İşaretlerinin Üretilmesi

Eğitim - Öğretim Yöntemleri Başlıca öğrenme faaliyetleri Kullanılan Araçlar Dinleme ve anlamlandırma

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN

Dr. Feza BUZLUCA İstanbul Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü

PIC Mikro denetleyiciler ve Programlama. Öğr.Gör.Bülent ÇOBANOĞLU

EasyPic 6 Deney Seti Tanıtımı

DERS 11 PIC 16F84 ile ALT PROGRAMLARIN ve ÇEVRİM TABLOLARININ KULLANIMI İÇERİK. Alt Program Çevrim Tabloları Program Sayıcı ( Program Counter PC )

Mikroişlemcili Sistemler ve Laboratuvarı 6.Hafta

BM-311 Bilgisayar Mimarisi. Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü

MİLLİ SAVUNMA ÜNİVERSİTESİ KARA HARP OKULU DEKANLIĞI BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ DERS TANITIM BİLGİLERİ

DERS 3 MİKROİŞLEMCİ SİSTEM MİMARİSİ. İçerik

1 GİRİŞ 1 Bu Kitap Kimlere Hitap Eder 1 Kitabın İşleyişi 2 Kitabın Konuları 3 Kitabı Takip Etmek İçin Gerekenler 6 Kaynak Kodu ve Simülasyonlar 6

MC6800. Veri yolu D3 A11. Adres yolu A7 A6 NMI HALT DBE +5V 1 2. adres onaltılık onluk bit 07FF kullanıcının program alanı

Bilgisayar Mimarisi Nedir?

Bilgisayarların Gelişimi

DONANIM. 1-Sitem birimi (kasa ) ve iç donanım bileşenleri 2-Çevre birimleri ve tanımlamaları 3-Giriş ve çıkış donanım birimleri

DERS 7 PIC 16F84 PROGRAMLAMA İÇERİK. PIC 16F84 örnek programlar Dallanma komutları Sonsuz döngü

Anakart ve Bileşenleri CPU, bellek ve diğer bileşenlerinin bir baskı devre (pcb) üzerine yerleştirildiği platforma Anakart adı

ESM-361 Mikroişlemciler. 1. Hafta Ders Öğretim Üyesi Dr.Öğr.Üyesi Ayşe DEMİRHAN

Transkript:

T.C. KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ BÖLÜMÜ GRAFİK SIVI KRİSTAL EKRANLI SAYISAL TERMOMETRE BİTİRME ÇALIŞMASI Hazırlayanlar: Gürhan YILMAZ 077488 Hacı SALİH YAŞA 149866 BAHAR 2011 TRABZON

T.C. KARADENĠZ TEKNĠK ÜNĠVERSĠTESĠ MÜHENDĠSLĠK FAKÜLTESĠ ELEKTRĠK-ELEKTRONĠK MÜHENDĠSLĠĞĠ BÖLÜMÜ GRAFĠK SIVI KRĠSTAL EKRANLI SAYISAL TERMOMETRE BĠTĠRME ÇALIġMASI Hazırlayanlar: Gürhan YILMAZ 077488 Hacı Salih YAġA 149866 Tez DanıĢmanı: Öğr. Gör. Oğuzhan ÇAKIR MAYIS 2011 TRABZON

ÖNSÖZ Bu çalışmada LM35 sıcaklık algılayıcısı ve WG12864B grafik LCD ekranı kullanılarak sayısal bir termometre gerçekleştirilmiştir. Sistemin kontrolü PIC16F877A mikrodenetleyicisi ile şematik ve baskı devre çizimleri Eagle v5.11 programıyla yapılmıştır. Sistem yazılımı Hi Tech PIC C v9.80 editörü ile hazırlanmıştır. Çalışmalarımız boyunca bize değerli zamanını ayıran ve verdiği fikirler ile bizi yönlendiren hocamız Sayın Öğr. Gör. Oğuzhan ÇAKIR a teşekkür ederiz. Ayrıca hayatımız boyunca her türlü maddi ve manevi desteklerini hiçbir zaman esirgemeyen ailelerimize şükranlarımızı sunarız. Gürhan YILMAZ, Hacı Salih YAŞA Trabzon, 2011 II

İÇİNDEKİLER Sayfa No ÖNSÖZ.. II İÇİNDEKİLER.. III ÖZET. IV ŞEKİLLER DİZİNİ... V TABLOLAR DİZİNİ. VI SEMBOLLER DİZİNİ.. VII 1. Genel Bilgiler... 1 1.1. Mikrodenetleyiciler.. 1 1.1.1. Mikrodenetleyiciler Hakkında Genel Bilgiler. 1 1.2. PIC Mikrodenetleyiciler... 2 1.1.1. PIC Mikrodenetleyicilerinin Kullanımı İçin Gerekli Aşamalar 2 1.1.2. Mikrodenetleyicilerinin Genel Özellikleri 4 1.2.3. PIC Mikrodenetleyicilerinin İç Yapısı... 5 1.2.4. Elektrikle Silinebilen Mikrodenetleyiciler 7 1.3. PIC 16F877A Mikrodenetleyicisi. 7 1.3.1. PIC 16F877 nin Belirleyici Özellikleri... 8 1.3.2. Bellek Organizasyonu... 9 1.4. MPLAB Editörü. 10 1.5. WG12864 Tek Renk Grafik Sıvı Kristal Ekran. 10 1.6. LM35. 11 1.7. 1.8. 7805 Sabit Gerilim Regülatörü... İş Planı... 12 13 2. Yapılan Çalışmalar, Bulgular ve Tartışma... 14 2.1. Giriş.. 14 3. SONUÇLAR. 16 4. ÖNERİLER... 17 5. KAYNAKLAR. 18 III

ÖZET Ortam sıcaklığının ölçülmesinde farklı firmalara ait değişik algılayıcılar kullanılmaktadır. Bu çalışmada kullanımı ve temini kolay, maliyeti düşük National firmasının LM35 sıcaklık algılayıcısı kullanılmıştır. Bu algılayıcı ºC başına 10mV çıkış gerilimi üretmekte olup, sıcaklık algılaması için fazlasıyla yeterlidir. Elde edilen analog sıcaklık bilgisi Microchip firmasının PIC16F877A mikrodenetleyicisi ile sayısala dönüştürülmekte ve grafik ekranda hem rakamsal hem de grafiksel olarak gösterilmektedir. Sıcaklık grafiği WinStar firmasının 128x64 piksel çözünürlüklü grafik ekranında oluşturulmaktadır. Anahtar Kelimeler: Sıcaklık Algılayıcıları, Mikrodenetleyiciler, Grafik LCD Ekranlar. IV

ŞEKİLLER DİZİNİ Sayfa No Şekil 1. WG12864B Tek Renk Grafik Sıvı Kristal Ekran... 10 Şekil 2. LM35 Sıcaklık Algılayıcısı... 12 Şekil 3. 7805 Sabit Gerilim Regülatörü. 12 Şekil 4. Şematik Çizim... 14 Şekil 5. Baskı Devre Çizimi.. 14 Şekil 6. Devrenin Genel Görünümü... 15 Şekil 7. Ekran Görüntüsü.. 15 V

TABLOLAR DİZİNİ Sayfa No Tablo 1. İş planı.. 13 VI

SEMBOLLER DİZİNİ A : Amper EPROM : Silinebilir Sadece Okunabilir Hafıza EEPROM : Elektrikle Silinebilir Sadece Okunabilir Hafıza ALU : Aritmetik Lojik Birim I/O : Giriş / Çıkış khz : Kilo Hertz MHz : Mega Hertz PIC : Genlik çözünürlüğü RAM : Amper V : Volt WDT : Bekçi Köpek Zamanlayıcısı XT : Kristal µ : Mikro VII

1. Genel Bilgiler Bu bölümde, çalışmada kullanılan Mikrodenetleyiciler, PIC Mikrodenetleyiciler, PIC 16F877A, MPLAB Editörü, WG12864 Tek Renk Grafik Sıvı Kristal Ekran, Lm35, 7805 Sabit Gerilim Regülatörü hakkında teorik bilgiler bulunmaktadır. 1. 1. Mikrodenetleyiciler RAM I/O biriminin tek bir chip içerisinde üretilmiş biçimidir. Mikrodenetleyiciler, bilgisayar teknolojisi gerektiren uygulamalarda kullanılmak üzere tasarlanmış olup mikroişlemcilere göre çok daha basit ve ucuzdur. Günümüz mikrodenetleyicileri pek çok alanda kullanılmaktadır. Örneğin otomobillerde, kameralarda, cep telefonlarında, fax-modem cihazlarında, fotokopi vb. birçok alanda kullanılmaktadırlar [1]. 1. 1. 1. Mikrodenetleyiciler Hakkında Genel Bilgiler Hemen hemen her mikroişlemci (CPU) üreticisinin ürettiği birkaç mikrodenetleyicisi bulunmaktadır. Bu denetleyicilerin mimarileri arasında çok küçük farklar olsa da aşağı yukarı aynı işlemi yapabilmektedirler. Her firma ürettiği chip'e bir isim ve özelliklerini birbirlerinden ayırmak için de parça numarası vermektedir. Örneğin Microchip ürettiklerine PIC adım, parça numarası olarak da 12C508, 16C84, 16F84, 16C711 gibi kodlamalar verir. Intel ise ürettiği mikrodenetleyicilere MCS-51 ailesi adını vermektedir. Mikrodenetleyici ailesinde farklı özellikleri bulunan ürünleri birbirinden ayırt etmek için parça numarası olarak da 8031 AH, 8051 AH, 8751AHP, 8052AH, 80C51FA gibi kodlamalar kullanılmaktadır. Bir uygulamaya başlamadan ürün seçerken hangi firma seçileceğine, daha sonra da hangi numaralı denetleyicinin kullanılacağına karar vermek gerekir. Bunun için aşağıda mikrodenetleyici gerektiren uygulamada önceden bilinmesi gereken özelliklerden bazıları sıralanmıştır. Programlanabilir dijital paralel giriş/çıkış. Programlanabilir analog giriş/çıkış. Seri giriş/çıkış (senkron, asenkron ve cihaz denetimi gibi).

2 1.2. PIC Mikrodenetleyiciler PIC kelime anlamı olarak PERIPHERAL INTERFACE CONTROLLER giriş-çıkış işlemcisidir. 16 Bitlik ve 32 bitlik büyük işlemciler, giriş ve çıkışlarındaki yükü azaltmak ve denetlemek amacıyla, çok hızlı ve ucuz bir çözüme ihtiyaç duyulduğu için, ilk olarak 1994 yılında geliştirilmiştir [2]. PIC mikrodenetleyicilerin tercih sebepleri şunlardır: Lojik uygulamalarının hızlı olması. Ucuz olması. 8 Bitlik mikrokontroller olması ve bellek ve veri için ayrı yerleşik bus'ların kullanılması. Veri ve belleğe hızlı erişim sağlanması. Diğer mikrokontrolörlerde PIC e göre veri ve programı taşıyan bir tek bus bulunması, dolayısıyla PIC in diğer mikrokontrolörlerden iki kat daha hızlı olması. Giriş/çıkış elemanı herhangi bir ek bellek gerektirmeden kondansatör ve bir direnç ile çalışabilmeleri. Yüksek frekanslarda çalışabilmesi. Standby durumunda çok düşük akım çekmesi. 14 Bit komut işleme hafızası ve intterrupt kapasitesi. Kod sıkıştırma özelliği ile aynı anda birden çok işlem gerçekleştirebilmesi. PIC mikrokontrolörleri çeşitli özelliklerine göre PIC16C6X, 16C7X, 16C5X,16F8X, 16F87X gibi gruplara ayrılırlar. 1.2.1. PIC Mikrodenetleyicilerinin Kullanımı İçin Gerekli Aşamalar I/O(Giriş/Çıkış): Girdi ve çıktı şeklinde ayarlanabilen bir bağlantı pini olup, mikrokontrolcünün dış dünya ile ilişkisini sağlar. I/O çoğunlukla mikrokontrolcünün iletişim kurmasına, kontrol etmesine veya bilgi okumasına izin verir. Yazılım: Mikrokontrolcünün çalışmasını ve işletilmesini sağlayan bilgidir. Başarılı bir uygulama için yazılım hatasız (bug) olmalıdır. Yazılım C, Pascal veya Assembler gibi çeşitli dillerde veya ikilik (binary) olarak yazılabilir.

3 Donanım: Mikrokontrolcü, bellek, arabirim bileşenleri, güç kaynakları, sinyal düzenleyici devreler ve bunları çalıştırmak ve ara birim görevini üstlenmek için bu cihazlara bağlanan tüm bileşenlerdir. Simülatör: PC üzerinde çalışmakta olan ve mikrokontrolcünün içindeki işlemleri simüle eden MPSIM gibi bir yazılım paketidir. Eğer hangi olayların ne zaman meydana geldiği biliniyorsa kullanmak tasarımları test etmek için, bir simülatör kullanmak kolay bir yoldur. Öte yandan simülatör, programın tümünü veya adım adım izleyerek bug'lardan arındırma fırsatı sunar. Şu anda en gelişmiş simülatör programı Microchip firmasının geliştirdiği MPLAB programıdır. ICE: PIC MASTER olarak da adlandırılır. (in- Circuit Emulator / İç devre takipçisi) PC ve Mikrokontrolcünün yer alacağı soket arasına bağlanmış olan ve yazılım, bilgisayar üzerinde çalışırken devre kartı üzerinde bir mikrokontrolcü gibi davranan yararlı bir gereçtir. ICE, bir programa girilmesini, mikro içinde neler olduğunu ve dış dünyayla nasıl iletişim kurulduğunun izlenilmesini sağlar. Programcı: Yazılımın, mikrokontrolcü belleğinde programlamasını ve dolayısıyla ICE'nin yardımı olmadan çalışmasını sağlayan bir birimdir. Çoğunlukla seri port a (örneğin PICSTAET, PROMASTER) bağlanan bu birimler çok çeşitli biçim, ebat ve fiyatlara sahiptir. Kaynak Dosyası: Hem asembler'in hem de tasarımcının anlayabileceği dilde yazılmış bir programdır. Kaynak dosya mikrokontrolörün anlayabilmesi için önceden assemble edilmiş olmalıdır. Assembler: Kaynak dosyayı bir nesne dosyaya dönüştüren yazılım paketidir. Hata araştırma bu paketin yerleşik bir özelliğidir. Bu özellik assemble edilme sürecinde hatalar çıktıkça programı bug lardan arındırırken kullanılır. MPASM, tüm PIC ailesini elinde tutan Microchip'in son assemble edicisidir. Nesne dosyası (object file): Assembler tarafından üretilen bu dosya; programcı, simülatör veya ICE'nin anlayabilecekleri ve böylelikle dosyanın işlevlerinin çalışmasını sağlayabilecekleri bir dosyadır. Dosya uzantısı assemble edicinin emirlerine bağlı olarak,.obj veya.hex olur.

4 1.2.2. PIC Mikrodenetleyicilerinin Özellikleri Güvenilirlik: PIC komutları bellekte çok az yer kaplayarak 12 veya 14 bitlik bir program bellek sözcüğüne sığarlar. Harvard mimarisi teknolojisi kullanılmayan mikrokontrolörlerde yazılım programının veri kısmına atlama yapılarak bu verilerin komut gibi çalıştırılması sağlanmaktadır. Fakat bu durum büyük hatalara yol açmaktadır. PIC ler de bu durum engellenmiştir. Hız: Her bir komut döngüsü 1µsn için oldukça hızlı bir mikrokontrolördür. Örneğin 5 milyon komutluk bir programın 20Mhz'lik bir kristalle işletilmesi yalnız 1sn sürer. Bu süre 386SX33 hızının yaklaşık 2 katıdır. Ayrıca RISC mimarisi işlemcisi olmasının hıza etkisi oldukça büyüktür. Komut seti: PIC in 16C5X ailesinde bir yazılım yapmak için 33 komuta ihtiyaç duyarken 16CXX araçları için bu sayı 35'tir. PIC tarafından kullanılan komutların hepsi yazmaç (register) temellidir. Komutlar 16C5X ailesinde 12 bit, 16CXX ailesindeyse 14 bit uzunluğundadır. PIC'te CALL, GOTO ve bit test eden BTFSS ve INCFSZ gibi komutlar dışında diğer komutlar 1 saykıl çeker. Belirtilen komutlar ise 2 saykıl çeker. Statik İşlem: PIC tamamıyla statik bir işlemcidir. Yani saat durdurulduğunda da tüm yazma içeriği korunur. Pratikte bunu tam olarak gerçekleştirebilmek mümkün değildir. PIC mikrosu programı işletilmediği zaman uyuma (sleep) moduna geçirilerek micro nun çok düşük akım çekmesi sağlanır. PTC uyuma moduna geçirildiğinde, saat durur ve PIC uyuma işleminden önce hangi durumda olduğunu çeşitli bayraklarla ifade eder. (elde bayrağı, 0 (zero) bayrağı... vb.) PIC uyuma modunda 1µA'den küçük değerlerde akım çeker. Sürme özelliği (Sürücü kapasitesi): PIC yüksek bir çıktı kapasitesine sahiptir. Tek bacaktan 40mA akım çekebilmekte ve entegre toplamı olarak 150mA akım akıtma kapasitesine sahiptir. Entegrenin 4mHz osilatör frekansında çektiği akım çalışırken 2mA, stand-by durumunda ise 2µA kadardır. Seçenekler: PIC ailesinde her türlü ihtiyaçların karşılanacağı çeşitli hız, sıcaklık, kılıf, I/O hatları, zamanlama (Timer) fonksiyonları, seri iletişim portları, A/D ve bellek kapasite seçenekleri bulunur. Çok yönlülük: PIC çok yönlü bir mikrodur ve ürünün içinde, yer darlığı durumunda birkaç mantık kapısının yerini değiştirmek için düşük maliyetli bir çözüm bulunur.

5 Güvenlik: PIC endüstride en üstünler arasında yer alan bir kod koruma özelliğine sahiptir. Koruma bitinin programlanmasından itibaren, program belleğinin içeriği, program kodunun yeniden yapılandırılmasına olanak verecek şekilde okunmaz. Geliştirme: PIC program geliştirme amacıyla programlanabilip tekrar silinebilir özelliğine sahiptir. (EPROM, EEPROM) Aynı zamanda seri üretim amacıyla bir kere programlanabilir (OTP) özelliğine sahiptir. Liste dosyası: Assembler tarafından yaratılan ve kaynak dosyadaki tüm komutları hexadecimal sistemdeki değerleri ve tasarımcının yazmış olduğu yorumlarıyla birlikte içeren bir dosyadır. Bir programı bug lardan arındırırken araştırılacak en yararlı dosya budur. Çünkü bu dosyayı izleyerek yazılımlarda neler olup bittiğini anlama şansı kaynak dosyasından daha fazladır. Dosya uzantısı. LST. Diğer dosyalar: Hata dosyası ( Error file: uzantısı.err) hataların bir listesini içerir. Ancak bunların kaynağı hakkında hiç bir bilgi vermez. Uzantısı.COD olan dosyalar emülatör tarafından kullanılırlar. Buglar: Tasarımcının farkında olmadan yaptığı hatalardır. Bu hatalar, basit yazılım hatalarından, yazılım dilinin yanlış kullanımına kadar uzanır. Hataların çoğu derleyici tarafından bulunur ve bir LST dosyasında görüntülenir. Kalan hataları bulmak ve düzeltmek de geliştiriciye düşer. 1.2.3. PIC Mikrodenetleyicilerinin İç Yapısı CPU bölgesinin kalbi ALU'dur. (Aritmetic Logic Unit-Aritmetik mantık birimi) ALU, W (Working-Çalışan) adında bir yazmaç içerir. PIC, diğer mikroişlemcilerden, aritmetik ve mantık işlemleri için bir tek ana yazmaca sahip oluşuyla farklılaşır. W Yazmacı 8 bit genişliğindedir ve CPU'da ki herhangi bir veriyi transfer etmek üzere kullanılır. CPU alanında ayrıca iki kategoriye ayırabileceğimiz Veri Yazmaç dosyaları (Data Register Files) bulunur. Bu veri yazmaç dosyalarından biri, I/O ve kontrol işlemlerinde kullanılırken, diğeri RAM olarak kullanılır. PIC ler de Harvvard Mimarisi kullanılır. Hanvard mimarisi mikrokontrolcülerde veri akış miktarını hızlandırmak ve yazılım güvenliğini arttırmak amacıyla kullanılır. Ayrı busların kullanımıyla veri ve program belleğinde hızlı bir şekilde erişim sağlanır.

6 PIC Mikrokontrolör'lerini donanımsal olarak incelerken PIC 16F87X üzerinde durarak bu PIC'i temel alıp donanım incelenecektir. Bellek ve bazı küçük farklılıklar dışında burada anlatılanlar bütün PIC ler için geçerlidir. PIC 16F87X Serisi yüksek performanslı, CMOS, full-statik, 8 bit mikrodenetleyicidir. Tüm PIC 16/17 mikrodenetleyiciler RISC mimarisini kullanmaktadır. PIC16F87X mikroları birçok esas özelliklere sahiptir. 14 Seviyeli, derin küme ve çoklu iç ve dış kesme kaynaklarına sahiptir. 2 Aşamalı komut hattı tüm komutların tek bir saykıl ile (çevrimle) işlenmesini sağlamaktadır. Yalnızca bazı özel komutlar 2 saykıl çekerler. Bu komutlar dallanma komutlarıdır. PIC16F873/874 Microchip'i 192 bayt'lık RAM belleğine, 128 bayt EEPROM belleğine ve 22/33 (PIC 16F873-22/ PIC 16F874-33) I/O pinine sahiptir. Bunun yanı sıra, timer ve sayaç da mevcuttur. PIC16F87X Ailesi dış elemanları azaltacak spesifik özelliklere sahiptir ve böylece maliyet minimuma inmekte, sistemin güvenirliği artmakta, enerji sarfiyatı azalmaktadır. Bunun yanı sıra tüm PC lerde 4 adet osilatör seçeneği mevcuttur. Bunlarda tek pinli RC osilatör, düşük maliyet çözümünü sağlamakta (4 MHZ), LP osilatör (Kristal veya seramik rezonatör), enerji sarfiyatını minimize etmekte (asgari akım) (40 KHZ), XT kristal veya seramik rezonatör osilatörü standart hızlı ve HS kristal veya seramik rezonatörlü osilatör çok yüksek hıza sahiptir. (20 MHZ) PIC mikrokontrolörlerinin en büyük özelliği sleep modu özelliğidir. Bu mod ile PIC işlem yapılmadığı durumlarda uyuma moduna geçerek çok düşük akım çeker. Kullanıcı bir kaç iç ve dış kesmelerle PIC'i uyuma modundan çıkarabilmektedir. Yüksek güvenilirlikli Watchdog Timer kendi bünyesindeki chip üstü RC osilatörü ile yazılımı kilitlemeye karşı korumaktadır. PIC16F87X EEPROM program belleği, aynı aygıt paketinin orjinali ve üretimi için kullanılmasına olanak vermektedir. Yeniden programlanabilirliği mikroyu uygulamanın sonundan kaldırmadan kodu güncelleştirmeye izin vermektedir. Bu aygıtın kolayca erişilemediği, fakat prototipinin kod güncelleştirmesi gerekli olduğu durumlarda, birçok uygulamanın geliştirilmesinde yararlıdır. Bunun yanı sıra bu kodun güncelleştirilmesi diğer ayrı uygulamalarda da yararlıdır. PIC'ler yüksek hızlı otomobillerden, motor kontrolü uygulamaları, düşük enerji sarfiyatlı uzaktan çalışan sensörler, elektronik kilitler, güvenlik aygıtları ve akıllı kartlara kadar birçok uygulamalarda kullanılırlar. EEPROM teknolojisi uygulama programların (Transmitter kodlan, motor hızları, alıcı frekansları, güvenlik kodları vb.) uygulamasını son derece hızlı ve uygun hale getirmektedir. Küçük boyutlarıyla bu mikrodenetleyiciler alan sınırlaması bulunan uygulamalarda kusursuzdur. Düşük maliyet, düşük enerji sarfiyatı,

7 yüksek performans, kullanım kolaylığı ve I/O esnekliği daha önce kullanılması hiç düşünülmeyen alanlarda kullanılmasını sağlamaktadır. 1.2.4. Elektrikle Silinebilen Mikrodenetleyiciler Bu mikrolar, programının silinip yeniden yazılabilme özelliğine sahiptir ve oldukça düşük maliyetli plastik ambalajlar halinde bulunmaktadır. Aynı zamanda bu tip mikroların üretimi kadar prototipinin geliştirilmesi ve pilot programlar için kullanılmasına olanak sağlamaktadır. Bunun daha ötesindeki avantajlarından biri, bunların devre içi veya Microchip's PICSTARTplus veya PROMATE II programlayıcıları tarafından silinebilmesi ve yeniden programlanabilmesidir. 1.3. PIC16F877A Mikrodenetleyicisi PIC 16F877 yüksek performanslı, CMOS, full-statik, 8 bit mikrodenetleyicidir. Tüm PIC 16/17 mikrodenetleyicileri gibi PIC 16F877 de RISC mimarisini kullanmaktadır. PIC16F87X mikroları birçok esas 8Kxl4 Word luk flash program belleği mevcuttur. 368x8 Byte'lık data belleği; 256x8 Byte'lık EEPROM data belleği; PIC16C73B/74B/76/77 ile uyumlu pin yapısı; doğrudan ve dolaylı adresleme; Power-on Reset (POR), Power-up Timer (PWRT), üzerinde bulunan RC osilatör ile çalışan Watchdog Timer (WDT); Programlanabilen kod koruma; Enerji tasarrufu için uyku (SLEEP) modu; Düşük güçlü yüksek hızlı CMOSFLASH/EEPROM teknolojisi, tamamen statik dizayn; Devre üzerinde seri programlama; 5V'luk kaynak ile çalışma; 2V ile 5.5V arasında işlem yapabilme özelliği; Düşük güç harcaması.

8 1.3.1. PIC 16F877'nin Belirleyici Özellikleri Timer0: 8 Bit Pescaler'e sahip 8 bit zamanlayıcı/sayıcı, Timer1: Sleep modunda artış gösterebilen ve harici saat darbesiyle artırılabilen Prescaler'li 16 bit zamanlayıcı/sayıcı, Timer2: 8 Bit peryot kaydedicili, prescaler ve postscalerli 16 bit zamanlayıcı/sayıcı, İki adet tutma, karşılaştırma, PWM modülü 200ns çözünürlükte 16 bitlik karşılaştırma, 10 bit çözünürlükte PWM, 10 bit çok kanallı Analog-Dijital çevirici Seri port ve I2C modülleri, 9 bit adres saptamaya sahip US ART/SCI. 14 Seviyeli, derin küme ve çoklu iç ve dış kesme kaynaklarına sahiptir. 2 Aşamalı komut hattı tüm komutların tek bir saykıl ile (çevrimle) işlenmesini sağlamaktadır. Yalnızca bazı özel komutlar 2 saykıl çekerler. Bu komutlar dallanma komutlarıdır. PIC16F87X ailesi dış elemanları azaltacak spesifik özelliklere sahiptir ve böylece maliyet minimuma inmekte, sistemin güvenirliği artmakta, enerji sarfiyatı azalmaktadır. Bunun yanı sıra tüm PlC'lerde 4 adet osilatör seçeneği mevcuttur. Bunlarda tek pinli RC osilatör, düşük maliyet (4 MHZ), LP osilatör (Kristal veya seramik rezonatör), enerji sarfiyatını minimize etmekte (asgari akım) (40 KHZ), XT kristal veya seramik rezonatör osilatörü standart hızlı ve HS kristal veya seramik rezonatörlü osilatör çok yüksek hıza sahiptir (20 MHZ). PIC mikrodenetleyicilerinin en büyük özelliği sleep modu özelliğidir. Bu mod sayesinde işlem yapılmadığı durumlarda, PIC uyuma moduna geçerek çok düşük akım çeker. Kullanıcı birkaç iç ve dış kesmelerle PIC'i uyuma modundan çıkarabilmektedir. Yüksek güvenilirlikli Watchdog Timer kendi bünyesindeki çip üstü RC osilatörü ile yazılımı kilitlemeye karşı korumaktadır. PIC16F877 EEPROM program belleği, aynı aygıt paketinin orjinali ve üretimi için kullanılmasına olanak vermektedir. Yeniden programlanabilirliği mikroyu uygulamanın sonundan kaldırmadan kodu güncelleştirmeye izin vermektedir. Bu aygıtın kolayca erişilemediği, fakat prototipinin kod güncelleştirmesi gerekli olduğu durumlarda, birçok uygulamanın geliştirilmesinde yararlıdır. Bunun yanı sıra bu kodun güncelleştirilmesi diğer ayrı uygulamalarda da yararlıdır. 14 Seviyeli, derin küme ve çoklu iç ve dış kesme kaynaklarına sahiptir. 2 Aşamalı komut hattı tüm komutların tek bir saykıl ile (çevrimle) işlenmesini sağlamaktadır. Yalnızca bazı özel komutlar 2 saykıl çekerler. Bu komutlar dallanma komutlarıdır.

9 PIC16F87X ailesi dış elemanları azaltacak spesifik özelliklere sahiptir ve böylece maliyet minimuma inmekte, sistemin güvenirliği artmakta, enerji sarfiyatı azalmaktadır. Bunun yanı sıra tüm PlC'lerde 4 adet osilatör seçeneği mevcuttur. Bunlarda tek pinli RC osilatör, düşük maliyet (4 MHZ), LP osilatör (Kristal veya seramik rezonatör), enerji sarfiyatını minimize etmekte (asgari akım) (40 KHZ), XT kristal veya seramik rezonatör osilatörü standart hızlı ve HS kristal veya seramik rezonatörlü osilatör çok yüksek hıza sahiptir (20 MHZ). PIC mikrodenetleyicilerinin en büyük özelliği sleep modu özelliğidir. Bu mod sayesinde işlem yapılmadığı durumlarda, PIC uyuma moduna geçerek çok düşük akım çeker. Kullanıcı birkaç iç ve dış kesmelerle PIC'i uyuma modundan çıkarabilmektedir. Yüksek güvenilirlikli Watchdog Timer kendi bünyesindeki çip üstü RC osilatörü ile yazılımı kilitlemeye karşı korumaktadır. PIC16F877 EEPROM program belleği, aynı aygıt paketinin orjinali ve üretimi için kullanılmasına olanak vermektedir. Yeniden programlanabilirliği mikroyu uygulamanın sonundan kaldırmadan kodu güncelleştirmeye izin vermektedir. Bu aygıtın kolayca erişilemediği, fakat prototipinin kod güncelleştirmesi gerekli olduğu durumlarda, birçok uygulamanın geliştirilmesinde yararlıdır. Bunun yanı sıra bu kodun güncelleştirilmesi diğer ayrı uygulamalarda da yararlıdır. 1.3.2.Bellek Organizasyonu Her PIC mikrodenetleyicisinde 3 bellek bloğu bulunmaktadır. Bunlar program belleği, veri belleği ve bunları ayıran veri hattıdır. Her bir bellek kendi taşıyıcısına sahiptir. Böylece her bir bloğa erişim aynı osilatör süreci boyunca meydana gelebilmektedir. Bunun ötesinde, veri belleği genel amaçlı RAM ve özel fonksiyon kayıtları (SFR) olmak üzere ikiye bölünür. SFR'ler her bir bireysel özelleşmiş modülü ele alan bölümde açıklanan özel modülleri kontrol etmek için kullanılmaktadır. Veri belleği EEPROM veri belleğini de içermektedir. Bu bellek, direkt veri belleğine planlanmamış, fakat indirekt olarak planlanmıştır ve indirekt adres göstergeleri okumak/yazmak için EEPROM belleğinin adresini belirlemektedir.

10 1.4. MPLAB Editörü MPLAB Microchip'in ürettiği özel bir yazılımdır. Mikroişlemci için yazdığımız assembler kodların doğru çalışıp çalışmadığını anlamak için bu kodları mikroişlemciye yükleyip gerçek ortamda denemek gerekir ya da MPLAB gibi yazılımlar ile simüle etmek gereklidir. Sonuç olarak devreyi gerçek ortamda denemek lazım fakat geliştirme aşamasında tekrar tekrar işlemciyi programlamak uzun zaman almaktadır. Bir de işlemci 16C74-JW tipi ise defalarca UV ışınlar ile EPROM silmek zorunda kalınır. İşte bütün bunları geçip MPLAB'ı kullanılabilir. MPLAB yazılımı Microchip'in sitesinden veya Tanıtım CD'lerinde ücretsiz bulunabilir [3, 4]. 1. 5. WG12864B Tek Renk Grafik Sıvı Kristal Ekran Grafik LCD'ler yapılarında karakter LCD'ler gibi hazır hazır karakterler bulundurmayan, fakat karakter LCD'lerin yapamadığı grafik çizimleri rahatlıkla yapabilen LCD'lerdir. Grafik LCD'lerin çalıştırılması diğer LCD'lere göre zordur [5]. Şekil 1. WG12864 tek renk grafik sıvı kristal ekran GLCD'lerin çalışma mantıkları ise şöyledir, belirli komutlarla istenilen yazılabilen boş bir 124x64 bitlik DDRAM'in istenilen alanı yazıldığında GLCD'de de istenilen bölge yazılmış olur.

11 Örneğin, DDRAM bölgesinin 23x12. Adresi 1 yapıldığında GLCD'de de 23x12. Pixel koyulaşır. Bu şekilde istenilen tüm işlemler GLCD'de yaptırılabilir. Piyasada oldukça fazla çeşitte GLCD bulmak mümkündür. Gerek piyasada türevlerinin çok oluşu, gerek diğer GLCD'lere nazaran kullanımı kolay olması nedeniyle günümüzde en çok tercih edilen Şekil 1 de de görülebilecek GLCD, 124x64 Pixel boyutunda olan KS0108 GLCD LCD sidir. Bacak bağlantıları aşağıdaki gibidir; Vs : Toprak ucu VDD : +5V D/I : Data veya komut verme ucu R/W : Yazma veya okuma yapıldığım belirten uç EN : Yetki verme ucu DB0.DB7 : Data giriş uçları CS1 : İlk 64x64 bitlik chip'i seçme biti CS2 : İkinci 64x64 bitlik chip'i seçme biti RES : Reset ucu Vee : Kontrast için gerekli -10V ucu K : Backlight eksi ucu A : Backlight artı ucu 1.6. LM35 Sanayi için (özellikle gıda sektöründe) çok önemli konulardan birisi de sıcaklığın gözlenmesi ve kontrolü olayıdır. Elektronik termometreler, termistörler ve hareketli sensör uçları ile zor ulaşılan bölgelerde kullanılmayabilir. Hem ucuz hem de kullanımı kolaydır. Termistörler ısı değişimine karşı lineer değişim sergilemediğinden dolayı daha profesyonel uygulamalarda yanıltıcı olabilir. Bu tür uygulamalarda yarı iletken ısı sensörleri kullanılır [6]. Şekil 2 de gösterilmiş olan LM35 serisi sensörlerin çıkış gerilimleri sıcaklık ile orantısal olarak değişmektedir. Ölçüm aralığı -55 ile 150 derece aralığındadır. Her bir derece için çıkış voltajı 10mV artmaktadır. Hassasiyeti yarım derece düzeyindedir. 4 ile 30 Volt arasında çalışabilir.

12 Şekil 2. LM35 sıcaklık algılayıcısı 1.7. 7805 Sabit Gerilim Regülatör 30Volt a kadar DC gerilimi sabit +5V DC gerilime çevirir. 500mA çıkış akımı sağlayabilmektedir. Ucuz ve kullanımı kolay olduğu için çok yaygındır. Bacak bağlantıları Şekil 3 de görülmektedir [7]. Şekil 3. 7805 sabit gerilim regülatörü

13 1.8. İş Planı Hazırlamış olduğumuz bu bitirme çalışması Tablo 1 de verilen iş planı çerçevesinde gerçekleştirilmiştir. İş planının düzenlenmesinde çalışmanın tüm döneme yayılması ve her hafta tez danışmanının denetiminde çalışmanın sürdürülmesi amaçlanmıştır. Tablo 1. İş planı Tarih Çalışma 02.02.2011 Konunun belirlenmesi. 09.02.2011 İş planının hazırlanması. 16.02.2011 Sistemin blok diyagramının hazırlanması. 23.02.2011 Gerekli malzemelerin tespiti. 02.03.2011 Gerekli malzemelerin temini. 09.03.2011 Şematik diyagramın çizilmesi. 16.03.2011 Baskı devre şemasının çizilmesi. 23.03.2011 Baskı devre üretimi. 06.04.2011 Malzemelerin montajı. 13.04.2011 Donanımın test edilmesi. 20.04.2011 Yazılımın hazırlanması. 27.04.2011 Sistemin test edilmesi. 04.05.2011 Bitirme kitapçığının hazırlanması. 11.05.2011 Bitirme kitapçığının kontrolü.

14 2. YAPILAN ÇALIŞMALAR, BULGULAR VE TARTIŞMA 2.1. Giriş Bu çalışmada mikrodenetleyici kontrollü bir sayısal termometre gerçekleştirilmiştir. Analog sıcaklık bilgisi sayısal ve grafiksel olarak LCD ekranda gösterilmiştir. Şekil 4 de şematik diyagramı, Şekil 5 de baskı devre çizimi, Şekil 6 da sistemin genel görünümü ve Şekil 7 de de ekran görüntüsü görülmektedir. Yazılım C dili kullanılarak hazırlanmıştır [8]. Şekil 4. Şematik çizim Şekil 5. Baskı devre çizimi

15 Şekil 6. Devrenin genel görünümü Şekil 7. Ekran görüntüsü

3. SONUÇLAR Bu çalışmada, sayısal bir termometre gerçekleştirilmiştir. 1. LM35 ısı algılayıcısı ile ºC hassasiyetinde sıcaklık ölçümü gerçekleştirilmiştir. 2. Analog sıcaklık bilgisi sayısal çevrilip, grafik LCD ekranda hem sayısal hem de grafiksel olarak gösterilmiştir. 3. Sistemin kontrolü PIC16F877A denetleyicisi ile yapılmıştır.

4. ÖNERİLER 1. Farklı bir sıcaklık algılayıcısı ile ölçüm aralığı ve hassasiyeti arttırılabilir. 2. Renkli grafik LCD kullanılabilir. 3. Ekran çözünürlüğü arttırılabilir. 4. Yüzey montajlı elemanlar kullanılarak sistemin boyutları küçültülebilir.

5. KAYNAKLAR [1] İbrahim, Doğan, PIC C ile ses projeleri, İstanbul, 1999. [2] Altınbaşak, Orhan, Mikrodenetleyiciler PIC Programlama, İstanbul, 2008. [3] Microchip Technology Incorporated., PIC16F87X Data Sheet 28/40-Pin 8-Bit CMOS FLASH Microcontrollers, USA, 2001. [4] Microchip Technology Inc., Getting Started with the HI-TECH C Compiler for IC10/12/16 MCUs, Microchip PICDEMTM 2 PLUS Board and MPLABR ICD 2, Australia, 2010. [5] Winstar Display Co. Ltd., WG12864D 128x64dots, Taiwan, 2011. [6] National Semiconductor, LM35 Precision Centigrade Temperature Sensors, USA, 2000. [7] Fairchild Semiconductor Corporation, LM78XX/LM78XXA 3-Terminal 1A Positive Voltage Regulator, USA, 2010. [8] Cadsoft Computer, EAGLE EASILY APPLICABLE GRAPHICAL LAYOUT EDITOR Tutorial Version 5, 7th Edition, USA, 2010.