MİKROİŞLEMCİLER VE MİKRODENETLEYİCİLER

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "MİKROİŞLEMCİLER VE MİKRODENETLEYİCİLER"

Transkript

1 III İÇİNDEKİLER İÇİNDEKİLER... III ŞEKİLLER DİZİNİ... IX ÇİZELGELER DİZİNİ...X BİRİNCİ BÖLÜM MİKROİŞLEMCİLER VE MİKRODENETLEYİCİLER 1.1 Mikroişlemciler Mikrodenetleyici Mikrodenetleyicilerin Kullanım Sebebi Mikroişlemci ile Mikrodenetleyici Arasındaki Farklar... 8 İKİNCİ BÖLÜM PIC MİKRODENETLEYİCİSİ 2.1 Genel Tanımlama Gelişme Desteği Elektrikle Silinebilen Mikrokontrolörler... 12

2 IV 2.4 Mimari Olarak İncelenmesi Komut Akımı / Bilgi İletimi Bellek Organizasyonu Veri Bellek Organizasyonu Genel Amaçlı Kayıt Dosyası Dış Yüzeysel özellikler: Özel Mikrokontrolör Özellikleri: CMOS Teknolojisi: ÜÇÜNCÜ BÖLÜM PIC ÇEŞİTLERİ 3. 1 PIC16F84 Mikrodenetleyicisi: Genel Özellikler Pin Diyagramı Mimari Register Haritası Özel Registerlerin Açıklaması: PIC16F628 Mikrodenetleyicisi : Özellikleri : Bacak Bağlantıları Pin Özellikleri Bellek Organizasyonu Program Belleği Organizasyonu Data Belleği PIC16F877 Mikrodenetleyicisi Genel Özellikleri : PIC16F877 Portlarının Fonksiyonları... 31

3 V PORTA PORTB PORTC PORTD PORTE Program ve Kullanıcı RAM Bellek Organizasyonu STATUS yazmacı Özel fonksiyonlar Paralel Slave Port USART Master Synchronous Serial Port (MSSP) Sayısal Çevirici Modülü Capture/Compare ve PWM Modülü DÖRDÜNCÜ BÖLÜM PIC BASIC PRO 4.1 Picbasic Pro Ve Özellikleri PicBasic Pro ile Kullanılan PICmikro lar Picbasic Pro Derleyicisinin Kullanılışı Komut Satırı Seçenekleri A Seçeneği C seçeneği H veya -? Seçeneği I seçeneği L seçeneği O seçeneği P seçeneği... 45

4 VI S seçeneği V seçeneği Picbasic Pro Temel Kavramlar Tanımlayıcılar Satır Etiketi Değişkenler Alias lar (Bir Değişkene Başka Bir İsim Vermek) Dizi Değişkenler (Arrays) Sabitler Semboller Sayısal Sabitler String sabitler Pinler Açıklama satırı Bir Satıra Birden Fazla Komut Yazmak Satır Devam Ettirme Karakteri INCLUDE Komutu ile Dosya Dahil Etmek DEFINE komutu Aritmetik Operatörler Çarpma Bölme Shift (Kaydırma ABS COS DCD DIG MAX ve MİN Komutları NCD Komutu REV Komutu SIN Komutu SQR Komutu Bit Yönlendirme Operatörleri... 58

5 VII 4.5 Pıcbasıc Pro Komut Seti Port Giriş / Çikiş İşlemleri Button Komutu Goto Komutu End Komutu {LET} Komutu TOGGLE Komutu POKE Komutu PEEK Komutu INPUT Komutu OUTPUT Komutu LOW Komutu HIGH Komutu Karar Verme Ve Döngü İşlemleri FOR NEXT Komutu IF THEN Komutu PAUSE Komutu: WHILE WEND Komutu : RANDOM Komutu : GOSUB Komutu : RETURN Komutu Keyboard Ve LCD Uygulamalari Paralel LCD ler LCDOUT Komutu : Interrupt Ve Uygulamalari ON INTERRUPT Komutu : RESUME Komutu : DISABLE Komutu : ENABLE Komutu : Eeprom Belleğe Yazma Ve Okuma WRITE Komutu : READ Komutu :... 76

6 VIII EEPROM Komutu : DATA Komutu : I2CREAD Komutu : I2CWRITE Komutu : CLEAR Komutu : POT Komutu : Reverse Komutu SLEEP Komutu : STOP Komutu : SWAP Komutu : BEŞİNCİ BÖLÜM DENEYLER DENEY 1: TEMEL PORT UYGULAMALARI DENEY 2: PIC İLE SAYAÇ VE DÖNGÜ KONTROLLERİ DENEY 3: KESME VE ÇEVRİM TABLOSU KULLANIMI DENEY 4: 8255 KULLANIMI DENEY 5: LCD MODÜLÜ DENEY 6: EEPROM KULLANIMI DENEY 7: STEP MOTOR KONTROLÜ DENEY 8: LCD UYGULAMASI DENEY 9: SAAT UYGULAMASI DENEY 10: PWM SİSTEMİNİN TANITILMASI VE KULLANILMASI EKLER

7 IX ŞEKİLLER DİZİNİ Şekil 3.1: 16C84 Pin Diyagram Şekil 3.2: Mimari Şekil 3.3: Register Haritası Şekil 3.4: Özel Registerlerin açıklamaları Şekil 3.5: Status Registeri Şekil 3.6: Option Registeri Şekil 3.7: PIC16F627/628 Bacak Bağlantısı Şekil 3.8: PIC16F627/628 Program Belleği Şekil 3.9: STATUS register Şekil 4.1: Bir pot değerini okumak için gerekli devre... 81

8 X ÇİZELGELER DİZİNİ Çizelge 3.1: PIC16F627/628 Özellikleri Çizelge 3.2: PIC16F627/628 mikrodenetleyicilerin pin adları ve görevleri Çizelge 4.1: PM Assembler Dili Seçenekleri Çizelge 4.2: Veri tiplerine göre array eleman sayıları Çizelge 4.3: PicBasic Pro Komutları Çizelge 4.4: uyumlu LCD komutları... 74

9 1 BİRİNCİ BÖLÜM MİKROİŞLEMCİLER VE MİKRODENETLEYİCİLER 1.1 Mikroişlemciler Çok genel bir ifadeyle bir bilgisayarın beyni, esas işi yapan kısmı olarak isimlendirilebilecek olan mikroişlemciler hakkında biraz daha ayrıntılı bir açıklama şu şekilde yapılabilir: Bir dijital bilgisayar üç temel kısımdan oluşmaktadır. Program ve Veri Hafızaları (Program and Data Memory) Giriş Çıkış Birimleri (Input Output Units) Merkezi İşlem Birimi (MİB / CPU), verileri işleme ve sistemi oluşturan çeşitli birimler arasında bilgi akışı kontrolü işlemlerini gerçekleştirir. Veri işlemenin büyük çoğunluğu MİB de yer alan Aritmetik Lojik Birim üzerinde gerçekleştirilir. Ancak bu işlemlerin gerçekleştirilmesi sırasında Kod Çözme Kontrol Birimleri ile çeşitli Saklayıcılar (Registers) da çok yoğun olarak kullanılır. İşte bu merkezi işlem birimini oluşturan çeşitli alt birimlerin tek bir entegre devre üzerinde gerçekleştirilmiş üretilmiş haline Mikroişlemci (Microprocessor) adı verilir.

10 2 Bir mikroişlemci kullanılarak hazırlanmış bilgisayarlara mikrobilgisayar denilmektedir. Hafıza ve giriş-çıkış birimlerinin miktarı, türü ve kapasitesi uygulamaya bağlı olarak değişir. İsimlendirmede kullanılan mikro adı ise işlemcinin veya bilgisayarın yeteneğinin kısıtlılığını değil, boyutlarının küçüklüğünü belirtmek için kullanılır. Modern gelişmiş mikroişlemcilerde bir kaç milimetre karelik alanda milyonlarca transistor yer almaktadır. Örneğin Pentium II işlemcisinde (ön hafıza, cache Memory) hariç 7.5 milyon adet transistor bulunmaktadır. Mikroişlemcilerin tarihsel gelişimine kısaca bir göz atılacak olursa ilk mikroişlemcinin bir hesap makinesinde kullanılmak üzere INTEL firması tarafından 1971 de I4004 adıyla üretilen 4 bitlik bir işlemci olduğu görülür. Bu tarihten önce bilgisayarların MİB leri önceleri elektron tüpleri ve röleler daha sonraki dönemde ise transistörler ve çeşitli elektronik devreler kullanılarak hazırlanıyordu. Çok büyük yer kaplayan ve çok güç tüketen bu eski bilgisayarlar ortam şartlarına karşı da çok duyarlıydılar. İşlem kapasitelerinin çok kısıtlı olmasının yanı sıra sürekli bakım gerektiriyorlardı. Bir fikir vermesi açısından 1945 de Pennsylvania Üniversitesinde tamamlanan ENIAC isimli ilk bilgisayarın 30 metre boyu ve 30 ton ağırlığı olduğunu söyleyebiliriz. 18,000 radyo tüpünden oluşan cihaz 100 Kwatt güç harcamaktaydı deki, bilgisayarın temel elemanı kabul edilen MİB in tek bir entegre devre içine sığdırılarak üretimi, yarı-iletken teknolojisinde, transistörün keşfi gibi bir sıçrama gerçekleştirmiştir.

11 3 INTEL, özel sipariş üzerine geliştirdiği 4 bitlik I4004 (1971) ve 8 bitlik I8008 (1972) entegre devrelerine ilk müşterilerinden başka bir ilgi beklemediği için üretim hattını düşük kapasitede tutmuştu. Ancak aksine bu işlemciler büyük bir ilgi gördü ve 1974 de genel amaçlı ilk 8 bitlik MİB olan I8080 işlemcisini üretti. Bu işlemciye büyük bir talep oldu ve kısa bir zamanda I8080 endüstri standardı oldu. İki yıl sonra 1976 da daha gelişmiş bir model olan I8085 üretildi. Bu arada 1975 yılında sektörün ikinci önemli ismi olan Motorla firması da MC6800 adındaki işlemciyi piyasaya sürerek o günden itibaren süre gelen bir yarışa katılmış oldu. Mikroişlemcilerin sınıflandırılmasında önemli bir ölçü olan bit sayısı işlemcinin üzerinde işlem yapabildiği en uzun verinin bit sayısını gösterir. Kelime uzunluğu (Word lenght) de denilen bu parametre 4 bit, 8 bit, 16 bit, 32 bit gibi değerler alabilmektedir. Bu değer aynı zamanda işlemcinin saklayıcılarının ve veri yolunun genişliğini de gösterir. Ancak bazen harici ve dahili veri yolları farklı genişliklerde olabilir yılında ilk 16 bitlik işlemcisi olan 8086 yı üreten INTEL bir yıl sonra 1979 da harici veri yolu genişliği 8 bit olmanın dışında 8086 ile aynı yapıya sahip olan 8088 i piyasaya sürdü. 8088, 1981 de üretilmeye başlanan IBM PC (Personel Computer Kişisel Bilgisayarların) ilk işlemcisi olmuştur. 16 bitlik işlemcilerde endüstri standardı olan 8086 / 8088 günümüze kadar gelen çeşitli ürünlerle X86 ailesi diye isimlendirilen mikroişlemci ailesinin çekirdeği (core) olmuştur.

12 4 1.2 Mikrodenetleyici Mikrodenetleyici terimini açıklamak için öncelikle mikroişlemci ve mikrobilgisayar konularına değinmek gerekmektedir. Mikroişlemci tüm bilgisayarlarda ve bilgisayar donanımına sahip elektronik cihazlarda bulunan, her türlü aritmetik ve mantıksal işlemin yapıldığı merkezi bir işlem ünitesidir. Bir mikroişlemci genelde şu kısımlardan oluşur: 1. Aritmetik-Mantık Ünitesi (ALU) 2. Komut Çözücü (Instruction Decoder) 3. Yazmaçlar (Registers) 4. Veri Yolu Kontrol Devresi (Data Bus Controller Circuitry) Mikroişlemcinin işlevini yerine getirebilmesi için bazı yardımcı elemanlara ihtiyacı vardır. Bunlar a) Giriş Üniteleri b) Çıkış Üniteleri c) Bellek Üniteleri şeklinde sıralanabilir. Bir kişisel bilgisayarı ele alırsak bilgisayarın beyni olan anakart ve onun üzerindeki çok özel parça mikroişlemci, ancak bellek, sabit disk, klavye ve monitör gibi ünitelerin varlığı sayesinde anlamlı bir işlevi yerine getirebilir. Yukarıda bahsedilen yardımcı elemanlar ile birlikte mikroişlemci küçük boyutlu bir kart üzerine yerleştirildiği zaman mikrobilgisayar olarak adlandırılır. Mikrobilgisayarlar elektronik kontrol uygulamalarında sıklıkla kullanılır. Bir mikrobilgisayarı oluşturan temel bileşenlerin tek bir yonga içerisinde üretilmiş haline mikrodenetleyici denir. Bilgisayar, mikrobilgisayar ve mikrodenetleyicilerin sahip olduğu kabiliyetler, sağladığı imkanlar, fiyatları, donanım özellikleri ve kullanım

