bir bahçe sulama sisteminin pic ile yapılması

Transkript

bir bahçe sulama sisteminin pic ile yapılması
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
T.C.
NİĞDE ÜNİVERSİTESİ
MÜHENDİSLİK – MİMARLIK FAKÜLTESİ
ELEKTRİK – ELEKTRONİK MÜHENDİSLİĞİ BÖLÜMÜ
BİTİRME ÖDEVİ
BİR BAHÇE SULAMA SİSTEMİNİN PİC16F84
MİKRODENETLEYİCİSİ KULLANILARAK
GERÇEKLEŞTİRİLMESİ
DANIŞMAN
Yrd. Doç. Dr. MURAT UZAM
Erdem Tayfun SALMAN
HAZİRAN 2002
NİĞDE
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
TÜRKİYE CUMHURİYETİ
NİĞDE ÜNİVERSİTESİ
MÜHENDİSLİK MİMARLIK FAKÜLTESİ
ELEKTRİK ELEKTRONİK MÜHENDİSLİĞİ BÖLÜMÜ
BİTİRME ÖDEVİ DERSİ SINAV TUTANAĞI
ÖĞRENCİNİN :
Adı ve Soyadı
:………………………………………………………………
Sınıf ve Numarası
:………………………………………………………………
Bitirme Ödevinin Adı
:………………………………………………………………
……………………………………………………………….
Bitirme Ödevini Yöneten
Öğretim Üyesinin Adı ve Soyadı :……………………………………………………...
BİTİRME ÖDEVİ SINAV JÜRİSİ
Başkan
:……………………………………………………………….
Üye
:……………………………………………………………….
Üye
:……………………………………………………………….
Üye
:……………………………………………………………….
Bu çalışma …../…../2002 tarihinde yapılan sınav sonucunda jürimiz tarafından oy
birliği/çokluğu ile başarılı/başarısız bulunmuştur.
UYGUNDUR
…../…../2002
Doç. Dr. Saadettin HERDEM
Bölüm Başkanı
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
ÖZET
BİR BAHÇE SULAMA SİSTEMİNİN PİC16F84 MİKRODENETLEYİCİSİ
KULLANILARAK GERÇEKLEŞTİRİLMESİ
SALMAN Erdem Tayfun
Niğde Üniversitesi
Mühendislik – Mimarlık Fakültesi
Elektrik – Elektronik Mühendisliği Bölümü
Danışman : Yrd. Doç. Dr. Murat UZAM
Haziran 2002, 47 sayfa
Bu
bitirme
ödevinde,
günümüzde
popüler
olarak
kullanılan
PIC
16F84
mikrodenetleyicisinin öğrenilmesi amacıyla Niğde Üniversitesi Mühendislik - Mimarlık
Fakültesi Elektrik - Elektronik Mühendisliği Bölümü bahçesine PIC 16F84
mikrodenetleyicisi
ile
kontrol
edilen
sulama
sistemi
tasarımı
yapılmıştır.
Mikrodenetleyicinin yazılımı MPLAB programı ile assembly dilinde hazırlanmış olup
yazılımın mikrodenetleyiciye yüklenmesi PİCPROG programı ile PC ‘nin seri
portundan yapılmıştır.
Anahtar Sözcükler : PIC 16F84, PIC 16F84 Mikrodenetleyici Uygulaması,
Mikrodenetleyici Kontrollü Bahçe Sulama Sistemi
iii
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
TEŞEKKÜR
Bu çalışmamda bana her türlü bilgi ve beceriyle yol gösteren, çalışmamı stresten uzak
ve zevkli hale getiren değerli hocam Yrd. Doç. Dr. Murat UZAM’ a, bu günlere
gelmemde değerli emeklerini esirgemeyen tüm hocalarıma, bu çalışma süresince sabırla
bana katlanma nezaketinde bulunan arkadaşlarım Hasan ŞEVKİ, Cafer Gazi KOÇ,
Haluk SAYGIN ve Sami Emre ALEMDAR’ a, bana cesaret ve azimle başarılamayacak
hiçbir şeyin olmadığını gösteren, maddi ve manevi tüm desteğini veren amcam Sayın
Ayhan Ömer ALİŞ’ e sonsuz minnet ve şükranlarımı sunarım.
iv
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
İÇİNDEKİLER
ÖZET ...............................................................................................................................iii
TEŞEKKÜR..................................................................................................................... iv
İÇİNDEKİLER ................................................................................................................. v
ŞEKİLLER DİZİNİ ........................................................................................................vii
BÖLÜM 1 ......................................................................................................................... 1
GİRİŞ ............................................................................................................................ 1
BÖLÜM 2 ......................................................................................................................... 2
PIC 16F84 MİKRODENETLEYİCİSİ......................................................................... 2
2. 1 PIC 16F84’ ün Özellikleri...................................................................................... 3
2. 1. 1 RISC Mimarisinin PIC 16F84’ e Kazandırdığı Özellikler ............................ 3
2. 1. 2 Genel Özellikler............................................................................................. 3
2. 2 PIC 16F84’ ün Pin ( Bacak) Bağlantıları............................................................... 4
2. 2. 1 Besleme Gerilimi ........................................................................................... 4
2. 2. 2 Clock Uçları ve Clock Osilatör Seçenekleri .................................................. 5
2. 2. 3 Reset Uçları ve Reset Devresi ....................................................................... 7
2. 2. 4 I/O Portları ..................................................................................................... 8
2. 3 PIC 16F84’ ün Bellek Yapısı................................................................................. 8
2. 3. 1 Program Belleği ............................................................................................. 8
2. 3. 2 Ram (Random Access Memory) Bellek ........................................................ 9
2. 3. 3 W Registeri .................................................................................................. 10
BÖLÜM 3 ....................................................................................................................... 11
PICPROG PROGRAMI ............................................................................................. 11
3. 1 File ....................................................................................................................... 13
3. 2 Device .................................................................................................................. 13
3. 3 Setup .................................................................................................................... 13
4. 4 Help...................................................................................................................... 14
BÖLÜM 4 ....................................................................................................................... 15
DEVRENİN YAPISI VE ÇALIŞMASI ..................................................................... 15
4. 1 Çalışma Modları .................................................................................................. 16
4. 1. 1 Otomatik Çalışma Modu.............................................................................. 16
4. 1. 2 Manuel Çalışma Modu................................................................................. 18
4. 1. 3 OFF Modu.................................................................................................... 18
4. 2 Devrenin Fiziksel Yapısı ..................................................................................... 19
4. 2. 1 Bağlantı Noktaları........................................................................................ 21
4. 2. 2 Ön Panel Kabloları....................................................................................... 21
4. 2. 3 Saat Ayar Kabloları ..................................................................................... 22
BÖLÜM 5 ....................................................................................................................... 24
AKIŞ DİYAGRAMLARI........................................................................................... 24
BÖLÜM 6 ....................................................................................................................... 30
SONUÇ....................................................................................................................... 30
EKLER............................................................................................................................ 31
EK – A MALZEME LİSTESİ .................................................................................... 31
EK – B HAZIRLANAN PROGRAMIN KODLARI ................................................. 32
v
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
ÇİZELGELER DİZİNİ
Tablo 2.1 RC Osilatör için R ve C Değerleri.................................................................... 6
Tablo 2. 2 Osilatör Frekans Değeri ve Kullanılacak Olan Kondansatörlerin Değerleri... 7
vi
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
ŞEKİLLER DİZİNİ
Şekil 2. 1 PIC 16F84’ ün Bacak Yapısı ............................................................................ 3
Şekil 2. 2 PIC 16F84’ ün Beslemesi ................................................................................. 4
Şekil 2.3 RC Osilatörün PIC 16F84’ e Bağlantısı ............................................................ 5
Şekil 2.4 Kristal Kondansatörlü Osilatör’ ün PIC 16F84’ e Bağlanması ......................... 6
Şekil 2. 5 PIC 16F84’ ün Reset Devresi ........................................................................... 7
Şekil 2.6 PIC 16F84’ ün program haritası ........................................................................ 9
Şekil 2. 7 PIC 16F84’ ün RAM Belleğinin Görünüşü.................................................... 10
Şekil 3.1 PICPROG’ un Genel Görünüşü....................................................................... 11
Şekil 3. 1. 1 PIC 16F84 Programlayıcı Devresi.............................................................. 12
Şekil 3. 2 File Menüsünün Altmenüleri.......................................................................... 13
Şekil 3. 3 Device Menüsünün Altmenüleri..................................................................... 13
Şekil 3. 4 Setup Menüsünün Altmenüleri....................................................................... 14
Şekil 3. 5 Help Menüsünün Altmenüleri ........................................................................ 14
Şekil 4.1 Devre şeması ................................................................................................... 19
Şekil 4. 2 Baskı Devre Şeması........................................................................................ 20
Şekil 4. 3 Devrenin Üsten Görünüşü .............................................................................. 20
Şekil 4. 4 Saat Modülü.................................................................................................... 23
Şekil 5. 1 Automanu Alt Programının Akış Diyagramı ................................................. 24
Şekil 5. 2 Grupp1 Alt Programının Akış Diyagramı ...................................................... 25
Şekil 5. 3 Grupp2 Alt Programı Akış Diyagramı ........................................................... 26
Şekil 5.4 Otomatik Alt Programı Akış Diyagramı ......................................................... 27
Şekil 5. 5 İçtarama Alt Programının Akış Diyagramı .................................................... 28
Şekil 5. 6 Ana Program Akış Diyagramı ........................................................................ 29
vii
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
BÖLÜM 1
GİRİŞ
Mikrodenetleyicili sistemler, bugün çeşitli uygulamalarda kontrol amaçlı olarak
kullanılmaktadırlar. Üretilmiş olan bir çok mikrodenetleyici, sistem tasarımında ve
uygulama
aşamasında
programlarının
simüle
sunduğu
kolaylıklar,
edilerek
çalışmalarının
tasarım
devre
aşamasında
hazırlanan
hazırlanmadan
kontrol
edilebilmeleri ve düşük maliyetleri nedeniyle tercih edilirler. Bu bitirme ödevinde de
günümüzde bu kadar popüler olan mikrodenetleyicilerin tanınması, mikrodenetleyici ile
bir sistemin nasıl hazırlanacağının öğrenilmesi amacıyla Niğde Üniversitesi
Mühendislik - Mimarlık Fakültesi Elektrik - Elektronik Mühendisliği Bölümü bahçesine
mikrodenetleyici ile kontrol edilen sulama sisteminin tasarımı yapılmıştır.
Bu bitirme ödevinde kullanım kolaylığı ve küçük uygulamalardaki yeterliliği nedeniyle
PIC
16F84
mikrodenetleyicisi
mikrodenetleyicisinin
yapısı
kullanılmıştır.
ve
özellikleri
Bölüm
2
‘
anlatılmıştır.
de
PIC
PIC
16F84
16F84
mikrodenetleyicisinin yazılımı Assembly dilinde hazırlanmıştır.
Hazırlanan yazılım mikrodenetleyiciye PC‘nin seri portu ile PICPROG adlı program ile
yüklenmiştir. Bölüm 3‘de PICPROG programı anlatılmıştır.
Tasarlanan sulama sisteminde mikrodenetleyici bir saat devresinden aldığı zaman
bilgisini işleyerek istenilen zaman diliminde sulama işlemini gerçekleştirmektedir.
Sulama işleminin yapılabilmesi için selenoid valfler kullanılmıştır. Bölüm 4‘de
devrenin çalışması ve yapısı anlatılmıştır.
1
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
BÖLÜM 2
PIC 16F84 MİKRODENETLEYİCİSİ
Microchip firmasının ürettiği PIC I6F84
mikrodenetleyicisi kullanım kolaylığı ve
uygun fiyatı nedeniyle günümüzde küçük ölçekli uygulamalarda tercih edilmektedir.
Fiyatı 5-6 $ olan bu mikrodenetleyici için gerekli olan yazılım ve donanımın Microchip
firması tarafından internet üzerinden verilmesi ve firmanın uygulama örnekleri ile
öğretici uygulamaları sayesinde tüm dünyada PIC serisi mikrodenetleyiciler popülarite
kazanmış
ve
uygulama
alanı
bulmuştur.
Tüm
bunların
yanında
dengi
mikrodenetleyicilere göre daha kolay olan komut seti ve ayrıca kullanılan programlama
dilleriyle (BASIC gibi) programlama olanağı sunması PİC serisi mikrodenetleyicilerin
rakipleri arasından sıyrılmasını sağlamıştır.
PIC 16F84, ismini
İngilizce Peripheral lnerface Controller kelimelerinin baş
harflerinden almıştır. Bire bir çevirisi, Çevresel Üniteleri Denetleyici Arabirim’ dir.
RISC (Reduced Instraction Set Computer) mimarisi adı verilen bir yöntem kullanılarak
üretildiklerinden
PIC 16F84 mikrodenetleyicisini programlamak için kullanılan
komutlar oldukça az ve kolaydır. 1980’ lerin başından beri kullanılan bir tasarım
yöntemi olan RISC mimarisindeki temel düşünce, daha kolay ve az sayıda komut
kullanılmasıdır.
PIC 16F84 Flash belleğe sahip olduğu için oldukça kullanışlıdır. Çünkü enerji kesilse
bile belleğindeki bilgi silinmez ve istendiğinde değiştirilebilir. PIC 16F84
mikrodenetleyicisi 1000 defa programlanabilir.
2
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
2. 1 PIC 16F84’ ün Özellikleri
2. 1. 1 RISC Mimarisinin PIC 16F84’ e Kazandırdığı Özellikler
● Sadece 35 komut ile kontrol
● 10 MHz’ lik çalışma hızı
● 400 ns’ lik komut periyodu
● 14 bit uzunluğunda komutlar
● 8 bit uzunluğunda veri yolu
● 15 özel fonksiyonlu donanım registeri
● 8 seviyeli derin donanım stack’ i
● 1000 defa programlanabilen Flash bellek
2. 1. 2 Genel Özellikler
● 13 ayrı giriş çıkış ucu
● Doğrudan LED sürebilen sink ve source akımı
● Max. 20 mA source akımı
● Max. 25 mA sink akımı
Sink akımı gerilim kaynağından çıkışa akan akım source akımı ise giriş çıkış ucundan
toprağa akan akımdır.
Şekil 2. 1 PIC 16F84’ ün Bacak Yapısı
3
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
2. 2 PIC 16F84’ ün Pin ( Bacak) Bağlantıları
2. 2. 1 Besleme Gerilimi
P1C16F84’ ün besleme gerilimi 5 ve 14 numaralı uçlarından uygulanır. 5 numaralı Vdd
ucu +5 V’ a 14 numaralı Vss ucu ise toprağa bağlanır. PICI6F84’ e enerji verildiğinde,
gerilim dalgalanmalarından korunmak için 5 numaralı Vdd ucu ile toprak arasına 100
nF’ lık bir kondansatör bağlanır. PIC16F84’ ün geniş çalışma gerilimi aralığına sahip
olmasına rağmen, uygulamalarda ideal olarak +5 V kullanılır. Şekil 2. 2‘ de PIC
16F84’ün besleme devresi görülmektedir.
Şekil 2. 2 PIC 16F84’ ün Beslemesi
4
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
2. 2. 2 Clock Uçları ve Clock Osilatör Seçenekleri
Aritmetik veya lojik işlem yapabilen her entegre gibi P1C16F84’ ün de komutları
algılayabilmesi için, bir kare dalga sinyaline ihtiyacı vardır. PIC 16F84’ ün clock olarak
kullanılan 2 tane osilatör bacağı vardır. Bunlar 16 numaralı, OSC 1 ve 15 numaralı,
OSC2 bacaklarıdır. Clock Osilatör çeşitleri şunlardır:
• RC Direnç ve Kondansatör (Resistor and Capacitor)
—
• XT Kristal veya Seramik rezonatör (Xtal)
—
• US Yüksek hızlı kristal veya seramik rezonatör (High Speed)
—
• LP Düşük frekanslı kristal
—
PIC 16F84 için seçilen osilatör çeşidinin, program yapılırken belirtilmesi gerekir. RC
Osilatörü PIC 16F84’ ün kontrol ettiği elektronik devrenin zamanlama hususunda
hassas olmadığı durumlarda kullanılır.
Şekil 2.3 RC Osilatörün PIC 16F84’ e Bağlantısı
Belirlenen frekans değerinden +1- %20 civarında sapabilir. Bir direnç ve
kondansatörden oluştuğu için çok ucuzdur. RC osilatörlü PIC 16F84 devresi Şekil 2.3’
de gösterilmiştir.
5
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
Tablo 2.1 RC Osilatör için R ve C Değerleri
R
C
FOSC yaklaşık
10 K
20 pF
625 kHz
10 K
220 pF
80 kHz
10 K
0. 1 µF
85 kHz
OSC1’ den uygulanan harici frekans değerinin 1/4‘ ü OSC2’ den görünebilir ve istenirse
başka yerde kullanılabilir.
R ve C’ nin değerleri Tablo 2. 1’ deki değerlerden farklı olursa düzgün kare dalgalar
elde edilemez ve tutarsız bir çalışma gözlenmesine sebep olur.
Kristal ve Kondansatörlü Osilatör
Şekil 2.4 Kristal Kondansatörlü Osilatör’ ün PIC 16F84’ e Bağlanması
Bu Osilatör zamanlamanın çok önemli olduğu yerlerde kullanılır. Kristale bağlanacak
kodansatörün değerinin iyi saptanması gerekir. Şekil 2. 4’ de Kristal ve kondansatörlü
osilatörün P1C16F84’ e nasıl bağlanacağı gösterilmiştir. Aşağıdaki Tablo 2. 2’ de,
hangi frekansta ne kadarlık kondansatör kullanılacağı belirtilmiştir.
6
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
Tablo 2. 2 Osilatör Frekans Değeri ve Kullanılacak Olan Kondansatörlerin Değerleri
Osilatör Tipi
LP
LP
LP
XT
XT
XT
XT
HS
HS
Frekans ( kHz )
32
200
100
500
1
2
4
8
20
Kondansatör ( pF )
33 – 68
15 – 47
47 – 100
20 – 68
15 – 68
15 – 47
15 – 33
15 – 47
15 – 47
Seçilen kondansatör değeri, Tablo 2.2’ de belirtilen kristal değerlerine karşılık gelen
kondansatör değerlerinden daha büyükse, OSC2’ den elde edilen kare dalga darbelerinin
bozuk olmasına PIC 16F84’ in çalışmamasına sebep olur. Ayrıca Cı ve C2
kondansatörlerinin değerleri birbirine eşit olmalıdır.
2. 2. 3 Reset Uçları ve Reset Devresi
PIC 16F84’ ün besleme uçlarına gerilim uygulandığında bellekteki adresin başlangıç
adresinden itibaren çalışmasını sağlayan bir reset devresi vardır.
Bu reset devresi PIC 16F84 içinde olup buna “ Power on Reset “ adı verilir.
MCLR ucu ise kullanıcının programı kesip, program işlerken alınan bilgileri sıfirlamak
için kullanılır. 4 numaralı, MCLR ucuna uygulanan + 5V kesilir ve gerilim 0V’ a
düşerse program başlangıç adresine döner. Devre Şekil 2.5’ de gösterilmiştir.
Şekil 2. 5 PIC 16F84’ ün Reset Devresi
7
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
2. 2. 4 I/O Portları
PIC 16F84’ ün 13 tane giriş çıkış bacağı vardır. Bunların 5 tanesine A portu (RA0 RA4), 8 tanesine de B portu (RB0 – RB7) denir. 13 bacağın her biri giriş yada çıkış
olarak kullanılabilir. PIC 16F84’ ün içinde adına TRIS denilen özel bir data
yönlendirme registeri vardır. I/0 portlarından geçebilecek 25 mA’ lik bir sink veya
source akımı LED’ leri doğrudan sürebilir. Yani PIC 16F84’ ün bacaklarına doğrudan
LED’ ler bağlanabilir.
A portunun 4. biti, TOCKI adı verilen harici timer/counter giriş ucu ile ortaklaşa
kullanıldığı için, RA4 ucu çıkış olarak kullanılacaksa, açık kollektör özelliğinden dolayı
muhakkak harici bir pull-up direnci ile beraber kullanılmalıdır. RA4 ucundan yanlızca
sink akımı geçer, source akımının geçmesi imkansızdır.
2. 3 PIC 16F84’ ün Bellek Yapısı
P1C16F84 mikrodenetleyicisinin belleği, RAM ve program belleği olmak üzere iki
ayrı bellek bloğundan oluşur. Harward mimarisi ile üretilen bir RISC işlemci olması
nedeniyle program belleği ile data belleği ayrı ayrıdır. Halbuki PC’ lerde kullanılan
mikro işlemcilerde böyle bir özellik yoktur. Bu yüzden, komut alma işleminde
mikrodenetleyicilerin mikroişlemcilerden daha hızlı olduğunu söyleyebiliriz.
2. 3. 1 Program Belleği
PIC 16F84’ ün 1 K. Bytelık program belleği vardır. Her bir bellek hücresindeki program
komutunun uzunluk kapasitesi 14 bittir. Program belleği Flash bellektir, yani programın
icrası dışında bellek silinip yazılabilir. Program belleğine sadece assembly komutları
yazılabilir. Şekil 2.6’ da PIC 16F84’ ün program haritası görülmektedir.
8
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
Şekil 2.6 PIC 16F84’ ün program haritası
2. 3. 2 Ram (Random Access Memory) Bellek
PIC 16F84’ ün RAM belleği, 0x00 - 0x4F adresleri arasında yer alır. RAM’ ın içinde
bulunan fıle registerler PIC 16F84’ ün Merkezi İşlem Birimi’ ni kontrol eder. File
registerlerin bellek uzunluğu 8 bit olup, sadece PCLATH’ in register uzunluğu 5 bittir.
RAM’ ın içindeki file registerlerin dışında kalan alan program değişkenleri için
kullanılır. PIC 16F84’ ün RAM belleği Bank adı verilen, iki kısımdan meydana gelir.
Bank kelimesi, bir şeyin/şeylerin toplandığı yığın, alan anlamına gelir. Bunlardan
birincisi Bank0[0x00~0x4F] ikincisi de, Bank1 [0x80~0CF] olarak adlandırılır. Toplam
80 tane file register vardır. Bazı özel registerlar hem Bank0, hem de Bankl’ de yer
alırlar. Bunun sebebi Bank değiştirmeye gerek kalmadan registerin kullanılabilmesidir.
Şekil 2.7’ de PIC 16F84’ ün RAM belleği blok şeklinde gösterilmiştir.
9
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
Şekil 2. 7 PIC 16F84’ ün RAM Belleğinin Görünüşü
2. 3. 3 W Registeri
RAM bellekte görünmeyen, akümülatör gibi işlev yapan ve direkt erişilemeyen W
registerine ancak diğer registerlere bilgi depolarken erişilir. Aritmetik işlemler ve atama
işlemleri gerçekleştirilirken W registeri kullanılır. İki sayı toplanacağında sayılardan
biri W registerine aktarılır ve daha sonra diğer registerdeki sayı W registerindeki sayı
ile toplanır.
10
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
BÖLÜM 3
PICPROG PROGRAMI
Çeşitli hafıza birimlerine veya hafıza birimi olan mikroişlemcilere, mikrodenetleyicilere
yazılan bir programı yazdırabilmek için farklı yazılımlar ve bu yazılıma uygun olan bir
donanım vardır.
Bizim kullandığımız yazılım: PICPROG adlı yazılım ve buna ait olan donanımdır.
PICPROG’ un görünüşü Şekil 3.1’ de gösterilmiştir.
Şekil 3.1 PICPROG’ un Genel Görünüşü
PICPROG, hazırladığımız programı, hex dosyası haline getirdikten sonra, kendisine ait
olan donanımı bilgisayarın seri portuna bağlayarak, PIC16F84’ e yüklememizi sağlar.
Aslında PICPROG, PIC 16C84 için yazılmış bir programdır, ama PIC 16F84’ le 16C84
arasında çok fazla farklılık olmadığı için bu yazılım, P1C16F84, içinde kullanılabilir.
11
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
PICPROG’ un sol üst köşesinden başlayarak sağa doğru devam eden 4 tane alt menüsü
vardır. Sol alt kısımda ise Fuses adı altında bazı seçenekler vardır. Alt alta LP ile
başlayıp RC ile biten seçenekler, kullanılan donanımdaki osilatörün tipini
belirlenmesini sağlar. Biz Kristal osilatör kullandığımız için XT seçeneğine tıklıyoruz.
PWRT, WDTE ve Code Protect seçeneklerinden ise sadece PWR’ yi seçiyoruz eğer PIC
16F84’ e programı yükledikten sonra programın okunmasını istemiyorsak, Code
Protect’ i de seçeriz.
Sağ alt kısımda ise donanımın bilgisayarın hangi seri portuna takılı olduğu belirten bir
bilgi vardır. Orta sağ kısımda bulunan:
Blank Check: PIC 16F84’ ün boş olup olmadığı kontrol eder.
Erase Chip: PIC 16F84’ in içindeki bilgileri siler.
Program Chip: PICPROG’ a bir hex dosyası yüklendikten sonra faal olan bu seçenek
PIC 16F84’ ün içine belirtilen programı yükler.
Read Chip: Donanıma takılı olan PIC 16F84’ in içindeki programı hex olarak okur.
Şimdi kısaca PICPROG’ un menülerini görelim.
Şekil 3. 1. 1 PIC 16F84 Programlayıcı Devresi
12
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
3. 1 File
Eğer yüklenecek dosya seçilmek istenirse Open File alt menüsünü seçerek istenilen hex
dosyası PICPROG’ a gönderilir. Şekil 3.2’ de File menüsünün alt menüleri
görülmektedir.
Şekil 3. 2 File Menüsünün Altmenüleri
Read Chip’ le PIC 16F84’ in içindeki programı okunduktan sonra kaydetmek istenirse
save file as seçeneği kullanılır. Exit PİCPROG’ dan çıkışı sağlar.
3. 2 Device
Bu menünün alt seçenekleri yukarda anlatılmıştır. Device menüsünün alt menüleri
Şekil 3. 3’ de gösterilmiştir.
Şekil 3. 3 Device Menüsünün Altmenüleri
3. 3 Setup
Donanımın bağlı olduğu seri portun yerini başka bir seri girişte değiştirmek istersek
Com Port seçeneği ile bunu gerçekleştiririz. Şekil 3. 4’ de Device menüsünün
13
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
altmenüleri gösterilmiştir. Donanımı kontrol etmek istersek Check Hardware seçeneğini
kullanırız.
Şekil 3. 4 Setup Menüsünün Altmenüleri
3. 4 Help
PICPROG’ la ilgili bilgilerin ve yardım menüsünün bulunduğu menüdür. Şekil 3. 5’ de
Help menüsünün altmenüleri görülmektedir.
Şekil 3. 5 Help Menüsünün Altmenüleri
14
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
BÖLÜM 4
DEVRENİN YAPISI VE ÇALIŞMASI
Şekil 4. 1. Sistemin yapısı
Tasarlanan sistem şekilde görülen 15x20 metrelik bölüm bahçesinin otomatik olarak
sulanmasını sağlar. Kontrol devresi istenilen zaman aralıklarında veya manuel olarak
sulama işlemini başlatır. Sulama işlemi başladığında kontrol devresi selenoid valfleri
enerjilendirerek su yolunu açar. Bahçe yapısına uygun olarak yerleştirilen fıskiyeler ile
bahçe homojen olarak sulanır.
Devrede kullanılan PIC 16F84 mikrodenetleyicisi saat modülünden aldığı zaman
bilgisini işler ve ayarlanan zaman aralığında ilgili çıkışlarını aktif yaparak triyakları
sürer. Triyaklar da selenoid valfleri enerjilendirerek suyun akması sağlanır.
Selenoid valfler elektrikle kumanda edilen vanalardır. Bobini enerjilendiğinde oluşan
manyetik kuvvet mekanizmayı çekerek su yolunu açar.
Bu uygulamada PIC 16F84 mikrodenetleyicisinin A portu giriş, B portu ise çıkış olarak
düzenlenmiştir. RA0 pinine alarm bilgisinin saatten alınması için kullanılmıştır. RA1
pini, otomatik ve manuel çalışma seçimi yapan auto/manuel butonuna bağlanmıştır.
15
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
RA2 pinine 1 numaralı selenoid valfi açmak için kullanılan 1 butonu, RA3 pinine 2
numaralı selenoid valfi kotrol etmek için kullanılan 2 butonu bağlanmıştır. RA4 pini
sistemi durdurma için kullanılan stop butonuna bağlanmıştır.
Çıkış olarak kullanılan B portu şu şekilde kullanılmıştır. RB0 pini1 numaralı selenoid
valfi süren triyağı kontrol etmektedir. RB1 pini 2 numaralı selenoid valfi süren triyağı
kontrol etmektedir. RB2 pini kumanda paneli üzerinde otomatik çalışma modunu
gösteren ledi, RB3 pini de manuel çalışma modunu gösteren ledi sürmektedir. RB4 ve
RB5 pinleri sırasıyla 1. ve 2. selenoid valflerin çalışmasını gösteren ledleri sürmek için
kullanılmıştır. RB6 ve RB7 pinleri ise saat devresinin alarmlarını susturmak için
kullanılmıştır.
4. 1 Çalışma Modları
Sistem istenildiğinde tamamen otomatik, istenildiğinde ise elle kontrol edilecek şekilde
tasarlanmış olduğundan farklı iki modda çalışmaktadır.
4. 1. 1 Otomatik Çalışma Modu
Bu çalışma modunda gösterge paneli üzerindeki A/M butonuna iki kez basılmasıyla
geçilir. Otomatik çalışma modunda ayarlanan zaman aralığında otomatik olarak sulama
işlemi yapılır. Otomatik moda çalışmak için şu işlem sırası izlenir.
•
Panel üzerindeki A ve B tuşları ile sistem saati ayarlanır. A tuşu saat hanesini B
tuşu ise dakika hanesini ayarlar.
•
Sistem saati ayarlandıktan sonra sulama işleminin hangi saatte başlayıp hangi
saatte biteceği ayarlanmalıdır. Bunun için panel üzerindeki C butonu basılı
tutulurken A ve B butonlarıyla sulama işleminin başlayacağı saat ve dakika
ayarlanır. Başlama zamanının ayarlanmasından sonra sulama işleminin bitiş
zamanı ayarlanmalıdır. Panel üzerindeki D butonu basılı tutularak A ve B
16
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
butonlarıyla sulama işleminin bitiş saati ve dakikası ayarlanır. Böylece
ayarlanan zaman aralığında sulama işlemi yapılabilir.
•
Panel üzerindeki A/M tuşuna iki defa basılır. Bu durumda tuş üzerindeki M harfi
şeklindeki uyarı ışığı aydınlanır. Bu durumda sistem otomatik çalışma moduna
geçmiş olur.
•
Otomatik çalışma modunda iken panel üzerindeki 1 ve 2 tuşları da aydınlanır.
Bu tuşların aydınlanması, sulama zamanı geldiğinde hangi selenoid valf ile
sulama yapılacağını gösterir. Otomatik çalışma moduna geçildiğinde her iki
kanaldan da sulama yapılmak üzere ayarlanmıştır. İstenildiği taktirde 1 veya 2
tuşlarından birine basılarak o kanalın sulama zamanı geldiğinde sulama
yapmaması sağlanır. Bu durum ilgili tuşun ışığının sönmesiyle anlaşılır. Işığı
yanmayan kanaldan sulama yapılmaz. Eğer otomatik çalışma modunda iken 1 ve
2 tuşlarının her ikisine de basılır ise otomatik çalışma modundan çıkılır ve OFF
moduna geçilir. Bu durumda ayarlanan zaman diliminde sulama yapılmaz.
Ayrıca herhangi bir anda panel üzerindeki OFF butonuna basıldığında da OFF
moduna geçilir.
•
Otomatik çalışma modundan manuel çalışma moduna geçilmek istenirse A/M
tuşuna birkez basılır. Bu durumda tuş üzerinde bulunan A harfi aydınlanır ve
sulama işlemi o anda başlar.
4. 1. 1. A Otomatik Çalışmada Bekleme Modu
Bu mod aslında otomatik çalışma modudur. Ancak bu şekilde ayrıca tanımlama
yapmanın amacı otomatik çalışma modunda sulama işleminin olmadığı anları
belirtmektir. Otomatik çalışma modunda sistem, ayarlanan sulama zamanı gelene kadar
otomatik çalışmada bekleme modundadır.
Bu moda iken istenildiği zaman A/M tuşuna bir kez basılarak manuel moda geçilebilir.
17
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
4. 1. 1. B Otomatik Çalışmada Sulama Modu
Bu moda otomatik çalışma modunda sulama işleminin başlamasıyla girilmiş olur. O
anda panel üzerinde 1 ve 2 tuşlarından hangisi aydınlanmış ise sulama işlemini o kanal
yapar. 1 ve 2 tuşlarından her ikisi de aydınlanmış ise her kanaldan da sulama yapılır. Bu
moda iken A/M tuşuna bir kez basılarak manuel moda geçilebilir.
4. 1. 2 Manuel Çalışma Modu
Bu modda sistem kullanıcının istediği anda ayarlanan zaman aralıklarından bağımsız
olarak sulama yapılır. Panel üzerindeki A/M tuşuna birkez basılarak her iki kanaldan da
sulama işlemi başlatılır. Bu durum A/M tuşu üzerindeki A harfinin, 1 ve 2 tuşlarının
aydınlanmasıyla görülebilir. İsteğe göre kanallardan biri 1 veya 2 tuşlarından birine
basılarak sulama işleminden çıkarılabilir. Manuel çalışma modunda 1 ve 2 tuşlarının
ikisine de basılırsa OFF moduna geçilir. Ayrıca istenildiğinde panel üzerindeki OFF
butonuna basılarak da OFF moduna geçilebilir.
4. 1. 3 OFF Modu
Bu modda sulama işlemi yapılmaz. Ayrıca otomatik olarak sulama işlemi yapılmaya
devam edilmesi isteniyorsa sistem tekrar otomatik çalışma moduna alınmalıdır.OFF
moduna herhangi bir modda 1 ve 2 tuşlarının her ikisinin de ışıkları söndürülecek
şekilde 1 ve 2 tuşlarına basılarak geçilebilir. Ayrıca panel üzerindeki OFF tuşuna
herhangi bir anda basılarak da OFF moduna geçilebilir.
18
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
4. 2 Devrenin Fiziksel Yapısı
Bu bölümde devrenin açık şeması, baskı devre şeması ve görünüşü verilmiştir. Devre
üzerinde yapılan bağlantılar ve kullanılan malzemeler verilmiştir.
Şekil 4.1 Devre şeması
19
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
Şekil 4. 2 Baskı Devre Şeması
Şekil 4. 3 Devrenin Üsten Görünüşü
20
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
4. 2. 1 Bağlantı Noktaları
S1,S2 = Selenoid valflerin bağlantı noktası
B2
= Auto ledi
B3
= Manuel ledi
B4
= 1 tuşu ledi
B5
= 2 tuşu ledi
B6
= Alarm1 reset
B7
= Alarm2 reset
A0
= Alarm
A1
= Auto/manuel tuşu
A2
= GRUP1 ( 1 ) tuşu
A3
= GRUP2 ( 2 ) tuşu
A4
= Stop tuşu
4. 2. 2 Ön Panel Kabloları
4. 2. 2. A Tuşların Bağlantı Kabloları
MOR
: + 5 V bağlantı noktasına
GRİ
: STOP tuşu
BEYAZ : AUTO/MANUEL tuşu
YEŞİL : GRUP1 ( 1 ) tuşu
MAVİ : GRUP2 ( 2 ) tuşu
4. 2. 2. B Ledlerin Bağlantı Kabloları
BEYAZ : GRUP2 ( 2 ) tuşu ledi
GRİ
: GRUP1 ( 1 ) tuşu ledi
MOR
: STOP tuşu ledi
MAVİ : AUTO/MAUNEL tuşu A ledi
YEŞİL : AUTO/MAUNEL tuşu M ledi
21
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
4. 2. 3 Saat Ayar Kabloları
4. 2. 3. A Besleme
KIRMIZI : +9 V
KAHVE
: GND
4. 2. 3. B Fonksiyon
SARI
: Alarm çıkışı (saatten A0 bağlantı noktasına)
BEYAZ : Alarm1 reset (B6 dan ALARM1 RESET tuşuna paralel)
SİYAH : Alarm2 reset (B7 den ALARM2 RESET tuşuna paralel)
4. 2. 3. C Tuşlar
MAVİ
: Alarm1 reset
YEŞİL
: Alarm2 reset
SARI
: Alarm1
TURUNCU : Dakika ayarı
KIRMIZI
: Saat ayarı
KAHVE
: Alarm2
SİYAH
: Ortak uç
NOT : Kullanılan swichlerin birer uçları ortak uca bağlanır.
22
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
Şekil 4. 4 Saat Modülü
1) Alarm 2
2) Saat ayarı
3) Dakika ayarı
4) Saniye ayarı
5) Alarm 1
6) Sleep
7) Alarm 2 stop
8) Alarm 1 stop
9) Tarih
0) Ortak uç
Tüm uçlarla ortak uç arasına birer buton koyarak ayarlama yapılır.
23
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
BÖLÜM 5
AKIŞ DİYAGRAMLARI
Akış diyagramları mikrodenetleyicinin çalıştırmakta olduğu programın akış sırasını
gösterir. Akış diyagramlarından programın nasıl işlediği izlenebilir.
Şekil 5. 1 Automanu Alt Programının Akış Diyagramı
Şekil 5. 1’de görülen akış diyagramı otomatik ve manuel çalışma modlarına geçilmesini
sağlar. Otoman değişkeni 1 ise manuel 0 ise otomatik çalışma moduna geçer.
24
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
Şekil 5. 2 Grupp1 Alt Programının Akış Diyagramı
Şekil 5. 2 ve şekil 5. 3 de görülen alt programlar sulamanın iki selenoid valften hangisi
veya tamamında yapılacağına karar veren kısımdır.
Şekil 5. 6’daki alt program ana program olup herhangi bir modda çalışmada
yönlenilecek altprogramları çağırır.
25
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
Şekil 5. 3 Grupp2 Alt Programı Akış Diyagramı
Şekil 5. 4’de görülen alt program otomatik çalışma modunda gereken işlemleri yapar.
Saat bilgisini alır ve zamanı geldiğinde sulama işlemini başlatır.
Şekil 5. 5’de görülen alt program herhangi bir anda bir tuşa basılırsa algılar ve gereken
alt programlara yönlendirir.
26
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
Şekil 5.4 Otomatik Alt Programı Akış Diyagramı
27
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
Şekil 5. 5 İçtarama Alt Programının Akış Diyagramı
28
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
Şekil 5. 6 Ana Program Akış Diyagramı
29
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
BÖLÜM 6
SONUÇ
PIC 16F84 mikrodenetleyicisinin öğrenilmesi ve mikrodenetleyici kontrollü sistemlerin
tanınması amacıyla yapılan bu çalışmada Niğde Üniversitesi Mühendislik - Mimarlık
Fakültesi Elektrik - Elektronik Mühendisliği Bölümü bahçesine PIC 16F84
mikrodenetleyicisi kontrollü sulama sistemi yapılmıştır.
Sistem, bir saat modülünden aldığı zaman bilgisiyle istenilen zaman aralıklarında ve
istendiğinde manuel olarak iki ayrı selenoid valf ile sulama işlemini gerçekleştirir.
30
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
EKLER
EK – A MALZEME LİSTESİ
R1,R2,R3,R4 = 10K direnç
R5,R6
= 220 Ω direnç
R7,R8,R9,R10 = 100 Ω direnç
C1
= 220 µF / 16 V
D1,D2,D3,D4 = 1N4001
IC1
= PIC 16F84
IC2,IC3
= MOC 3023
RG1
= L7809
RG2
= L7805
XT1
= 4 MHz kristal
TY1,TY2
= 9548T435 triyak
31
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
EK – B HAZIRLANAN PROGRAMIN KODLARI
LIST P=16F84
INCLUDE "P16F84.INC"
SULAMA
EQU h'0C'
OTOMAN
EQU h'0D'
GRUP1
EQU h'0E'
GRUP2
EQU h'0F'
SAYAC1
EQU h'10'
SAYAC2
EQU h'11'
CLRF
PORTB
BSF
STATUS, 5
CLRF
TRISB
MOVLW
h'FF'
MOVWF
TRISA
BCF
STATUS, 5
MOVLW
h'0'
MOVWF
SULAMA
MOVWF
OTOMAN
MOVWF
GRUP1
MOVWF
GRUP2
MOVWF
PORTB
BTFSS
PORTA,1
GOTO
A1
BAS
A0BAS
CALL AZBEKLE
BTFSC
PORTA,1
GOTO
A0BAS
CALL
AUTOMANU
A1
32
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
BTFSS
PORTA,2
GOTO
A2
A1BAS
CALL AZBEKLE
BTFSC
PORTA,2
GOTO
A1BAS
CALL
GRUP1P
BTFSS
PORTA,3
GOTO
A3
A2
A2BAS
CALL
AZBEKLE
BTFSC
PORTA,3
GOTO
2BAS
CALL
GRUP2P
BTFSC
GRUP1,0
GOTO
A4
BTFSC
GRUP2,0
GOTO
A4
GOTO
A5
BTFSS
PORTA,4
GOTO
BAS
A3
A4
A3BAS
CALL
AZBEKLE
BTFSC
PORTA,4
GOTO
A3BAS
MOVLW
h'0'
MOVWF
PORTB
BCF
SULAMA,0
A5
33
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
BCF
OTOMAN,0
BCF
GRUP1,0
BCF
GRUP2,0
GOTO
BAS
AUTOMANU
COMF
OTOMAN,1
BTFSS
OTOMAN,0
GOTO
B1
MOVLW
h'3B'
MOVWF
PORTB
BSF
GRUP1,0
BSF
GRUP2,0
BSF
SULAMA,0
RETURN
B1
MOVLW
h'34'
MOVWF
PORTB
BCF
SULAMA,0
BCF
OTOMAN,0
BSF
GRUP1,0
BSF
GRUP2,0
CALL
OTOMATIK
RETURN
OTOMATIK
CALL
ICTARAMA
BTFSC
GRUP1,0
34
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
GOTO
W1
BTFSC
GRUP2,0
GOTO
W1
RETURN
W1
BTFSS
OTOMAN,0
GOTO
AB1
RETURN
AB1
BTFSS
PORTA,0
GOTO
OTOMATIK
COMF
SULAMA,1
BTFSS
SULAMA,0
GOTO
C2
BTFSS
GRUP1,0
GOTO
D2
BSF
PORTB,0
BSF
PORTB,4
GOTO
D1
BCF
PORTB,0
BCF
PORTB,4
BTFSS
GRUP2,0
GOTO
D5
BSF
PORTB,1
BSF
PORTB,5
GOTO
D3
BCF
PORTB,1
BCF
PORTB,5
D2
D1
D5
D3
35
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
BSF
PORTB,6
CALL
AZBEKLE
BCF
PORTB,6
CALL
ICTARAMA
BTFSC
GRUP1,0
GOTO
S1
BTFSC
GRUP2,0
GOTO
S1
AB2
RETURN
S1
BTFSS
OTOMAN,0
GOTO
AB3
RETURN
AB3
BTFSC
PORTA,0
GOTO
AB2
GOTO
OTOMATIK
BSF
PORTB,7
CALL
AZBEKLE
CALL
AZBEKLE
BCF
PORTB,7
BCF
PORTB,0
BCF
PORTB,1
BCF
SULAMA,0
GOTO
OTOMATIK
C2
ICTARAMA
BTFSS
PORTA,2
GOTO
TT2
36
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
CALL
AZBEKLE
A5BAS
BTFSC
PORTA,2
GOTO
A5BAS
COMF
GRUP1,1
BTFSC
GRUP1,0
GOTO
T1
BCF
PORTB,0
BCF
PORTB,4
GOTO
TT2
BSF
PORTB,4
BTFSS
PORTA,3
GOTO
TT3
CALL
AZBEKLE
T1
TT2
A6BAS
BTFSC
PORTA,3
GOTO
A6BAS
COMF
GRUP2,1
BTFSC
GRUP2,0
GOTO
T4
BCF
PORTB,1
BCF
PORTB,5
GOTO
TT3
BSF
PORTB,5
BTFSS
PORTA,1
GOTO
T5
T4
TT3
A7BAS
CALL
AZBEKLE
37
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
BTFSC
PORTA,1
GOTO
A7BAS
BSF
GRUP1,0
BSF
GRUP2,0
MOVLW
h'3B'
MOVWF
PORTB
COMF
OTOMAN,1
BCF
SULAMA,0
RETURN
T5
BTFSS
PORTA,4
GOTO
T6
A8BAS
CALL
AZBEKLE
BTFSC
PORTA,4
GOTO
A8BAS
BCF
GRUP1,0
BCF
GRUP2,0
BCF
SULAMA,0
BCF
OTOMAN,0
CLRF
PORTB
T6
RETURN
GRUP1P
BTFSC
PORTB,2
GOTO
SON
BTFSC
PORTB,3
GOTO
SON
38
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
BSF
PORTB,0
BSF
PORTB,3
BSF
PORTB,4
BSF
GRUP1,0
BSF
OTOMAN,0
RETURN
SON
COMF
GRUP1,1
BTFSS
GRUP1,0
GOTO
G1
BSF
PORTB,0
BSF
PORTB,4
RETURN
G1
BCF
PORTB,0
BCF
PORTB,4
RETURN
GRUP2P
BTFSC
PORTB,2
GOTO
SON1
BTFSC
PORTB,3
GOTO
SON1
BSF
PORTB,1
BSF
PORTB,3
BSF
PORTB,5
BSF
GRUP2,0
BSF
OTOMAN,0
39
Erdem Tayfun SALMAN, Bitirme Ödevi, Niğde Üniversitesi, Mühendislik-Mimarlık
Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı
RETURN
SON1
COMF
GRUP2,1
BTFSS
GRUP2,0
GOTO
K1
BSF
PORTB,1
BSF
PORTB,5
RETURN
K1
BCF
PORTB,1
BCF
PORTB,5
RETURN
AZBEKLE
MOVLW
h'1' ;NORMAL:h'32'
MOVWF
SAYAC1
DONGU1
MOVLW
h'1' ;NORMAL:h'16'
MOVWF
SAYAC2
DONGU2
DECFSZ
SAYAC2, F
GOTO
DONGU2
DECFSZ
SAYAC1, F
GOTO
DONGU1
RETURN
END
40

Benzer belgeler

pic ile çamaşır makinesi - Fikir Elektronik Teknik

pic ile çamaşır makinesi - Fikir Elektronik Teknik BİR BAHÇE SULAMA SİSTEMİNİN PİC16F84 MİKRODENETLEYİCİSİ KULLANILARAK GERÇEKLEŞTİRİLMESİ

Detaylı