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
BİR BAHÇE SULAMA SİSTEMİNİN PİC16F84
MİKRODENETLEYİCİSİ KULLANILARAK
GERÇEKLEŞTİRİLMESİ