13 5 alanları farklıdır. Bunlardan en ucuz, kullanımı kolay ve basit yapıda olanı mikrodenetleyicilerdir. Bugün pek çok günlük uygulamada mikrodenetleyiciler ve mikrobilgisayarlar kullanılmaktadır. Bu uygulamalara şu örnekler verilebilir: Taşıtlar, kamera, cep telefonu, televizyon, radyo, hesap makinesi, çamaşır-bulaşık makinesi, kombi, fırın, fotokopi makinesi, elektronik oyuncaklar, alarm sistemleri ve benzeri. Endüstriyel alanda ise mikrodenetleyicilerin kullanım alanı sıralanamayacak kadar geniştir. Günümüzde bir otomobil ortalama olarak 15 işlemci taşımaktadır model Mercedes 63, BMW ise 65 işlemci ile en konforlu ve güvenli otomobillerdendir yılı ile birlikte modern bir evdeki cihazlarda bulunan toplam işlemci sayısı 50`yi aşmıştır. Günümüzde kullandığımız bilgisayarların özelliklerinden bahsederken özellikle işlemcisinden bahsedilir ve bunların çalışma frekansları o bilgisayarın hızını belirlemede ön önemli kıstas olduğu açıktır. Şu an kullanılan, Intel firmasının ürettiği 80286, 80386, ve nihayetinde Pentium serisi birer mikroişlemcilerdir. (Microprocessor). İşlemciler kendi başlarına pek işe yaramazlar ve bellek, giriş-çıkış ünitelerine ihtiyaç duyarlar.eğer bu üç yapıyı (CPU, RAM ve I/O ) bir araya getirip bir kılıf içine aldığımızda ortaya çıkan yapıya mikro denetleyici (mikrokontroller) denir. Bilgisayar teknolojisi gerektiren uygulamalarda kullanılmak üzere tasarlanmış olan mikro denetleyiciler, mikroişlemcilere göre basit ve ucuzdur. Artık günümüzde birçok ürünün içinde mikro denetleyiciler yer almaktadır. Mesela yeni çıkan klimaları ve buzdolaplarını yakından inceleyin. Mutlaka sıvı kristal bir gösterge ekranına sahiptir ve tuşlarla bu makineleri kontrol etmekteyiz. Bu kontrol etme olayını bize mikro denetleyiciler sağlar. Veya arabamızda özellikle yeni olanlarında mutlaka bir tane mikro denetleyici vardır. Bu mikro denetleyici merkezi kilit sistemini ve gösterge panelini ve/veya klimayı kontrol eder ve bunlar hakkındaki bilgileri bize ekranda veya göstergelerle bize anlatır. örnekleri arttırmak mümkün. işte bu tür kontrol ve hesaplama olayları için mikro denetleyicileri kullanabiliriz. istersek bir robot bile yapabiliriz.

14 6 Günümüzde birçok mikrodenetleyici üreticisi mevcuttur ve bunlar ihtiyaç duyulan işleme göre farklı mikro denetleyiciler üretmektedirler. Ama basite indiğimizde mikro denetleyici mimarisinde çok az bir değişim vardır ve bu mikro denetleyiciler yap itibariyle hemen hemen aynıdır. Bir projeye başlamadan önce mikro denetleyiciyi seçerken, uygulamada kullanacağımız mikro denetleyicinin ne tür özelliklerinin olması gerektiği iyice kavranmalıdır. Bu tür özellikler, 1. Kesme sayısı 2. I/O port sayısı 3. Programlanabilir dijital paralel giriş / çıkış 4. Programlanabilir analog giriş / çıkış 5. Dahili belek tipi ve kapasitesi 6. Kayan nokta hesaplaması Bu özellikleri arttırmak mümkün. Ben sadece temel özellikleri saydım. Bir mikrodenetleyici genel olarak aşağıdaki birimlerden oluşur: 1. CPU (Merkezi işlem ünitesi - central processing unit) 2. RAM (Rasgele erişimli bellek-random Access Memory) 3. EPROM/PROM/ROM (Silinir, yazılır sadece okunur bellek-erasable Programmable Read Only Memory) 4. I/O (Girdi/çıktı - input/output) - seri ve paralel 5. Timers (Zamanlayıcılar) 6. Interrupt controller (Kesmeler)

15 7 Mikro denetleyiciler özel amaçlı bilgisayarlardır ve programlandıkları şeyi en iyi şekilde yaparlar.genel olarak özellikleri ise; 1. Mikro denetleyiciler sadece bir iş için programlanmışlardır ve sadece bu programı işlerler ve kullandıkları program çipin içinde veya program hafızası denilen yerde saklı tutulur. 2. Mikro denetleyiciler sadece 50 mw civarında güç harcarlar. 3. Mikro denetleyicilere sadece girdi yapılmaz aynı zamanda çıktı da alınabilir. LED göstergelerle, sıvı kristal göstergelerle, ikaz sesleriyle vb.. 4. Mikro denetleyiciler ucuzdur. Bir çok parçadan oluşan kompleks bir devreyi kolayca küçük boyutlara ve maliyete indirmenizi sağlar Mikrodenetleyicilerin Kullanım Sebebi Elektronik sistemlerde sayısal devrelere sıklıkla rastlanır. Pek çok aritmetik ve mantıksal işlemi sayısal devreler sayesinde yapmak mümkündür. Sayısal bir sistemde gereken fonksiyonları yerine getiren bir devre kurmak veya tasarlamak için birkaç seçenek vardır. İstenilen fonksiyonu yapmak üzere üretilmiş basit bir entegre devre piyasada mevcut olabilir. Buna ºöyle bir örnek verilebilir: Amacımızın ikili sistemdeki iki sayıyı karşılaştırmak olduğunu varsayalım. Sayısal elektrik sinyalleri ile ifade edilen sayıları karşılaştırıp büyük, küçük veya eşit gibi sonuçlar veren entegre devreler piyasada mevcuttur ve oldukça ucuzdur. Bu durumda doğru olan bu devreleri kullanmaktır. PLD(Programmable Logic Device) olarak adlandırılan programlanabilir yongalar her türlü mantıksal işlemi yapma kabiliyetine sahiptir. İstenilen fonksiyona göre tekrar programlanabilir olması en önemli özelliğidir. Kullanımı yukarıda bahsedilen entegre devreler kadar kolay değildir. Ayrıca maliyeti de daha yüksektir.

16 8 Bahsedeceğimiz son seçenek amacımıza uygun bir mikrodenetleyici kullanmaktır. Basit entegre devrelerin ve PLD lerin yetersiz kaldığı durumlarda mikrodenetleyici kullanmak özellikle karmaşık sayısal sistemler için avantajlıdır. Günümüzde mikrodenetleyicileri programlamak PLD leri programlamaktan zor olmadığı gibi mikrodenetleyiciler PLD lerin sağlayamadığı pek çokkabiliyete de sahiptir. Bu üstün özellikleri sebebiyle pek çok elektronik kontrol sisteminde mikrodenetleyiciler tercih edilir. 1.3 Mikroişlemci ile Mikrodenetleyici Arasındaki Farklar Mikroişlemci ile kontrol edilecek bir sistemi kurmak için en azından şu üniteler bulunmalıdır. CPU,RAM,I/O ve bu ünitelerin arasındaki veri alışverişlerini sağlamak için DATABUS (Data Yolu ) gerekmektedir. Elbette bu üniteleri yerleştirmek için baskılı devreyi unutmamak gerekir. Mikrodenetleyici ile kontrol edilecek sistemde ise yukarıda saydığımız ünitelerin yerine geçecek tek bir chip ve birde devre kartı kullanmak yetecektir. Ayrıca da kullanım ve programlama kolaylığı da ikinci bir avantajıdır. Örneğin, bir programcı mikrodenetleyiciyi programlayarak önceden belirlenen koşulları yada I/O uçlarından gelen verileri ele alarak kararlar verdirebilir. Eldeki verileri kullanarak bazı matematik ve mantıksal işlevleri yürütüp elde ettiği neticeyi yine I/O uçlarından digital veriler olarak çıkarabilir.

17 9 İKİNCİ BÖLÜM PIC MİKRODENETLEYİCİSİ 2.1 Genel Tanımlama PIC, adını İngilizce'deki Peripheral Interface Controller cümlesindeki kelimelerin baş harflerinden almış olan bir mikrodenetleyicidir. Eğer bu cümleyi Türkçe'ye çevirirsek, çevresel üniteleri denetleyici arabirim gibi bir anlam çıkacaktır.pic gerçekten de çevresel üniteler adı verilen lamba,motor,role,ısı ve Işık sensörü gibi I/O elemanların denetimini çok hızlı olarak yapabilecek şekilde dizayn edilmiş bir chip'tir. RICS mimarisi adı verilen bir yöntem kullanılarak üretildiklerinden bir PIC'i programlamak için kullanılacak olan komutlar oldukça basit ve sayı olarak da azdır. 1980'lerin başından itibaren uygulanan bir tasarım yöntemi olan RISC (Reduced Instruction Set Computer) mimarisindeki temel düşünce, daha basit ve daha az komut kullanılmasıdır. örneğin PIC16F84 mikrodenetleyicisi toplam 35 komut kullanılarak programlanabilmektedir. Bir mikrodenetleyici ile çalışmaya başlayanlar için en uygun seçenek PIC16F84 denetleyicisidir. çünkü Flash belleğe sahip olan PIC16F84'i programlayıp ve deneylerde kullandıktan sonra, silip yeniden program yazmak PIC ile yeni çalışmaya başlayanlar için büyük kolaylıktır. Böylece işe yeni başlayanlar yaptıkları programlama hataları nedeniyle chip'i atmak zorunda kalmayacaklardır. Gerçi EPROM program belleği olan chip'lere de yeniden yazmak mümkündür ama, bu durumda bir EPROM silici cihazına ihtiyaç vardır. Bir silici cihaz bulunsa bile programı bellekten silmek için en azından dk. Beklemek zorunda

18 10 kalınacaktır. işte PIC16F84'ün bu özelliği mikrodenetleyici kullanmaya yeni başlayanlar için ideal bir seçenektir. PIC 16F84 düşük maliyetli, yüksek performanslı, CMOS, full-statik, 8 bit mikrodenetleyicidir. Tüm PIC 16/17 mikrodenetleyiciler RISC mimarisini kullanmaktadır. PIC16FXX mikroları birçok esas özelliklere sahiptir. 8 seviyeli, derin küme ve çoklu iç ve dış kesme kaynaklarına sahiptir. Harward Mimarisinin ayrı komut ve veri taşıyıcısıyla ayrı 8 bitlik geniş veri taşıyıcılı, 14 bitlik geniş komut kelimesine imkan vermektedir. 2 aşamalı komut hattı tüm komutların tek bir saykıl la (çevrimle) işlenmesini sağlamaktadır. Yalnızca bazı özel komutlar 2 saykıl çekerler. Bu komutlar dallanma komutlarıdır. PIC16FXX mikrodenetleyicileri tipik olarak 2:1 oranında kod sıkıştırmasına erişmektedir ve sınıflarındaki 8 bit mikrodenetleyicilerden 2:1 oranında hız arttırılmasına olanak sağlanmaktadır. (10MHZ) PIC16F84 microchip i 36 bitlik RAM belleğine, 64 bayt EEPROM belleğine ve 13 I/O pin ine sahiptir. Bunun yanı sıra, timer ve sayaç ta mevcuttur. PIC16FXX 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 PIC ler de 4 adet osilatör seçeneği mevcuttur. Bunlarda tek pin li 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

19 11 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. (5m A). 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. PIC16F84 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 özellikle de PIC16F84 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 kodları, 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ı, yüksek performans, kullanım kolaylığı ve I/O esnekliği özellikle de PIC 16F84 mikrosunun daha önce kullanılması hiç düşünülmeyen alanlarda kullanılmasını sağlamaktadır. (Bunlar ; timer fonksiyonları, seri kominikasyon, PWM fonksiyonları ve birlikte işlemci uygulamaları) Seri sistem içi programlama özelliği (iki pinin üzerinden)

20 12 ürünün tamamen toplanması ve test edilmesinden sonra ürünün alıştırılmasının esnekliğine olanak vermektedir. Bu özellik sayesinde ürün serileştirilebilmekte ve veriler saklanabilmektedir. 2.2 Gelişme Desteği PIC16FXX sınıfı tam özellikli mikrobirleştirici, yazılım simülatörü, devre içi emülatör, düşük maliyetli program geliştirme ve tam özellikli programlayıcı ile desteklenmiştir. PIC 16F84 PIC16C5X mikrokontrolerlerinin geliştirilmiş halidir. PIC16C5X için yapılan devrelerde kolaylıkla PIC16F84 kullanılabilir. 2.3 Elektrikle Silinebilen Mikrokontrolörler 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 in PICSTART plus veya PROMATE II programlayıcıları tarafından silinebilmesi ve yeniden programlanabilmesidir.

21 Mimari Olarak İncelenmesi PIC16FXX sınıfının üstün performansı genellikle RISC mikroçiplerinde bulunan birçok mimari özelliklere sahiptir. Başlangıç olarak PIC16FXX Harward mimarisini kullanmaktadır. Bu mimari ayrı belleklerden erişilen program ve verilere sahiptir. Böylece PIC mikrosu program belleği ve veri belleği taşıyıcılarına sahipken programların ve verilerin aynı bellekten getirilen geleneksel Von Neuman mimarisi üzerinde bant genişliği iyileştirilmektedir. Programların ve veri belleklerinin ayrılması komutların 8 bitlik geniş veri kelimesinden farklı boyutlandırılmasına olanak vermektedir. PIC16FXX mikroları tekli kelimeye imkan veren 14 bit taşıyıcı üzerinden 14 bit komutu tek bir süreçte uygulamaktadır. İki aşamalı hat komut sürecini ve yürütülmesini biraraya getirmektir. Bunun sonucu olarak, program bölünmeleri dışında tüm komutlar tek bir süreçle yürütülmektedir 10MHZ). PIC 16FXX aygıtları,kayıt dosyalarına ve veri belleğine doğrudan veya dolaylı olarak yönlenebilmektedir. Program Sayacı dahil bütün özel fonksiyon kayıtları veri belleğine yerleştirilmiştir. Adres modunu kullanarak herhangi bir kaydın üstüne herhangi bir işlemin gerçekleşmesini mümkün kılan Ortogonal (simetrik) komutlarda kurulmuştur. Simetrik özelliği ve özel optimal durumların eksikliği PIC 16FXX ile programlamayı daha da etkin kılmaktadır. İlaveten enformasyon eğrisi önemli ölçüde azaltılmıştır. PIC16FXX mikroları 8 bitlik ALU ve W (working) registerine sahiptir. W registerindeki veri ile herhangi bir kayıt dosyası arasında aritmetik ve boolean fonksiyonları uygulanmaktadır. ALU 8 bit uzunluğundadır ve toplama, çıkarma, değiştirme ve çeşitli lojik işlemleri içerir. İki bilgili komutlarda bir bilgi tipik olarak

22 14 W registeridir diğer bilgi ise dosya kaydı veya hazır sabit değerdir. Tekli komutlarda bilgi ya W kaydı ya da dosya kaydıdır. Yürütülen komutlara dayanarak ALU, STATUS kaydındaki Caryy (C), Digit Caryy (DC) ve Zero (Z) bitlerini etkileyebilmektedir. C ve DC bitleri, çıkarmalarda, nispeten çıkarma işleminde ödünç alan ve sayısal ödünç alan bit olarak işlemektedir. 2.5 Komut Akımı / Bilgi İletimi Komut süreci dört Q sürecinden oluşmaktadır. (Q1, Q2, Q3 ve Q4). Komut devri ve yürütülmesi şöyle iletilmektedir. Devir bir komut sürecini üstlenirken decode ve yürütme diğer komut sürecini üstlenmektedir. Bununla birlikte bilgi iletim nedeniyle, her bir komut etkin olarak bir süreçte yürütülür. Eğer komut program sayacının değişmesine neden olmuşsa ( örn. GOTO komutu) o zaman komutun tamamlanması için iki süreç gereklidir. Devir süreci her Q1 de değeri bir artan program sayacı (PC) ile başlar. Yürütme sürecinde işleyen komut Q1 sürecindeki Komut kaydı na gönderilir. Daha sonra bu komut Q2, Q3 ve Q4 süreçleri boyunca decode edilir ve yürütülür. Veri belleği Q2 boyunca okunur (Bilgi okunması) ve Q4 boyunca yazılır (Yazım hedefi). 2.6 Bellek Organizasyonu PIC16F84` de 2 bellek bloğu mevcuttur. Bunlar program belleği ve veri belleğidir. 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.

23 15 Bunun ötesinde, veri belleği genel amaçlı RAM ve özel fonksiyon kayıtları (SFR S ) 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, doğrudan veri belleğine planlanmamış, fakat dolaylı olarak planlanmıştır ve dolaylı adres göstergeleri okumak/yazmak için EEPROM belleğinin adresini belirlemektedir. EEPROM belleği 64 bayt ve 10h-3Fh adres uzunluğuna sahiptir. 2.7 Veri Bellek Organizasyonu Veri belleği ikiye ayrılır. Birincisi özel fonksiyon kayıt alanı (SFR), diğeri ise genel amaçlı kayıt alanıdır. SFR ler aygıtın işlemini kontrol eder. Veri belleğinin bölümleri kümelenmiştir. Bu kümeler BANK adını alırlar. Bu hem SFR alanı hem de GPR alanı içinde geçerlidir. GPR alanı genel amaçlı RAM`in 16 baytından daha fazlasına olanak sağlanabilmesi için kümelenmiştir. SFR`nin kümelenmiş alanı özel fonksiyonları kontrol eden kayıtlara aittir. Kümeleme küme seçimi için kontrol bitleri gerektirmektedir. Bu kontrol bitleri STATUS kaydında yer almaktadır. Veri belleğin tümüne ya direkt her kayıt dosyasının mutlak adreslerini kullanarak ya da dolaylı yoldan dosya seçim kaydı (FSR) üzerinden erişilebilir. Dolaylı adresleme, veri belleğinin kümelenmiş alanına erişmek için RP1: RPO` un şimdiki değerlerini kullanmaktadır.

24 16 Veri belleği genel amaçlı kayıt ve özel fonksiyon kaydını içeren iki kümeye bölünmektedir. RPO bitinin (STATUS <5>) (Yani 5. Bit RPO bitidir.) silinmesiyle BANK 0 seçilir. RPO` in kurulması BANK 1`i seçer. Her bir BANK (küme) 7Fh (128 bytes) kadar uzanır (genişler). Her bir kümenin ilk on iki yerleşimi özel fonksiyon kaydı için rezerve edilmiştir. Kalanı ise statik RAM olarak genel amaçlı kayıt yürütebilmektedir. 2.8 Genel Amaçlı Kayıt Dosyası Bütün aygıtlar belirli bir miktarda genel amaçlı kayıt (GPR) alanına sahiptir. Her bir GPR 8 bit uzunluğundadır ve dolaylı yada doğrudan FSR üzerinden erişilmektedir. BANK 1`de ki GPR adresleri BANK 0`daki adreslere planlanır. Örnek olarak, 0Ch veya 8Ch adresleme yerleşimi aynı GPR` ye erişecektir 2.9 Dış Yüzeysel özellikler: 13 I/O pini ile bağımsız komut kontrolü Doğrudan LED sürücüsü için yüksek akımda indirme/çıkarma Her pin için Max. 25 ma'lik sink akımı Her pin için Max. 20 ma'lik source akımı TMRO: 8 bitlik programlanabilir ön derecelendirici ile 8 bitlik zamanlayıcı/sayacı

25 Özel Mikrokontrolör Özellikleri: Power-on Reset (POR) Power-up Timer (PWRT) Oscillator Start-up Timer (OST) Güvenli işlemler için chip üstünde olan RC osilatör ile Watchdog Timer (WDT) Kod koruması Güç korumalı SLEEP modu Seçilebilir osilatör seçenekleri Seri sistem içi programlama (iki pin yolu ile) 2.11 CMOS Teknolojisi: Düşük güç,yüksek hız CMOS EEPROM teknolojisi Bütünüyle statik dizayn Geniş aralıklı işletme voltajı: Ticari : 2.0V-6.0V Endüstriyel : 2.0V-6.0V Düşük güç tüketimi < 2mA 5V,4MHz 60 ma 2V,32 khz 26 ma tipik standby 2V

26 18 ÜÇÜNCÜ BÖLÜM PIC ÇEŞİTLERİ 3. 1 PIC16F84 Mikrodenetleyicisi: Genel Özellikler Sadece 35 komut ile programlama 13 adet giriş/çıkış portu Çalışma hızı maks DC-10 MHz 8 bit data 1Kx14 EEPROM Program Hafızası 64 Byte EEPROM Data Hafızası Direkt/Dolaylı Adresleyebilme 4 adet Kesme Fonksiyonu. (Harici Kesme, TMR0, RB Change, EEPROM Write) 1 milyondan fazla yazma silme Kolay ve ucuz programlayabilme Her bir pinden 25 ma e kadar akım verebilme 8 bit programlanabilir zamanlayıcı/sayıcı

27 Pin Diyagramı Şekil 3.1: 16C84 Pin Diyagram 16F84 13 adet giriş çıkış portu bulunmaktadır. Bunlardan 8 bitlik olanına PortB, 5 bitlik olanına da PortA denir. PortA nın 4 numaralı pini open kollektör olup giriş çıkış yapmak için bir direnç ile +5 e çekmek gerekmektedir. Diğer portlardan hiçbir ek elemana ihtiyaç duymadan giriş/çıkış yapılabilir. Mikrodenetleyicinin mimarisi şekil 3.2 de verilmiştir.

28 Mimari Şekil 3.2: Mimari Mikrodenetleyiciyi programlamadan önce kaydedici haritasını bilmemiz gerekmektedir. PIC mimarisinde genelde tüm işlemler W (work) kaydedicisi üzerinden yapılır. Program yazmadan önce hangi porttan giriş hangi porttan çıkış yapılacağının belirlenip bunun mikrodenetleyiciye anlatılması gerekmektedir.bu da TrisA ve TrisB kaydedicilerine değerler atayarak olur. Şekil 3.3 de 16F84 ün kaydedici haritası görülmektedir.

29 Register Haritası Şekil 3.3: Register Haritası Şekil 3.3 e dikkat edilirse Bank0 ve Bank1 olarak 2 bölme vardır. Bank1 de bilmemiz gereken en önemli kaydediciler Option, TrisA ve TrisB dir. Bank0 da ise

30 22 Status,PortA,PortB,TMR0 ve Intcon dur. Bu kaydedicilerin bit-bit açıklaması ise şekil 3.4 de verilmiştir Özel Registerlerin Açıklaması: Şekil 3.4: Özel Kaydedicilerin Açıklamaları Şimdi bu kaydedicileri kısa kısa açıklayalım. PORTA: 5 adet giriş/çıkış pini vardır.

31 23 PORTB: 8 adet giriş/çıkış pini vardır. TRISA: PortA dan giriş mi yoksa çıkış mı yapılacağını belirleyen kaydedicisidir. İlgili gözelere 1 yüklenirse giriş, 0 yüklenirse çıkış yapılır. Örnek olarak MOVLW b MOVWF TRISA Bu komut satırları ile PortA nın 0,1 nolu pinleri Giriş, 2,3,4 nolu pinleri ise çıkış olarak tanımlanmış olur. TRISB: TrisA ile aynı. STATUS: Şekil 3.5: Status Kaydedicisi Bit7: IPR 0: Bank0-1 1: Bank2-3 Bit6-5: RP0-RP1 00:Bank0 01:Bank1 10:Bank2 11:Bank3 Bit4: TO Süre Aşım Biti 0: WDT Süre aşım işlemi yapmışsa 1: CR WDT yada SLEEP yapılmışsa Bit3: PD Güç Kesme Biti 0:SLEEP den sonra 1: CLRWDT dan sonra

32 24 Bit2: Z Bit1:DC Bit0:C 0:Yapılan aritmetik işlemin sonucu sıfırdan farklı ise 1: Yapılan aritmetik işlemin sonucu sıfır ise 1: 8 bitin Düşük anlamlı ilk 4 bitinden taşma olursa 0: Taşma olmazsa (ADD komutları ile değişir) 1: 8 bitten taşma olursa 0: Taşma olmazsa(add komutları ile değişir) OPTION : Şekil 3.6: Option Registeri R = Okunabilir Bit W = Yazılabilir Bit U= Önemsiz sıfır olarak okunur n = Değeri POR resete bağlıdır. Bit7:RBPU Bit6:INTEDG 1:PB0 Bit5:T0CS Bit4:T0SE Bit3:PSA Bit2,1,0: 0: PortB Pull-Up disable 1: PortB Pull-Up enable 0: PB0 düşen kenarda interrupt kabul eder. Yükselen kenarda interrupt kabul eder. 0: T0CKI den gelen darbeler Clock kabul edilir 1: Clock kaynağı XTAL in ürettiği dahili darbeler olur. (T0CS=1 ise) 0: T0CKI den gelen darbeler yükselen kenarda Clock u arttırır. 1: T0CKI den gelen darbeler düşen kenarda Clock u arttırır. 0: Ön bölme değeri TMR0 için ayarlı 1: Ön bölme değeri WDT için ayarlı Ön bölme değeri set etme

33 PIC16F628 Mikrodenetleyicisi : Özellikleri : Son yıllarda PIC18F84 ün yerini almaya başlayacak olan PIC16F627/628 düşük fiyatlı 8-bit bir mikrodenetleyicidir. PIC16F84 ile bacak uyumludur ve bu PICmikro için yazılan programların hiçbir değişiklik yapmadan aynen PIC16F628 üzerinde de çalışır. FLASH belleğe sahip olduğu için elektriksel olarak kolayca silinip yeniden yazılabilir. PIC16F628 PIC mikroların önemli özelliklerinden biride dahili RC osilatörlerin bulunması, böylece haricen bir direnç ve bir kondansatörü kullanmadan daha sade devreler oluşturmayı sağlar. Çizelge 3.1: PIC16F627/628 Özellikleri Özellikler PIC16F627 PIC16F628 Max çalışma hızı 20 MHz 20MHz Program belleği 1Kx14 Word FLASH 2Kx14 Word FLASH Kullanıcı RAM 224x8 Byte 224x8 Byte EEPROM veri belleği 128 Byte 128 Byte Timer (sayıcı) TMR0,TMR1,TMR2 TMR0,TMR1,TMR2 Karşılaştırıcı 2 2 Captur/compare/PWM 1 1 Seri iletişim USART USART Interrupt kaynağı sayısı I/O pini sayısı Çalışma gerilimi V V

34 Bacak Bağlantıları PIC16F84 ün pinleri ile tam uyumludur. Bu nedenle 16F84 için geliştirilmiş kodları hiçbir değişikliğe tabi tutmadan 16F628 e yükleyebilir ve çalışmanızı deneyebilirsiniz. PIC16F628 in ilave fonksiyonları vardır. Örneğin RA0, RA1 pinleri analog karşılaştırıcı girişi olarak kullanılabilir. MCLR pini, giriş pini olarak kullanılabilir. A2/AN2/VREF 1 18 RA1/AN1 RA3/AN3/CMP RA0/AN0 RA4/TOCK1/CMP RA7/OSC1/CLKIN RA5/MCLR /THV 4 15 RA6/OSC2/CLKOUT Vss 5 14 VDD RB0/INT 6 13 RB7/T1OSI RB1/RX/DT 7 12 RB6/T1OSO/T1CKI RB2/TX/CK 8 11 RB5 RB3/CCP RB4/PGM Şekil 3.7: PIC16F627/628 Bacak Bağlantısı Pin Özellikleri PIC16F628, 18 bacaklı olmasına rağmen 16 tane I/O pini vardır. Çizelge 3.2 de görüleceği gibi her pinin birden fazla işlevi vardır. Gerektiğinde Vss, Vdd pinleri hariç tüm pinleri giriş/çıkış verileri için kullanılabilir. Bu pinlerin 8 i (RA0- RA7) PORTA olarak, 8 i de PORTB(RB0-RB7) olarak kullanılır. Çizelge 3.2: PIC16F627/628 mikrodenetleyicilerin pin adları ve görevleri Pin Adı RA0/AN0 RA1/AN1 RA2/AN2/VREF Açıklama İki yönlü dijital I/O portu / Analog komparatör girişi İki yönlü dijital I/O portu / Analog komparatör girişi İki yönlü dijital I/O portu / Analog komparatör girişi/vref girişi

35 27 RA3/AN3/CMP1 RA4/TOCKI/CMP2 RA5/MCLR /THV RA6/OSC1/CLKOUT RA7/OSC2/CLKIN RB0/INT RB1/RX/DT RB2/TX/CK RB3/CCP1 RB4/PGM RB5 RB6/T1OSO/T1CKI RB7/T1OSI Vss Vdd Digital I/O portu / Analog komparatör girişi/ komparatör çıkışı Digital I/O portu / TIMER 1 harici clock girişi/ komparatör çıkışı Digital I/O portu / Reset girişi yada programlama esnasında gerilim giriş ucu olarak kullanılır. MCLR olarak konfigüre edildiğinde aktif 0 girişi PIC i reset eder. MCLR/THV girişi normal çalışma esnasında Vdd gerilimini geçmemelidir. Dijital I/O portu/ Kristal osilatör girişi. ER osilatörü ve dahili RC osilatörü kullanıldığında OSC1 frekansının 1/4 ünün alındığı pin Dijital I/O portu/ Kristal osilatör girişi ve harici clock girişi olarak kullanılan pin Dijital I/O portu/ Harici kesme Girişi Dijital I/O portu/ USART veri alış pini / senkronize data I/O pini Dijital I/O portu / USART veri gönderme pini/ senkronize clock I/O pini Dijital I/O portu /Capture-Compare PWM I/O Dijital I/O portu / düşük gerilim programlama giriş pini. Pindeki seviye değişikliği SLEEP moduna giren PIC i uyandırır. Dijital I/O portu / Pindeki seviye değişikliği SLEEP moduna giren PIC i uyandırır. Dijital I/O portu / Timer osilatör çıkışı / Timer1 clock girişi Dijital I/O portu / Timer1 osilatör girişi Güç kaynağının GND ucuna bağlanacak pin Güç kaynağının + ucuna bağlanacak pin

36 Bellek Organizasyonu Program Belleği Organizasyonu PIC16F62X, 8Kx14 bitlik program belleği alanını adresleyebilecek kapasiteye sahip olan 13 bitlik bir counter i vardır. PIC16F627 de sadece ilk 1Kx14 (0000h- 03FFh) PIC16F628 de ise 2Kx14 (0000h-07FFh) adresine fiziksel olarak ulaşılabilir. Reset vektörü 0000h adresinde ve kesme vektörü 0004h adresindedir. PC< 12:0 > CALL, RETURN 13 RETFIE, RETLW Yığın Seviye 1 Yığın Seviye 2.. Yığın Seviye 8 Reset Vektörü 000h Kesme Vektörü On-Chip program hafızası FFh 0800h 1FFFh Şekil 3.8: PIC16F627/628 Program Belleği Data Belleği Data belleği 4 Bank a ayrılmıştır. Bellek banklarında genel amaçlı kaydediciler (kullanıcı RAM) ve özel fonksiyon kaydedicileri bulunmaktadır. Özel fonksiyon kaydedicileri her bir bankın ilk 32 adresine yerleştirilmiştir. 20h-7Fh, A0h- FFh, 120h-14Fh, 170h-17Fh ve 1F0h-1FFh adres aralıkları genel amaçlı kaydediciler için

37 29 ayrılmışlardır. Bu 8 bitlik kaydediciler kullanıcının programda gerekli olan değişkenler için ayırıp kullanabileceği RAM alınıdır. Aşağıda RAM bellekteki banklara nasıl ulaşılacağını göstermektedir. Çizelge 3.3: Bank seçme bit lerinin durumu RP1 RP0 BANK0 0 0 BANK1 0 1 BANK2 1 0 BANK3 1 1 Bir kaydedici bankını seçmek için STATUS kaydedicisindeki RP0 ve RP1 bitleri kullanılmaktadır. 16F84 de iki bank (BANK0, BANK1) bulunduğundan sadece RP0 bitini kullanmak suretiyle banklara ulaşabiliyoruz. Bit7 IRP RP1 RP0 TO PD Z DC C Bit0 Şekil 3.9: STATUS kaydedici 16F628 register haritası 224x8 olarak organize edilmiştir. Her bir bellek hücresine doğrudan olarak ulaşılabildiği gibi FSR kaydedicisi kullanarak dolaylı olarak ta erişilebilir. 3.3 PIC16F877 Mikrodenetleyicisi Genel Özellikleri : PIC16F877, dünyada kullanıma sunulmasıyla eş zamanlı olarak Türkiye'de de uygulama geliştirenlerin kullanımına sunuldu. PIC16F877, belki de en populer PIC işlemci olan PIC16F84'ten sonra kullanıcılara yeni ve gelişmiş olanaklar sunmasıyla hemen göze çarpmakta. Program belleği FLASH ROM olan F877'de yüklenen

38 30 program F84'de olduğu gibi elektriksel olarak silinip yeniden yüklenebilmektedir. Aşağıdaki Çizelge F877 özelliklerini göstermektedir. Çizelge 3.4: PIC16F877 Özellikleri Özellikler Çalışma Hızı Program Belleği EEPROM VerBelleği Kullanıcı RAM PIC16F877 DC-20MHZ 8Kx14 word Flash ROM 256 Byte 368x8 byte Giriş Çıkış PortSayısı 33 Timer A/D çevirici Timer0,Timer1,Timer2 8 Kanal 10 bit 16 bit Capture Capture/Comp./PWM 16 bit Compare 10 bit PWM çözünürlük Seri çevresel arayüz Paralel slave port USART/SCI SPI(Master) vei2c(master/slave)modunda SPI portu (senkron seri port) 8 bit harici RD,WR ve CS kontrolu 9 bit adresli Özellikle 16C6x ve 16C7x ailesinin tüm özelliklerini barındırması, 16F877 yi kod geliştirmede de ideal bir çözüm olarak gündeme getirmekte. Konfigürasyon bitlerine dikkat etmek şartıyla C6x veya C7x ailesinden herhangi bir işlemci için geliştirdiğiniz kodu hemen hiç bir değişikliğe tabi tutmadan F877 e yükleyebilir ve çalışmanızı deneyebilirsiniz. Bunun yanı sıra F877, 16C74 ve 16C77 işlemcileriyle de bire bir bacak uyumludur.

39 31 Şekil 3.10: PIC16F877 nin Bacak Bağlantıları PIC16F877 Portlarının Fonksiyonları PORTA Her bir biti bağımsız olarak giriş veya çıkış olarak tanımlanabilmektedir. 6 bit genişliğindedir (F84 de 5 bittir). RA0, RA1,RA2,RA3 ve RA5 bitleri analog/sayısal çevirici olarak konfigüre edilebilmektedir. Buna ek olarak RA2 ve RA3 gerilim referansı olarak da konfigüre edilebilmektedir (bu durumda bu bitler aynı anda A/D çevirici olarak kullanılamazlar). İlgili yazmaçlar ve adresleri aşağıdaki gibidir. PORTA 0x05 TRISA 0x85 ; giriş/çıkış belirleme yazmacı

40 32 ADCON1 0x9F ; RA portlarının A/D, referans gerilimi veya sayısal giriş/çıkış seçiminde kullanılır.işlemciye ilk defa gerilim uygulandığında RA4 hariç diğer beş PORTA biti A/D çeviricidir. Eğer RA portunun bazı bitlerini sayısal giriş/çıkış olarak kullanmak isterseniz ADCON1 yazmacında değişiklik yapmanız gerekmektedir PORTB Her bir biti bağımsız olarak sayısal giriş veya çıkış olarak tanımlanabilmektedir. 8 bit genişliğindedir. B portunun her bacağı dahili bir dirençle VDD ye bağlıdır (weak pull-up). Bu özellik varsayılan olarak etkin değildir. Ancak OPTION yazmacının 7.bitini 0 yaparak B portunun bu özelliğini etkinleştirebilirsiniz. RB4-RB7 bacakları aynı zamanda bacakların sayısal durumlarında bir değişiklik olduğunda INTCON yazmacının 0. biti olan RBIF bayrağını 1 yaparak kesme oluştururlar. Bu özelliği, işlemci SLEEP konumundayken, devreye bağlı tuş takımınının her hangi bir tuşuna basıldığında işlemcinin yeniden etkinleşmesi için kullanabilirsiniz. Bütün bunların yanı sıra RB6 ve RB7 yüksek gerilim programlama, RB3 ise düşük gerilim programlama modlarında da kullanılmaktadır. İlgili yazmaçlar ve adresleri aşağıdaki gibidir. PORTB 0x06 TRISB 0x86 ; giriş/çıkış belirleme yazmacı OPTION_REG 0x81, 0x181

41 PORTC Her bir biti bağımsız olarak sayısal giriş veya çıkış olarak tanımlanabilmektedir. 8 bit genişliğindedir. SPI, USART, Capture/Compare ve PWM gibi özel fonksiyonlar, ilgili yazmaçların ayarlanmasıyla bu porttan yürütülmektedir. İlgili yazmaçlar ve adresleri aşağıdaki gibidir. PORTC 0x07 TRISC 0x87 ; giriş/çıkış belirleme yazmacı PORTD Her bir biti bağımsız olarak sayısal giriş veya çıkış olarak tanımlanabilmektedir. 8 bit genişliğindedir. Bütün port bacakları Schmitt Trigger girişlidir. TRISE yazmacının 4.biti olan PSPMODE bitini 1 yaparak paralel slave mode da kullanılabilir. Bu fonksiyon aracılığıyla 8 bit genişliğindeki her hangi bir mikroişlemci bus ına bağlıyabilirsiniz. PORTD 0x08 TRISD 0x88 ; giriş/çıkış belirleme yazmacı TRISE 0x PORTE Her bir biti bağımsız olarak giriş veya çıkış olarak tanımlanabilmektedir. 3 bit genişliğindedir. RE0, RE1 ve RE2 bacaklarında Schmitt Trigger giriş tamponları vardır.her bir bacak analog/sayısal çevirici olarak konfigüre edilebilmektedir. Eğer PORTD paralel slave port olarak konfigüre edilirse, RE0, RE1 ve RE2 bacakları

42 34 PORTD nin bağlandığı mikroişlemci bus ında sırasıyla READ, WRITE ve CHIP SELECT kontrol girişleri olarak kullanılır. Bunun için TRISE uygun biçimde ayarlanmalıdır. İlgili yazmaçlar ve adresleri aşağıdaki gibidir. PORTE 0x09 TRISE 0x89 ; giriş/çıkış belirleme yazmacı ADCON1 0x9F ; RE portlarının A/D veya sayısal giriş/çıkış olarak seçiminde kullanılır İşlemciye ilk defa gerilim uygulandığında üç PORTE biti de A/D çeviricidir. Eğer RE portunun bazı bitlerini sayısal giriş/çıkış olarak kullanmak isterseniz ADCON1 yazmacında değişiklik yapmanız gerekmektedir Program ve Kullanıcı RAM Bellek Organizasyonu PIC16F877 de üç bellek bloğu bulunmaktadır. Program ve kullanıcı veri belleği ayrı bus yapısına sahiptir ve aynı anda erişilebilir. F877 de 13 bitlik bir program sayacı vardır ve 8Kx14 Word adreslemeye yeterlidir. Reset vektörü 0x00 da kesme vektörüyse 0x04 de yer almaktadır.

43 35 Şekil 3.11: Program Bellek Haritası Kullanıcı veri belleği birden fazla yazmaç bankasına bölünmüştür. Bu yazmaç bankalarında hem genel amaçlı yazmaçlar hem de özel fonksiyon yazmaçları (SFR) bulunmaktadır. Yazmaç bankasını seçmek için STATUS yazmacındaki RP1 ve RP0 bitleri kullanılmaktadır. F84 de iki yazmaç bankası olduğunu ve yalnızca RP0 bitini ayarlamak suretiyle ilgili yazmaç bankasının seçildiğini hatırlayınız STATUS yazmacı <RP1,RP0> bitlerini aşağıdaki gibi ayarlayarak istediğimiz yazmaç bankasına erişebiliriz. Her yazmaç bankası 128 Byte genişliğindedir (7Fh).

44 36 00: Bank0 01: Bank1 10: Bank2 11: Bank Özel fonksiyonlar Paralel Slave Port TRISE yazmacının PSPMODE bitini 1 yaptığınızda PORTD yi 8 bit genişliğinde mikroişlemci portu olarak kullanabilirsiniz. Bu arada RE0,RE1 ve RE2 yi TRISE ve ADCON1 yazmaçlarında ilgili ayarları yaparak sayısal giriş olarak da tanımlamanız gerekiyor. Böylece harici bir mikro işlemci, RE0,RE1 ve RE2 yi kontrol olarak kullanarak 8 bitlik veri bus ına bağlı 16F877 nin PORTD sine hem veri yazabilir hem de okuyabilir USART USART, yani senkron/asenkron alıcı verici F877 deki iki seri giriş/çıkış modülünden biridir. Seri iletişim arayüzü (SCI: serial comm.interface) olarak da bilinen USART, monitör veya PC gibi aygıtlara tam çift yönlü asenkron bağlantıda kullanılmak üzere konfigüre edilebilmektedir. A/D veya D/A arayüzlerine, seri EEPROM lara yarım çift yönlü senkron bağlantıda kullanılmak üzere de konfigüre edilebilir. USART aşağıdaki gibi konfigüre edilebilmektedir. Asenkron : tam çift yönlü (full duplex) Senkron: Master, yarım çift yönlü (half duplex) Senkron: Slave, yarım çift yönlü

45 37 RC6 verici, RC7 ise alıcı port olarak kullanılmaktadır. RCSTA (0x18) ve TXSTA (0x98) yazmaçları konfigürasyonda kullanılmaktadır Master Synchronous Serial Port (MSSP) MSSP modülü, diğer çevre birimleri veya mikroişlemcilerle seri iletişimde kullanılmaktadır. Bu çevre birimleri seri EEPROM, kaydırmalı yazmaçlar (shift register), gösterge sürücüleri, A/D çeviriciler vb. olabilir. MSSP modülü aynı anda aşağıdaki iki moddan birine konfigüre edilebilir: 1. Serial Peripheral Interface (SPI) RC5: Seri veri çıkışı (SDO: serial data out) RC4: Seri veri girişi (SDI: serial data in) RC3: Seri saat (SCK: serial clock) 2. Inter Integrated Circuit (I 2 C) RC4: Seri veri (SDA: serial data ) RC3: Seri saat (SCK: serial clock) Bu modlardan birine göre konfigüre etmek içinse SSPSTAT (senkron seri port durum yazmacı, 0x94), SSPCON (senkron seri port kontrol yazmacı, 0x14) ve SSPCON2 (senkron seri port kontrol yazmacı 2, 0x91) yazmaçları ayarlanmalıdır Sayısal Çevirici Modülü A/D modülü 16C7x ailesinden farklı olarak 10 bittir. Toplam 8 A/D kanal vardır. F877 nin güzel bir özelliği de işlemci SLEEP modundayken bile A/D çeviricinin geri planda çalışmasıdır. A/D kanalları için RA4 hariç diğer RA portlarını ve RE

46 38 portlarını kullanabilirsiniz. Aşağıdaki yazmaçlar konfigürasyon ve sonuçta kullanılmaktadır. ADRESH 0x1E ; A/D sonuç yazmacı (High register) ADRESL 0x9E ; A/D sonuç yazmacı (Low register) ADCON0 0x1F ; A/D kontrol yazmacı0 ADCON1 0x9F ; A/D kontrol yazmacı Capture/Compare ve PWM Modülü Her capture/compare ve pwm modülü 16 bitlik yakalama(capture) yazmacı, 16 bitlik karşılaştırma(compare) yazmacı veya 16 bitlik PWM(darbe genişlikli modülasyon) yazmacı olarak kullanılabilir. Yakalama modunda, TMR1 yazmacının değeri RC2/CCP1 bacağının durumunda bir gelişme olduğunda CCPR1H:CCPR1L yazmaçlarına yazılır ve PIR1 yazmacının 2.biti olan CCP1IF kesme bayrağı 1 olur. RC2 bacağının durumu, her alçalan kenarda, her yükselen kenarda, her yükselen 4. veya 16.kenarda kontrol edilecek şekilde CCP1CON yazmacı aracılığıyla ayarlanarak konfigüre edilebilir. Karşılaştırma modundaysa CCPR1 yazmacındaki 16 bitlik değer düzenli olarak TMR1 yazmaç değeriyle karşılaştırılır ve bir eşitlik olduğunda RC2/CCP1 bacağı CCP1CON yazmacında yaptığımız ayara göre 1, 0 olur veya durumunu korur.

47 39 PWM modundaysa RC2/CCP1 bacağı 10 bit çözünürlükte darbe genişlik modülasyonlu bir sinyal üretecek şekilde konfigüre edilebilir. PR2 yazmacı darbe genişlik periyodunun tayininde kullanılmaktadır. CCPR1H 0x16 ; Yakalama/karşılaştırma yazmacı (High register) CCPR1L 0x15 ; Yakalama/karşılaştırma yazmacı (Low register) CCP1CON 0x17 ; kontrol yazmacı PR2 0x92 ; PWM çıkış yazmacı TMR1L 0x0E ; TMR1 yazmacı (High register) TMR1H 0x0F ; TMR1 yazmacı (Low register)

48 40 DÖRDÜNCÜ BÖLÜM PIC BASIC PRO 4.1 Picbasic Pro Ve Özellikleri Mikro Engineering Labs firması tarafından PIC mikrodenetleyileri için geliştirilen Pic Basic pro derleyicisinin kullanımı, DOS ve WINDOWS la birlikte gelen QBASIC in kullanımına çok benzemektedir. BASIC programlama dilinin çok kolay öğrenilir olma özelliğinden kaynaklanan ve dünyanın en çok kullanılan kod geliştirme aracı olma yolundadır. Eğer programlama yapabilmek için bilinmesi gereken en temel işlemi, yani akış diyagramı çıkarabilmeyi ve QBASIC ile basit programlar yapabilmeyi bilmemiz, PicBasic pro yu kullanabilmemiz için yeterlidir. Eğer assembly dilini biliyorsanız, PicBasic kullanımının daha basit ve fonksiyonları itibariyle daha işlevsel olduğunu göreceksiniz. Örneğin PIC assembly ile sayfalar yer tutan LCD kontrolü, seri haberleşme veya seri EEPROM veri alışverişi gibi işlemlerin birkaç satırla hallediyor olması sizi oldukça etkileyecektir. PicBasic Pro program diliyle bir program kolayca ve hızlıca yazmak ve araya da assembly diliyle yazılmış program kodlarını serpiştirmek mümkündür. Bu ilave kodları direkt olarak PBP programı içerisine serpiştirilebileceği gibi istenirse harici bir dosya olarak da PBP içerisine dahil edilebilir. PBP, aksi belirtilmediği sürece 4 MHz frekanslı PIC16F84-04/P PICmikrosu ürerinde çalışacak program dosyalarını yaratır. Bu PICmikro yu çalıştırmak için sadece; 4MHz kristal için 2 adet 22pF lık kondansatör, MCLR ucunu pull-up

49 41 yapmak için 4.7K lık bir direnç ve 5V luk uygun bir güç kaynağı yeterlidir. PICbasic Pro ya gerekli bildiriler yapılmak suretiyle, 16F84 haricindekileri ve hatta 4MHz den farklı osilatör frekansında çalışan PICmikro lar için de dosyalar üretebilir. PBP nin PIC16F84 ü varsayılan olarak ele almasının nedeni, bu chip in kullanım kolaylığı ve avantajlarıdır. 4.2 PicBasic Pro ile Kullanılan PICmikro lar PicBasic Pro derleyicisi çok geniş yelpazedeki 8 pin den 68 pin e kadar bacağı olan ve chip üzeri farklı özellikler içeren (A/D konvertör,hardware timer ve seri port) PICmikro ların programlanmasında gerekli olan kodları üretebilmekte kullanılır. PicBasic Pro derleyicisi ile kod üretemeyeceğiniz bazı PICmikro lar vardır. Bunlar ; PIC16C5X serisindeki PIC16C54 ve PIC16C58 dir. Bu PICmikro lar sık kullanılan ve program belleği 14 bit olanlardan olmayıp, eskiden kullanılan ve 12 bitlik PICmikro lardır. 5X serisi ile bacak uyumluluğu olan bir çok PICmikro mevcuttur. PicBasic Pro derleyici ile programlanabilen ve piyasada bulunan PICmikro ları şöyle sıralayabiliriz: PIC16C554, 556, 558, 61, 62(AB), 620(A), 621(A), 622(A), 63(A), 64(A), 65(AB), 66, 67, 71, 710, 711, 715, 72(A), 73(AB), 74(AB), 76, 77, 773, 84, 923, 924; PIC16F83, 84, 873, 874, 876, 877; PIC16C671, 672 ve PIC Bunların dışında Mikrochip in çok büyük bir hızla eklediği yeni PICmikro lar. PicBasic Pro derleyicisini kullanarak genel amaçlı programlar yapmak için seçilen en uygun PICmikro PIC16F84, PIC16F84A dır. 18 pinli bu mikrodenetleyicilerde flash (veya EEPROM) teknolojisi kullanılması nedeniyle kolayca silinebilmesi, çok hızlı program geliştirmeyi sağlar. Silme yazma işlemi programlayıcı yazılımındaki

PIC 16F877 nin kullanılması

PIC 16F877 nin kullanılması PIC 16F877 nin kullanılması, dünyada kullanıma sunulmasıyla eş zamanlı olarak Türkiye de de uygulama geliştirenlerin kullanımına sunuldu., belki de en popüler PIC işlemcisi olan 16F84 ten sonra kullanıcılara

Detaylı

PIC Mikrodenetleyicileri

PIC Mikrodenetleyicileri PIC Mikrodenetleyicileri Intel 1976 da 8031/51 ailesini piyasaya sürdüğünde dünyanın en popüler mikroişlemcisi olmuştu. Bu işlemci dünya üzerinde 12 den fazla firma tarafından (İntel, Phillips, Dallas,

Detaylı

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

İçİndekİler. 1. Bölüm - Mİkro Denetleyİcİ Nedİr? 2. Bölüm - MİkroDenetleyİcİlerİ Anlamak XIII İçİndekİler 1. Bölüm - Mİkro Denetleyİcİ Nedİr? Mikrodenetleyici Tanımı Mikrodenetleyicilerin Tarihçesi Mikroişlemci- Mikrodenetleyici 1. İki Kavram Arasındaki Farklar 2. Tasarım Felsefesi ve Mimari

Detaylı

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

BÖLÜM 1: MİKRODENETLEYİCİLER V İÇİNDEKİLER BÖLÜM 1: MİKRODENETLEYİCİLER ve PIC16F877A... 13 1.1 Giriş... 13 1.2 Mikrochip Mikrodenetleyici Ailesi... 14 1.2.1 PIC12CXXX/PIC12FXXX Ailesi... 15 1.2.2 PIC16C5X Ailesi... 15 1.2.3 PIC16CXXX/PIC16FXXX

Detaylı

BÖLÜM 2 8051 Mikrodenetleyicisine Giriş

BÖLÜM 2 8051 Mikrodenetleyicisine Giriş C ile 8051 Mikrodenetleyici Uygulamaları BÖLÜM 2 8051 Mikrodenetleyicisine Giriş Amaçlar 8051 mikrodenetleyicisinin tarihi gelişimini açıklamak 8051 mikrodenetleyicisinin mimari yapısını kavramak 8051

Detaylı

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

Adres Yolu (Address Bus) Bellek Birimi. Veri Yolu (Databus) Kontrol Yolu (Control bus) Şekil xxx. Mikrodenetleyici genel blok şeması MİKRODENETLEYİCİLER MCU Micro Controller Unit Mikrodenetleyici Birimi İşlemci ile birlikte I/O ve bellek birimlerinin tek bir entegre olarak paketlendiği elektronik birime mikrodenetleyici (microcontroller)

Detaylı

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

1. Ders Giriş. Mikroişlemcili Sistem Uygulamaları 1. Ders Giriş Hazırlayan: Arş. Gör. Hakan ÜÇGÜN Mikroişlemcili Sistem Uygulamaları Dikkat ettiniz mi: Etrafımızdaki akıllı cihazların sayısı ne kadar da arttı. Cep telefonlarımız artık sadece iletişim

Detaylı

İÇİNDEKİLER 1. KLAVYE... 11 2. KLAVYE RB0... 19 3. KLAVYE RBHIGH... 27 4. 4 DİSPLAY... 31

İÇİNDEKİLER 1. KLAVYE... 11 2. KLAVYE RB0... 19 3. KLAVYE RBHIGH... 27 4. 4 DİSPLAY... 31 İÇİNDEKİLER 1. KLAVYE... 11 Satır ve Sütunlar...11 Devre Şeması...14 Program...15 PIC 16F84 ile 4x4 klavye tasarımını gösterir. PORTA ya bağlı 4 adet LED ile tuş bilgisi gözlenir. Kendiniz Uygulayınız...18

Detaylı

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

Mikroişlemci Nedir? Mikrodenetleyici Nedir? Mikroişlemci iç yapısı Ders Giriş. Mikroişlemcili Sistem Uygulamaları Mikroişlemcili Sistem Uygulamaları 1. Ders Giriş Dikkat ettiniz mi: Etrafımızdaki akıllı cihazların sayısı ne kadar da arttı. Cep telefonlarımız artık sadece iletişim sağlamakla kalmıyor, müzik çalıyor,

Detaylı

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

İŞLEMCİLER (CPU) İşlemciler bir cihazdaki tüm girdilerin tabii tutulduğu ve çıkış bilgilerinin üretildiği bölümdür. İŞLEMCİLER (CPU) Mikroişlemci Nedir? Mikroişlemci, hafıza ve giriş/çıkış birimlerini bulunduran yapının geneline mikrobilgisayar; CPU' yu bulunduran entegre devre çipine ise mikroişlemci denir. İşlemciler

Detaylı

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

B.Ç. / E.B. MİKROİŞLEMCİLER 1 MİKROİŞLEMCİLER RESET Girişi ve DEVRESİ Program herhangi bir nedenle kilitlenirse ya da program yeniden (baştan) çalıştırılmak istenirse dışarıdan PIC i reset yapmak gerekir. Aslında PIC in içinde besleme

Detaylı

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

8051 Ailesi MCS51 ailesinin orijinal bir üyesidir ve bu ailenin çekirdeğini oluşturur çekirdeğinin temel özellikkleri aşağıda verilmiştir: 8051 Ailesi 8051 MCS51 ailesinin orijinal bir üyesidir ve bu ailenin çekirdeğini oluşturur. 8051 çekirdeğinin temel özellikkleri aşağıda verilmiştir: 1. Kontrol uygulamaları için en uygun hale getirilmiş

Detaylı

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

27.10.2011 HAFTA 1 KALICI OLMAYAN HAFIZA RAM SRAM DRAM DDRAM KALICI HAFIZA ROM PROM EPROM EEPROM FLASH HARDDISK Mikroişlemci HAFTA 1 HAFIZA BİRİMLERİ Program Kodları ve verinin saklandığı bölüm Kalıcı Hafıza ROM PROM EPROM EEPROM FLASH UÇUCU SRAM DRAM DRRAM... ALU Saklayıcılar Kod Çözücüler... GİRİŞ/ÇIKIŞ G/Ç I/O

Detaylı

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

8051 Ailesi MCS51 ailesinin orijinal bir üyesidir ve bu ailenin çekirdeğini oluşturur çekirdeğinin temel özellikkleri aşağıda verilmiştir: 8051 Ailesi 8051 MCS51 ailesinin orijinal bir üyesidir ve bu ailenin çekirdeğini oluşturur. 8051 çekirdeğinin temel özellikkleri aşağıda verilmiştir: 1. Kontrol uygulamaları için en uygun hale getirilmiş

Detaylı

5.Eğitim E205. PIC16F628 ve PIC16F877 Hakkında Genel Bilgi IF THEN ELSE ENDIF HIGH-LOW GOTO-END- PAUSE Komutları Tanıtımı ve Kullanımı PIC16F628:

5.Eğitim E205. PIC16F628 ve PIC16F877 Hakkında Genel Bilgi IF THEN ELSE ENDIF HIGH-LOW GOTO-END- PAUSE Komutları Tanıtımı ve Kullanımı PIC16F628: 5.Eğitim E205 PIC16F628 ve PIC16F877 Hakkında Genel Bilgi IF THEN ELSE ENDIF HIGH-LOW GOTO-END- PAUSE Komutları Tanıtımı ve Kullanımı PIC16F628: PIC16F628 18 pine sahiptir.bu pinlerin 16 sı giriş / çıkış

Detaylı

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

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN Bilgisayar Mühendisliğine Giriş Yrd.Doç.Dr.Hacer KARACAN Mikroişlemci Nedir? Bir bilgisayarın en önemli parçası Mikroişlemcisidir. Hiçbir bilgisayar mikroişlemci olmadan çalışamaz. Bu nedenle Mikroişlemci

Detaylı

Deney No Deney Adı Tarih. 3 Mikrodenetleyici Portlarının Giriş Olarak Kullanılması / /201...

Deney No Deney Adı Tarih. 3 Mikrodenetleyici Portlarının Giriş Olarak Kullanılması / /201... 3.1 AMAÇ: Assembly programlama dili kullanarak mikrodenetleyici portlarını giriş olarak kullanmak. GİRİŞ: Bir portun giriş olarak mı yoksa çıkış olarak mı kullanılacağını belirten TRIS kaydedicileridir.

Detaylı

EEM 419-Mikroişlemciler Güz 2017

EEM 419-Mikroişlemciler Güz 2017 EEM 419-Mikroişlemciler Güz 2017 Katalog Bilgisi : EEM 419 Mikroişlemciler (3+2) 4 Bir mikroişlemci kullanarak mikrobilgisayar tasarımı. Giriş/Çıkış ve direk hafıza erişimi. Paralel ve seri iletişim ve

Detaylı

PİC HAKKINDA KISA KISA BİLGİLER GİRİŞ/ÇIKIŞ PORTLARI

PİC HAKKINDA KISA KISA BİLGİLER GİRİŞ/ÇIKIŞ PORTLARI PİC HAKKINDA KISA KISA BİLGİLER GİRİŞ/ÇIKIŞ PORTLARI Bazı pinler çevre birimleri ile çoklanmıştır. Peki bu ne demek? Mesela C portundaki RC6 ve RC7 pinleri seri iletişim için kullanılır. Eğer seri iletişimi

Detaylı

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

Embedded(Gömülü)Sistem Nedir? Embedded(Gömülü)Sistem Nedir? Embedded Computing System de amaç; elektronik cihaza bir işlevi sürekli tekrar ettirmektir. Sistem içindeki program buna göre hazırlanmıştır. PC lerde (Desktop veya Laptop)

Detaylı

Hacettepe Robot Topluluğu

Hacettepe Robot Topluluğu Hacettepe Robot Topluluğu PIC Assembly Dersleri 1. Ders: PIC Programlamaya Giriş HUNRobotX - PIC Assembly Dersleri 1. Ders: PIC Programlamaya Giriş Yazan: Kutluhan Akman, Düzenleyen: Canol Gökel - 4 Haziran

Detaylı

PIC MİKROKONTROLÖR TABANLI MİNİ-KLAVYE TASARIMI

PIC MİKROKONTROLÖR TABANLI MİNİ-KLAVYE TASARIMI PIC MİKROKONTROLÖR TABANLI MİNİ-KLAVYE TASARIMI Prof. Dr. Doğan İbrahim Yakın Doğu Üniversitesi, Bilgisayar Mühendisliği Bölümü, Lefkoşa, KKTC E-mail: dogan@neu.edu.tr, Tel: (90) 392 2236464 ÖZET Bilgisayarlara

Detaylı

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

Eğitim - Öğretim Yöntemleri Başlıca öğrenme faaliyetleri Kullanılan Araçlar Dinleme ve anlamlandırma Eğitim - Öğretim Yöntemleri Başlıca öğrenme faaliyetleri Kullanılan Araçlar Ders Dinleme ve anlamlandırma Standart derslik teknolojileri, çoklu ortam araçları, projektör, bilgisayar DERS BİLGİLERİ Ders

Detaylı

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

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 PROGRAMIN ADI DERSIN KODU VE ADI DERSIN ISLENECEGI DÖNEM HAFTALIK DERS SAATİ DERSİN SÜRESİ ENDÜSTRİYEL ELEKTRONİK MİK.İŞLEMCİLER/MİK.DENETLEYİCİLER-1 2. Yıl, III. Yarıyıl (Güz) 4 (Teori: 3, Uygulama: 1,

Detaylı

Von Neumann Mimarisi. Mikroişlemciler ve Mikrobilgisayarlar 1

Von Neumann Mimarisi. Mikroişlemciler ve Mikrobilgisayarlar 1 Von Neumann Mimarisi Mikroişlemciler ve Mikrobilgisayarlar 1 Sayısal Bilgisayarın Tarihsel Gelişim Süreci Babage in analitik makinası (1833) Vakumlu lambanın bulunuşu (1910) İlk elektronik sayısal bilgisayar

Detaylı

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

Haftalık Ders Saati Okul Eğitimi Süresi DERSİN ADI BÖLÜM PROGRAM DÖNEMİ DERSİN DİLİ DERS KATEGORİSİ ÖN ŞARTLAR SÜRE VE DAĞILIMI KREDİ DERSİN AMACI ÖĞRENME ÇIKTILARI VE YETERLİKLER DERSİN İÇERİĞİ VE DAĞILIMI (MODÜLLER VE HAFTALARA GÖRE DAĞILIMI)

Detaylı

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

Sistem Programlama. Kesmeler(Interrupts): Kesme mikro işlemcinin üzerinde çalıştığı koda ara vererek başka bir kodu çalıştırması işlemidir. Kesmeler(Interrupts): Kesme mikro işlemcinin üzerinde çalıştığı koda ara vererek başka bir kodu çalıştırması işlemidir. Kesmeler çağırılma kaynaklarına göre 3 kısma ayrılırlar: Yazılım kesmeleri Donanım

Detaylı

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

B.Ç. / E.B. MİKROİŞLEMCİLER 1 MİKROİŞLEMCİLER Mikroişlemci (Mikroprocessor) Nedir? Merkezi İşlem Birimi, (CPU Central Processing Unit) olarak adlandırılır. Bilgisayar programının yapmak istediği işlemleri yürütür. CPU belleğinde

Detaylı

x86 Ailesi Mikroişlemciler ve Mikrobilgisayarlar

x86 Ailesi Mikroişlemciler ve Mikrobilgisayarlar x86 Ailesi 1 8085A,8088 ve 8086 2 Temel Mikroişlemci Özellikleri Mikroişlemcinin bir defade işleyebileceği kelime uzunluğu Mikroişlemcinin tek bir komutu işleme hızı Mikroişlemcinin doğrudan adresleyebileceği

Detaylı

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

Bir mikroişlemci temel olarak üç kısımdan oluşur. Bunlar merkezi işlem birimi (CPU), giriş çıkış birimi (G/Ç) ve bellektir. 1 1.GİRİŞ 1.1 Mikroişlemciler Mikroişlemci herhangi bir sistemde merkezi işlem birimidir ve bulunduğu sistemde aritmetik ve mantıksal işlemleri yürütür. Merkezi İşlem Birimi (Central Processing Unit: CPU),

Detaylı

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

DERS 3 MİKROİŞLEMCİ SİSTEM MİMARİSİ. İçerik DERS 3 MİKROİŞLEMCİ SİSTEM MİMARİSİ İçerik Mikroişlemci Sistem Mimarisi Mikroişlemcinin yürüttüğü işlemler Mikroişlemci Yol (Bus) Yapısı Mikroişlemci İç Veri İşlemleri Çevresel Cihazlarca Yürütülen İşlemler

Detaylı

EasyPic 6 Deney Seti Tanıtımı

EasyPic 6 Deney Seti Tanıtımı EasyPic 6 Deney Seti Tanıtımı Power supply voltage regulator J6 ile power supply seçimi yapılır. USB seçilirse USB kablosu üzerinden +5V gönderilir, EXT seçilirse DC connector üzerinden harici bir power

Detaylı

MİKROBİLGİSAYAR SİSTEMLERİ. Teknik Bilimler Meslek Yüksekokulu

MİKROBİLGİSAYAR SİSTEMLERİ. Teknik Bilimler Meslek Yüksekokulu MİKROBİLGİSAYAR SİSTEMLERİ Teknik Bilimler Meslek Yüksekokulu Dersin Amacı Mikroişlemciler Mikrodenetleyiciler PIC Mikrodenetleyiciler Micro BASIC Programlama Kullanılacak Programlar MSDOS DEBUG PROTEUS

Detaylı

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

Dr. Feza BUZLUCA İstanbul Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü 1 BİLGİSAYAR MİMARİSİ Dr. Feza BUZLUCA İstanbul Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü http:// http:// Ders Notlarının Creative Commons lisansı Feza BUZLUCA ya aittir. Lisans: http://creativecommons.org/licenses/by-nc-nd/3.0/

Detaylı

http://nptel.ac.in/courses/webcourse-contents/iit KANPUR/microcontrollers/micro/ui/Course_home3_16.htm Yrd.Doç. Dr.

http://nptel.ac.in/courses/webcourse-contents/iit KANPUR/microcontrollers/micro/ui/Course_home3_16.htm Yrd.Doç. Dr. http://nptel.ac.in/courses/webcourse-contents/iit KANPUR/microcontrollers/micro/ui/Course_home3_16.htm B Yrd.Doç. Dr. Bülent ÇOBANOĞLU PIC MİKRODENETLEYİCİ VE AİLESİ PIC, Microchip firması tarafından üretilen,

Detaylı

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

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 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 Ders 5, Slayt 2 1 BACAK BAĞLANTILARI Ders 5, Slayt 3 PIC

Detaylı

PIC Programlama. Devrim Çamoğlu

PIC Programlama. Devrim Çamoğlu PIC Programlama Devrim Çamoğlu İçİndekİler XIII İçİndekİler 1. Bölüm - Temel Kavramlar Mikrodenetleyici Tanımı Mikroişlemci-Mikrodenetleyici 1. Mikro İşlemcili Bir Sistemde Kavramlar 2. Tasarım Felsefesi

Detaylı

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

DERS 7 PIC 16F84 PROGRAMLAMA İÇERİK. PIC 16F84 örnek programlar Dallanma komutları Sonsuz döngü DERS 7 PIC 16F84 PROGRAMLAMA İÇERİK PIC 16F84 örnek programlar Dallanma komutları Sonsuz döngü Ders 7, Slayt 2 1 PROGRAM 1 RAM bellekte 0x0C ve 0x0D hücrelerinde tutulan iki 8-bit sayının toplamını hesaplayıp

Detaylı

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

Mikroişlemci: Merkezi işlem biriminin fonksiyonlarını tek bir yarı iletken tümleşik devrede birleştiren programlanabilir sayısal elektronik devre MİKRODENETLEYİCİLER Mikroişlemci: Merkezi işlem biriminin fonksiyonlarını tek bir yarı iletken tümleşik devrede birleştiren programlanabilir sayısal elektronik devre Mikrodenetleyici: Bir mikroişlemcinin

Detaylı

İşletim Sistemleri (Operating Systems)

İşletim Sistemleri (Operating Systems) İşletim Sistemleri (Operating Systems) 1 İşletim Sistemleri (Operating Systems) Genel bilgiler Ders kitabı: Tanenbaum & Bo, Modern Operating Systems:4th ed., Prentice-Hall, Inc. 2013 Operating System Concepts,

Detaylı

PIC TABANLI, 4 BASAMAKLI VE SER

PIC TABANLI, 4 BASAMAKLI VE SER PIC TABANLI, 4 BASAMAKLI VE SERİ BAĞLANTILI 7 SEGMENT LED PROJESİ Prof. Dr. Doğan İbrahim Yakın Doğu Üniversitesi, Mühendislik Fakültesi, Bilgisayar Mühendisliği Bölümü, Lefkoşa E-mail: dogan@neu.edu.tr,

Detaylı

Mikroişlemcili Sistemler ve Laboratuvarı

Mikroişlemcili Sistemler ve Laboratuvarı SAKARYA ÜNİVERSİTESİ Bilgisayar ve Bilişim Bilimleri Fakültesi Bilgisayar Mühendisliği Bölümü Mikroişlemcili Sistemler ve Laboratuvarı Hafta04 : 8255 ve Bellek Organizasyonu Doç.Dr. Ahmet Turan ÖZCERİT

Detaylı

MIKROBILGISAYARLAR ve PIC PROGRAMLAMA TEST ÇALIŞMA SORULARI

MIKROBILGISAYARLAR ve PIC PROGRAMLAMA TEST ÇALIŞMA SORULARI MIKROBILGISAYARLAR ve PIC PROGRAMLAMA TEST ÇALIŞMA SORULARI S1. Aşağıdaki eleman ya da birimlerden hangisi genel bir bilgisayar sisteminin donanımsal yapısında yer almaz? a) Mikroişlemci (CPU) b) Bellek

Detaylı

Bellekler. Mikroişlemciler ve Mikrobilgisayarlar

Bellekler. Mikroişlemciler ve Mikrobilgisayarlar Bellekler 1 Bellekler Ortak giriş/çıkışlara, yazma ve okuma kontrol sinyallerine sahip eşit uzunluktaki saklayıcıların bir tümdevre içerisinde sıralanmasıyla hafıza (bellek) yapısı elde edilir. Çeşitli

Detaylı

Mikrobilgisayarlar. Mikroişlemciler ve. Mikrobilgisayarlar

Mikrobilgisayarlar. Mikroişlemciler ve. Mikrobilgisayarlar 1 Sayısal Bilgisayarın Tarihsel Gelişim Süreci Babage in analitik makinası (1833) Vakumlu lambanın bulunuşu (1910) İlk elektronik sayısal bilgisayar (1946) Transistörün bulunuşu (1947) İlk transistörlü

Detaylı

Mikroişlemciler Ara Sınav---Sınav Süresi 90 Dk.

Mikroişlemciler Ara Sınav---Sınav Süresi 90 Dk. HARRAN ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ Mikroişlemciler Ara Sınav---Sınav Süresi 90 Dk. 15 Nisan 2014 1) (10p) Mikroişlemcilerle Mikrodenetleyiceleri yapısal olarak ve işlevsel olarak karşılaştırarak

Detaylı

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

DERS 12 PIC 16F84 ile KESME (INTERRUPT) KULLANIMI İÇERİK DERS 12 PIC 16F84 ile KESME (INTERRUPT) KULLANIMI İÇERİK KESME NEDİR KESME ÇEŞİTLERİ INTCON SAKLAYICISI RBO/INT KESMESİ PORTB (RB4-RB7) LOJİK SEVİYE DEĞİŞİKLİK KESMESİ Ders 12, Slayt 2 1 KESME PIC in bazı

Detaylı

William Stallings Computer Organization and Architecture 9 th Edition

William Stallings Computer Organization and Architecture 9 th Edition William Stallings Computer Organization and Architecture 9 th Edition Bölüm 5 İç Hafıza Bir Hafıza Hücresinin Çalışması Bütün hafıza hücrelerinin ortak özellikleri vardır: 0 ve 1 durumundan birini gösterirler

Detaylı

PIC16F877A nın Genel Özellikleri

PIC16F877A nın Genel Özellikleri BÖLÜM 3 PIC16F877A nın Genel Özellikleri 3.1 Mikrodenetleyici Mimarisi 3.2 PIC16Fxxx Komut Seti 3.3 PIC16F877A Bellek Organizasyonu 3.4 Giriş/Çıkış Portları 3.5 STATUS ve TRIS Kaydedicileri 3.6 Kesme ve

Detaylı

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

BM-311 Bilgisayar Mimarisi. Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü BM-311 Bilgisayar Mimarisi Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Bilgisayar Bileşenleri Bilgisayarın Fonksiyonu Instruction Cycle Kesmeler (Interrupt lar) Bus

Detaylı

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

MC6800. Veri yolu D3 A11. Adres yolu A7 A6 NMI HALT DBE +5V 1 2. adres onaltılık onluk 0000 0. 8 bit 07FF 2047 0800 2048. kullanıcının program alanı GİRİŞ Günümüzde kullanılan bilgisayarların özelliklerinden bahsedilirken duyduğumuz 80386, 80486 Pentium-III birer mikroişlemcidir. Mikroişlemciler bilgisayar programlarının yapmak istediği tüm işlerin

Detaylı

BM-311 Bilgisayar Mimarisi

BM-311 Bilgisayar Mimarisi 1 BM-311 Bilgisayar Mimarisi Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Bilgisayar Bileşenleri Bilgisayarın Fonksiyonu Instruction Cycle Kesmeler (Interrupt lar)

Detaylı

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

TIMER. SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ TIMER SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ PIC16F877A mikrodenetleyicisinde üç adet zamanlayıcı/sayıcı birimi bulunmaktadır. o Timer0 8 bitlik

Detaylı

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

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 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ı

Detaylı

LCD (Liquid Crystal Display)

LCD (Liquid Crystal Display) LCD (Liquid Crystal Display) LCD ekranlar bize birçok harfi, sayıları, sembolleri hatta Güney Asya ülkelerin kullandıkları Kana alfabesindeki karakterleri de görüntüleme imkanını verirler. LCD lerde hane

Detaylı

T.C Niğde Üniversitesi Mühendislik Mimarlık Fakültesi Elektrik Elektronik Mühendisliği Bölümü

T.C Niğde Üniversitesi Mühendislik Mimarlık Fakültesi Elektrik Elektronik Mühendisliği Bölümü T.C Niğde Üniversitesi Mühendislik Mimarlık Fakültesi Elektrik Elektronik Mühendisliği Bölümü BİR ÇAMAŞIR MAKİNASI SİMÜLATÖRÜNÜN BİR PIC MİKRODENETLEYİCİSİ KULLANARAK KONTROLÜ Hazırlayan Durmuş GÖKÇEBAY

Detaylı

Mikroişlemcili Sistemler ve Laboratuvarı 6.Hafta

Mikroişlemcili Sistemler ve Laboratuvarı 6.Hafta SAKARYA ÜNİVERSİTESİ Bilgisayar ve Bilişim Bilimleri Fakültesi Bilgisayar Mühendisliği Bölümü Mikroişlemcili Sistemler ve Laboratuvarı 6.Hafta Doç.Dr. Ahmet Turan ÖZCERİT Doç.Dr. Cüneyt BAYILMIŞ Yrd.Doç.Dr.

Detaylı

Bilgisayar Donanım 2010 BİLGİSAYAR

Bilgisayar Donanım 2010 BİLGİSAYAR BİLGİSAYAR CPU, bellek ve diğer sistem bileşenlerinin bir baskı devre (pcb) üzerine yerleştirildiği platforma Anakart adı verilmektedir. Anakart üzerinde CPU, bellek, genişleme yuvaları, BIOS, çipsetler,

Detaylı

PIC16F87X te ADC MODÜLÜNÜN KULLANIMI

PIC16F87X te ADC MODÜLÜNÜN KULLANIMI PIC16F87X te ADC MODÜLÜNÜN KULLANIMI Emre YAVUZ Temmuz 2009 PIC16F87X te ADC MODÜLÜ Ü KULLA IMI Bu makalemizde PIC16F87X serisi mikrodenetleyicilerde ADC modülünün temel düzeyde kullanımını anlatacağım.

Detaylı

Bilgisayarların Gelişimi

Bilgisayarların Gelişimi Bilgisayarların Gelişimi Joseph Jacquard (1810) Bilgisayar tabanlı halı dokuma makinesi Delikli Kart (Punch Card) Algoritma ve Programlama 6 Bilgisayar Sistemi 1. Donanım fiziksel aygıtlardır. 2. Yazılım

Detaylı

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

CUMHURİYET MESLEKİ VE TEKNİK ANADOLU LİSESİ BİLİŞİM TEKNOLOJİLERİNİN TEMELLERİ DERSİ DERS NOTLARI BELLEKLER BELLEKLER Genel olarak bellekler, elektronik bilgi depolama üniteleridir. Bilgisayarlarda kullanılan bellekler, işlemcinin istediği bilgi ve komutları maksimum hızda işlemciye ulaştıran ve üzerindeki bilgileri

Detaylı

BİLGİSAYAR MİMARİSİ. << Bus Yapısı >> Özer Çelik Matematik-Bilgisayar Bölümü

BİLGİSAYAR MİMARİSİ. << Bus Yapısı >> Özer Çelik Matematik-Bilgisayar Bölümü BİLGİSAYAR MİMARİSİ > Özer Çelik Matematik-Bilgisayar Bölümü Veri yolu (BUS), anakarttaki tüm aygıtlar arası veri iletişimini sağlayan devrelerdir. Yani bilgisayarın bir bileşeninden diğerine

Detaylı

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

4-Deney seti modüler yapıya sahiptir ve kabin içerisine tek bir board halinde monte edilmiştir. MDS 8051 8051 AİLESİ DENEY SETİ 8051 Ailesi Deney Seti ile piyasada yaygın olarak bulunan 8051 ailesi mikro denetleyicileri çok kolay ve hızlı bir şekilde PC nizin USB veya Seri portundan gönderdiğiniz

Detaylı

Mikrobilgisayarlar ve Assembler. Bahar Dönemi. Vedat Marttin

Mikrobilgisayarlar ve Assembler. Bahar Dönemi. Vedat Marttin Mikrobilgisayarlar ve Assembler Bahar Dönemi Vedat Marttin Bellek Haritası Mikroişlemcili örnek bir RAM, ROM ve G/Ç adres sahalarının da dahil olduğu toplam adres uzayının gösterilmesinde kullanılan sisteme

Detaylı

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İ

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İ 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İ Dersin Adı Kodu Sınıf / Y.Y. Mikroişlemciler ve Assembly Dili Ders Saati (T+U+L) Kredi AKTS 4

Detaylı

Donanımlar Hafta 1 Donanım

Donanımlar Hafta 1 Donanım Donanımlar Hafta 1 Donanım Donanım Birimleri Ana Donanım Birimleri (Anakart, CPU, RAM, Ekran Kartı, Sabit Disk gibi aygıtlar, ) Ek Donanım Birimleri (Yazıcı, Tarayıcı, CD-ROM, Ses Kartı, vb ) Anakart (motherboard,

Detaylı

İşletim Sistemlerine Giriş

İşletim Sistemlerine Giriş İşletim Sistemlerine Giriş İşletim Sistemleri ve Donanım İşletim Sistemlerine Giriş/ Ders01 1 İşletim Sistemi? Yazılım olmadan bir bilgisayar METAL yığınıdır. Yazılım bilgiyi saklayabilir, işleyebilir

Detaylı

T.C Niğde Üniversitesi Mühendislik Mimarlık Fakültesi Elektrik Elektronik Mühendisliği Bölümü

T.C Niğde Üniversitesi Mühendislik Mimarlık Fakültesi Elektrik Elektronik Mühendisliği Bölümü T.C Niğde Üniversitesi Mühendislik Mimarlık Fakültesi Elektrik Elektronik Mühendisliği Bölümü BİR ÇAMAŞIR MAKİNASI SİMÜLATÖRÜNÜN BİR PIC MİKRODENETLEYİCİSİ KULLANARAK KONTROLÜ Hazırlayan Durmuş GÖKÇEBAY

Detaylı

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

Bahar Dönemi. Öğr.Gör. Vedat MARTTİN Bahar Dönemi Öğr.Gör. Vedat MARTTİN 8086/8088 MİKROİŞLEMCİSİ İÇ MİMARİSİ Şekilde x86 ailesinin 16-bit çekirdek mimarisinin basitleştirilmiş bir gösterimi verilmiştir. Mikroişlemci temel iki ayrı çalışma

Detaylı

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

Günümüz. Intel Core i nm teknolojisi 1.86 Milyar tranzistör. Intel Core i nm teknolojisi 1.4 Milyar tranzistör Gömülü Sistemler Tarihçe 1943-1946 yıllarında Mauchly ve Eckert tarafından ilk modern bilgisayar ENIAC ismiyle yapılmıştır. 17468 elektronik tüp, 1500 röle, 30 ton ağırlık, 0.2ms toplama ve 2.8ms çarpma

Detaylı

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

Mikroişlemciler. Alper Bayrak Abant İzzet Baysal Üniversitesi Bolu Mikroişlemciler Alper Bayrak Abant İzzet Baysal Üniversitesi Bolu 2014 Sunuma Genel Bakış Sunuma Genel Bakış I 1 Mikroişlemci Mikroişlemci Nedir? Mikroişlemci İç Yapısı 2 Mikrodenetleyici Mikrodenetleyici

Detaylı

Assembler program yazımında direkt olarak çizgi ile gösterilmemesine rağmen ekranınız ya da kağıdınız 4 ayrı sütunmuş gibi düşünülür.

Assembler program yazımında direkt olarak çizgi ile gösterilmemesine rağmen ekranınız ya da kağıdınız 4 ayrı sütunmuş gibi düşünülür. BÖLÜM 4 4. PIC PROGRAMLAMA Herhangi bir dilde program yazarken, öncelikle kullanılacak dil ve bu dilin editörünü kullanabilmek önemlidir. Biz bu işlem için Mplab programını kullanacağız. Bu sebeple aslında

Detaylı

Prof. Dr. Doğan İbrahim Yakın Doğu Üniversitesi, Mühendislik Fakültesi, Biyomedikal Mühendisliği, Bölümü E-mail: dogan @neu.edu.tr Tel: 90 3922236464

Prof. Dr. Doğan İbrahim Yakın Doğu Üniversitesi, Mühendislik Fakültesi, Biyomedikal Mühendisliği, Bölümü E-mail: dogan @neu.edu.tr Tel: 90 3922236464 GERÇEK ZAMAN ENTEGRE DESTEKLİ PIC MİKROKONTROLÖR PROJESİ Prof. Dr. Doğan İbrahim Yakın Doğu Üniversitesi, Mühendislik Fakültesi, Biyomedikal Mühendisliği, Bölümü E-mail: dogan @neu.edu.tr Tel: 90 3922236464

Detaylı

GAZİANTEP ÜNİVERSİTESİ

GAZİANTEP ÜNİVERSİTESİ GAZİANTEP ÜNİVERSİTESİ Fizik Mühendisliği Bölümü Pic Basic Pro ile PIC Programlama Ders Notları Hazırlayan: Kamil KAYA 2012 Mikrodenetleyiciler: Mikrodenetleyicilerin tanımına girmeden önce kısaca mikroişlemcilere

Detaylı

Mikroişlemciler ve Assembler Programlama. Teknoloji Fakültesi / Bilgisayar Mühendisliği Öğr.Gör. Günay TEMÜR

Mikroişlemciler ve Assembler Programlama. Teknoloji Fakültesi / Bilgisayar Mühendisliği Öğr.Gör. Günay TEMÜR Mikroişlemciler ve Assembler Programlama Teknoloji Fakültesi / Bilgisayar Mühendisliği Öğr.Gör. Günay TEMÜR Mikroişlemciler Mikroişlemciler bilgisayar teknolojilerinin gerçek sürükleyicisi olan donanımsal

Detaylı

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

Erzurum Teknik Üniversitesi RobETÜ Kulübü Robot Eğitimleri. ARDUİNO EĞİTİMLERİ I Arş. Gör. Nurullah Gülmüş Erzurum Teknik Üniversitesi RobETÜ Kulübü Robot Eğitimleri ARDUİNO EĞİTİMLERİ I Arş. Gör. Nurullah Gülmüş 29.11.2016 İÇERİK Arduino Nedir? Arduino IDE Yazılımı Arduino Donanım Yapısı Elektronik Bilgisi

Detaylı

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

Mikroişlemcili Sistemler ve Laboratuvarı 5.HAFTA:BÖLÜM-1 SAKARYA ÜNİVERSİTESİ Bilgisayar ve Bilişim Bilimleri Fakültesi Bilgisayar Mühendisliği Bölümü Mikroişlemcili Sistemler ve Laboratuvarı 5.HAFTA:BÖLÜM-1 Doç.Dr. Ahmet Turan ÖZCERİT Doç.Dr. Cüneyt BAYILMIŞ

Detaylı

LCD (Liquid Crystal Display )

LCD (Liquid Crystal Display ) LCD (Liquid Crystal Display ) Hafif olmaları,az yer kaplamaları gibi avantajları yüzünden günlük hayatta birçok cihazda tercih edilen Standart LCD paneller +5 V ile çalışır ve genellikle 14 konnektor lü

Detaylı

BÖLÜM in Bellek Organizasyonu

BÖLÜM in Bellek Organizasyonu C ile 8051 Mikrodenetleyici Uygulamaları BÖLÜM 3 8051 in Bellek Organizasyonu Amaçlar 8051 mikrodenetleyicisinin bellek türlerini öğrenmek Dahili veri belleği (Internal RAM) hakkında bilgi sahibi olmak

Detaylı

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

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 İÇİNDEKİLER VII İÇİNDEKİLER 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 2 KİTAPTA KULLANILAN PROGRAMLAR

Detaylı

DOKUMANLAR

DOKUMANLAR DOKUMANLAR https://www.pickat.org Bu belgeyi yukarıdaki karekodu telefonunuza taratarak veya aşağıdaki linkten indirebilirsiniz. Link sürekli güncellenmektedir. https://drive.google.com/file/d/1wyi3ejzvge9vbu0ujklajnsjukbfldv/view?usp=sharing

Detaylı

Çizgi İzleyen Robot Yapımı

Çizgi İzleyen Robot Yapımı Çizgi İzleyen Robot Yapımı Elektronik Elektronik tasarım için yapılması gerek en önemli şey kullanılacak malzemelerin doğru seçilmesidir. Robotun elektronik aksamı 4 maddeden oluşur. Bunlar; 1. Sensörler

Detaylı

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

MİKROİŞLEMCİLER. Mikroişlemcilerin Tarihsel Gelişimi MİKROİŞLEMCİLER Mikroişlemcilerin Tarihsel Gelişimi Mikroişlemcilerin Tarihi Gelişimi Mikroişlemcilerin tarihi gelişimlerini bir kerede işleyebildikleri bit sayısı referans alınarak dört grupta incelemek

Detaylı

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

8. MİKROİŞLEMCİ MİMARİSİ 1 8. MİKROİŞLEMCİ MİMARİSİ Gelişen donanım ve yazılım teknolojilerine ve yonga üreticisine bağlı olarak mikroişlemcilerin farklı komut tipleri, çalışma hızı ve şekilleri vb. gibi donanım ve yazılım özellikleri

Detaylı

BİLGİSAYAR MİMARİSİ. Bilgisayar Bileşenleri Ve Programların Yürütülmesi. Özer Çelik Matematik-Bilgisayar Bölümü

BİLGİSAYAR MİMARİSİ. Bilgisayar Bileşenleri Ve Programların Yürütülmesi. Özer Çelik Matematik-Bilgisayar Bölümü BİLGİSAYAR MİMARİSİ Bilgisayar Bileşenleri Ve Programların Yürütülmesi Özer Çelik Matematik-Bilgisayar Bölümü Program Kavramı Bilgisayardan istenilen işlerin gerçekleştirilebilmesi için gereken işlem dizisi

Detaylı

Bu dersimizde pic pinlerinin nasıl input yani giriş olarak ayarlandığını ve bu işlemin nerelerde kullanıldığını öğreneceğiz.

Bu dersimizde pic pinlerinin nasıl input yani giriş olarak ayarlandığını ve bu işlemin nerelerde kullanıldığını öğreneceğiz. Ders-2: ---------- Bu dersimizde pic pinlerinin nasıl input yani giriş olarak ayarlandığını ve bu işlemin nerelerde kullanıldığını öğreneceğiz. Hazırlanan programlarda pic in zaman zaman dış ortamdan bilgi

Detaylı

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

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ TASARIM PROJESİ ÇALIŞMASI PİC PROGRAMLAMA İLE BASİT UÇAK OYUNU MEHMET HALİT İNAN BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BAHAR 2014 KARADENİZ TEKNİK ÜNİVERSİTESİ

Detaylı

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

EEM 306 Mikroişlemciler ve Lab. Doç.Dr. Mehmet SAĞBAŞ EEM 306 Mikroişlemciler ve Lab. Doç.Dr. Mehmet SAĞBAŞ Sayısal Sistemler ASIC (Application Specific Integrated Circuits) Belirli bir işlev için tasarlanırlar Performansları yüksektir Maliyetleri yüksektir

Detaylı

(Random-Access Memory)

(Random-Access Memory) BELLEK (Memory) Ardışıl devreler bellek elemanının varlığı üzerine kuruludur Bir flip-flop sadece bir bitlik bir bilgi tutabilir Bir saklayıcı (register) bir sözcük (word) tutabilir (genellikle 32-64 bit)

Detaylı

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

MİKRODENETLEYİCİLER. Yrd.Doç.Dr. İlker ÜNAL MİKRODENETLEYİCİLER Yrd.Doç.Dr. İlker ÜNAL DERSİN AMACI Mikroişlemciler Mikroişlemcilerin Yapısı Mikrodenetleyiciler PIC mikrodenetleyiciler KULLANILACAK PROGRAMLAR PROTEUS ISIS 7 PROF Micro BASIC EDITOR

Detaylı

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

Bu yürütme, Prof. Dr. Hakan ÜNDİL (Bir haftalık derse ait ders notudur) MİKROİŞLEMCİ (MİKROPROSESÖR - CPU) NEDİR? Mikroişlemci bir programının yapmak istediği işlemleri, (hafızada bulunan komutları) sırasıyla ile işleyerek icra eder (yürütür). Bu yürütme, 1. Komutun Program

Detaylı

Temel Bilgi Teknolojileri -1

Temel Bilgi Teknolojileri -1 Temel Bilgi Teknolojileri -1 Dr. Öğr. Üyesi Aslı Eyecioğlu Özmutlu aozmutlu@bartin.edu.tr 1 Konu Başlıkları Donanım Bileşenleri Harici Donanım Dahili Donanım 2 Donanım Bileşenleri Bilgisayarın fiziksel

Detaylı

BELLEKLER. Kelime anlamı olarak RAM Random Access Memory yani Rastgele Erişilebilir Bellek cümlesinin kısaltılması ile oluşmuş bir tanımdır.

BELLEKLER. Kelime anlamı olarak RAM Random Access Memory yani Rastgele Erişilebilir Bellek cümlesinin kısaltılması ile oluşmuş bir tanımdır. BELLEKLER 1- RAM (Random Access Memory) Nedir? Kelime anlamı olarak RAM Random Access Memory yani Rastgele Erişilebilir Bellek cümlesinin kısaltılması ile oluşmuş bir tanımdır. Kısaca: RAM bilgisayar için

Detaylı

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

ESM-361 Mikroişlemciler. 1. Hafta Ders Öğretim Üyesi Dr.Öğr.Üyesi Ayşe DEMİRHAN ESM-361 Mikroişlemciler 1. Hafta Ders Öğretim Üyesi Dr.Öğr.Üyesi Ayşe DEMİRHAN Ders Bilgileri 24 Eylül 2018 GÜZ YARIYILI DERSLERİNİN BAŞLAMASI Ara Sınav 31 Aralık 2018 GÜZ YARIYILI DERSLERİNİN SON GÜNÜ

Detaylı

Bilgisayar Mimarisi Nedir?

Bilgisayar Mimarisi Nedir? BİLGİSAYAR MİMARİSİ Bilgisayar Mimarisi Nedir? Bilgisayar mimarisi, diğer mimariler gibi, bir yapı kullanıcısının ihtiyaçlarını belirleme ve bu ihtiyaçları ekonomik ve teknolojik kısıtlamalar dahilinde

Detaylı

Yrd.Doç.Dr. Celal Murat KANDEMİR

Yrd.Doç.Dr. Celal Murat KANDEMİR Bilgisayar Mimarisi Ara Bağlantı Yapıları ve Bus Kavramı Yrd.Doç.Dr. Celal Murat KANDEMİR ESOGÜ Eğitim Fakültesi - BÖTE twitter.com/cmkandemir Ara Bağlantı Yapıları Bir bilgisayar sistemi MİB, bellek ve

Detaylı

Mikroişlemciler Dersi. PIC Mikro denetleyiciler ve Programlama

Mikroişlemciler Dersi. PIC Mikro denetleyiciler ve Programlama Mikroişlemciler Dersi PIC Mikro denetleyiciler ve Programlama Kaynaklar ile ilgili iki web sitesi: - http://www.mikroe.com - http://www.microchip.com/ - Ders sunuları - Sakarya üniversitesi e-kütüphane

Detaylı

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

Çalışma Açısından Bilgisayarlar Çalışma Açısından Bilgisayarlar Ölçme sistemi ile hesaplama sistemi birbiriyle ilgili olmasına rağmen aynı değillerdir. Suyun sıcaklığı ve gürültünün şiddeti ile evdeki lambaların ölçülmesi aynı değillerdir.

Detaylı

MİKROBİLGİSAYAR SİSTEMLERİ VE ASSEMBLER

MİKROBİLGİSAYAR SİSTEMLERİ VE ASSEMBLER BÖLÜM 2 INTEL AİLESİNİN 8 BİTLİK MİKROİŞLEMCİLERİ 2.1 8080 MİKROİŞLEMCİSİ Intel 8080, I4004, I4040 ve I8008 in ardından üretilmiştir ve 8 bitlik mikroişlemcilerin ilkidir ve 1974 te kullanıma sunulmuştur.

Detaylı

Ünite-2 Bilgisayar Organizasyonu. www.cengizcetin.net

Ünite-2 Bilgisayar Organizasyonu. www.cengizcetin.net Ünite-2 Bilgisayar Organizasyonu Bilgisayar Nedir? Belirli bir sonuç üretmek amacıyla; mantıksal kıyaslamalardan sonuç çıkarabilen, büyük miktarlarda bilgiyi depolayabilen ve gerektiğinde bu bilgileri

Detaylı