Elektronik Devreler Projeler Elektronik ve biraz daha fazlası İletişim - Araçlar - Dikkat - Topluluk
Elektronik / Elektronik Kaynakları/

İstanbul Teknik Üniversitesi Mikrodenetleyiciler Ders Notu

Sponsorlu Bağlantılar

MİKRODENETLEYİCİLER

Bu dökümanda genel olarak mikroişlemciler ve mikrodenetleyicilerin yapısıyla, Microchip firmasının ürettiği PIC mikrokontrolörleri üzerinde durulacaktır.

GENEL TANIMLAMALAR:

Mikroişlemci ve mikrokontrolör kavramları sıkça karıştırılmakta ve birbirleri yerine kullanılmaktadırlar. Tabi ki bu iki kavram aynı yapıyı ifade etmez. Bu kavramları kısaca tanımlayacak olursak;

Mikroişlemci; kendisine gönderilen komutları işleyen çok küçük boyutlardaki bir sayısal devredir. Bu yapıyı bilgisayarımızdaki MİB ( Merkezi İşlemci Birimi ) olarak düşünebiliriz. MİB tek başına bir bilgisayarı oluşturamayacağına, dahası hiçbir işe yaramayacağına göre mikroişlemciler de tek başlarına kullanılamazlar. En azından bir bellek ve giriş/çıkış arabirimlerine ihtiyaç duyarlar. İşte bunlar ve hatta çok daha fazlası bir araya getirilerek tek başlarına uygulamalarda kullanılabilen sayısal devrelere mikrokontrolör denir. Mikrokontrolörler günümüzde kullandığımız hemen hemen bütün elektronik cihazların içinde bulunmaktadır. Aşağıda bir mikroişlemci sisteminin blok diyagramını görebilirsiniz.

Mikrokontrolörler, mikroişlemcilerin yanı sıra RAM, ROM, EPROM, EEPROM, Flash Bellek gibi bellek yapıları, G/Ç ( Giriş/Çıkış ) arabirimleri, analog-sayısal çeviriciler, zamanlama ve sayma birimleri, PWM çıkış modülleri, seri haberleşme portları, çeşitli kesme yapıları, vb. barındırırlar. Bu birimlerin düzenli ve bir arada çalışmasını sağlamak amacıyla ise “kütük” (register) denilen özel hafıza bölgelerinden yararlanılır. Yine bu birimlerde kullanılan ve kütükler üzerinde yer alan, çeşitli işlemler için izinleri ayarlayan ya da işlemlerin hangi aşamada olduklarını gösterebilen, yerine göre yazılım ya da donanım tarafından değiştirilebilen “bayrak” (flag) yapıları mevcuttur. Bu konular ile ilgili daha ayrıntılı bilgi ve örnek uygulamaları ilerleyen bölümlerde bulabileceksiniz. Aşağıda bir mikrodenetleyicinin diyagram gösterimini bulabilirsiniz.

Bu belgede mikroişlemcilerin devre şemalarından pek fazla bahsedilmeyecek; ancak yine de mikrokontrolörlerin blok şeması halinde genel yapılarından bahsedilecek. Ayrıca çalışma mantığını anlayabilmek açısından elimizde olduğunu varsayacağımız mikroişlemcimiz ile kendi mikrokontrolörümüzün bellek yapısını tasarlayacağız.

Bir uygulamaya başlamadan, önce hangi firmanın ürününün kullanılacağına, sonra da hangi numaralı denetleyici kullanılacağına karar verilmelidir. Bunun için bir takım kıstaslar sıralayabiliriz. Bu kıstaslar ihtiyaca yönelik olup mikrodenetleyicinin sahip olduğu bir takım ek donanım özelliklerini içermektedir. Bunlardan bazıları:

· Programlanabilir dijital paralel giriş/çıkış

· Programlanabilir analog giriş/çıkış

· Seri giriş çıkış

· Motor kontrol için PWM modülü

· Harici giriş vasıtasıyla kesme

· Zamanlayıcı (Timer) vasıtasıyla kesme

· Harici bellek arabirimi

· Dahili bellek tipi seçenekleri

· Dahili RAM seçeneği vs.

Biz bu dokümanlarda ağırlıklı olarak PIC mikrodenet-leyiciler üzerinde duracağız. Bu seçimin gerekçelerini ise şöyle sıralayabiliriz:

  • Yazılımın Microchip’ten veya internetten ücretsiz olarak indirilebilmesi
  • Çok geniş bir kullanıcı kitlesinin bulunması
  • Düşük fiyatlarla satışa sunulması
  • Kolay programlanabilmesi
  • Çok basit reset, clock sinyali ve güç devreleri gerektirmesi.

DİJİTAL BELLEK DEVRELERİ
Dijital elektronikte bilgileri saklayabilmek için flip flop, RAM, ROM, EPROM, EEPROM, manyetik band, CDROM, DVDROM gibi elemanlar kullanılır. Şimdi aşağıda bellek devrelerinde adı geçen bazı kavramları açıklayacağız…

A.Bit: 1 ya da 0 olan ikili (binary) sayıdır.

B.Bellek Hücresi(Memory Cell): Bir biti saklamakta kullanılan devre. Örneğin D-flip flop.

C.Byte(bayt): 8 bitten oluşan gruptur.

D.Kapasite: Bir bellek elemanında kaç bit saklanabileceğini belirten kavramdır. Peki bir belleğin 4096 x 20 kapasiteye sahip olduğunu duyduğumuzda bunu nasıl yorumlayacağız? Bu belleğin kapasitesi 81920 bittir. Burada 4096 saklanabilen kelime sayısı, 20 sayısı ise her kelimedeki bit sayısını ifade eder. Bellek kapasitesini gösterirken ifade edilen 1K değeri ise 1024 biti ifade eder.

E.Adres: Bellekte bulunan bir verinin yerini belirleyen sayıdır. Bellekte saklanan her kelimenin tek bir adresi vardır. Bu adres ikilik, onluk ya da on altılık biçimde olabilir.

F. Okuma İşlemi: Belirli bir adreste saklı olan bir bir veriyi (ikili sayıyı) başka bir bölgeye transfer etme işlemidir. Bu sayede kullanıcı veriye erişebilmektedir. Bu nedenle oku işlemine getir işlemi de denilmektedir.

G. Yazma İşlemi: Belirli bir bellek bölgesine yani adrese yeni bir veri yerleştirme işlemidir. Bu bir tür saklama işlemidir. Bellek bölgesine yazılan kelime, o bellekte bulunan eski kelimenin yerini alır.

Ğ. Geçiş (Erişim) Süresi: Belleğin oku komutunu almasıyla, bellek çıkışında verinin okunması arasında geçen süredir. Bir başka deyişle bellek elemanının çalışma hızıdır. Geçiş süresi tACC ile gösterilir.

H.Tamamlama Süresi: Denetleyicinin okuma ve yazma işlemlerini tamamlayıp, bir sonraki aşamaya geçmesi için gereken süredir.

I.Geçici Bellek: Elektrik enerjisi uygulandığı sürece bilgi saklayabilen bellek türüdür. Elektrik kesildiğinde bellekte saklanan bilgi yok olur.

İ.RAM (Rastgele Erişimli Bellek, Random Access Memory): Dijital bellek elemanlarını temel iki gruba ayırabiliriz; elektrik kesildiğinde veriyi kaybedenler ve elektrik kesildiğinde de veriyi saklayabilenler. RAM’ler hem yazılabilir hem de okunabilir belleklerdir. Ayrıca RAM, elektrik kesildiğinde veriyi kaybeden bir bellek türüdür. Örneğin TTL 7409 entegresi 64 bitlik bir RAM’dir.

Yukarıda gördüğünüz devrede, A0,A1,A2,A3 girişleri adres girişleridir. Bilgi yazmak için D1,D2,D3,D4 girişleri kullanılır. Bilgi okuma işlemleri içinse Q1,Q2,Q3,Q4 çıkışları kullanılır. Okuma işlemi anında CS lojik 0,WE lojik 1 olmalı. Yazma işlemi sırasında ise CS lojik 0 ve WE lojik 0 olmalı. TTL 7489 statik yapılı bir entegredir. Veriler flipfloplarda tutulur. CS ucu lojik 1 olduğunda devrede okuma ve yazma işlemleri yapılamaz. Bir belleğin bu tür bilgilerine entegrenin kataloğundan da erişebilirsiniz.

İ.ROM (Read Only Memory): Üzerine yüklenen verileri sürekli olarak muhafaza eder. ROM’da bulunan bilgiler üretici tarafından alıcının isteğine ya da ihtiyaca göre kaydedilir. Kullanıcının bu verileri silme olanağı yoktur. Ayrıca DC enerjinin kesilmesiyle ROM’daki bilgiler yok olmaz.

J.PROM (Programlanabilir ROM): Bir kez programlanabilen ROM’lara PROM adı verilir. En basit PROM entegresi diyot ve sigortalar kullanılarak üretilebilir. Kullanıcı bu programlanmamış devreleri özel devreler kullanarak istediği bilgiyi saklayabileceği hale getirebilir.

Yukarıdaki devre basit bir PROM devresidir. Bu PROM’da 4×4=16 adet bellek vardır. Sigortalar sağlamken devrenin çıkışlarında hep 1 bilgisi görülür. Özel programlayıcı devre ile istenen belleklere 50 mA düzeyinde akım verildiğinde o bellekteki sigortalar bozulur ve çıkışa 0 bilgisi verilir. Akım uygulanarak bozulan sigortaların tamiri mümkün olmadığından bu gözler bir daha programlanamaz.

J. EPROM (Erasable Programmable ROM): Tekrar programlanabile PROMlara EPROM adı verilir. Bu entegrelerin gövdelerinde genellikle şeffaf bir kısım vardır. Entegre üzerindeki şeffaf bölgeden yaklaşık 15-20 dakika boyunca ultraviole (mor ötesi) ışık yollanırsa devrenin tüm programı silinir. Yani devredeki tüm bellek hücreleri 1 konumuna gelir.

Uygulamada 27XX serisi EPROM’lar sıklıkla kullanılır. Bu EPROM’lar 8 bit genişliğinde veri depolayabilir.

Aşağıda bir EPROM’un resmini görebilirsiniz.

Bir EPROM programlandıktan sonra üzerindeki şeffaf kısım koyu renkli bir bantla kapatılmaktadır, bu yapılmazsa güneş ışığı EPROM’u yaklaşık 1 haftada silebilir.

K.EEPROM (Electrically Erasable and Programmable ROM): Elektriksel olarak sürekli yazılıp silinebilen entegrelerdir. Silme işlemi ultraviole ışın yerine elektrik ile yapılmaktadır. Bu tür belleklerde MOSFET bellek hücresinin D ucuna ince bir oksit tabakası eklenerek elektriksel olarak silinebilme özelliği elde edilmiştir. Programlama işleminde MOSFET’in G ve S ucu arasında 21 V’luk bir gerilim oluşturularak, kapı uçlarında bir potansiyel farkın oluşması sağlanır. Bu gerilim bir şarj etkisi yaratır. Gerilim kesilse bile bu şarj sayesinde yazılan bilgi saklanmış olur. Uygulanan gerilimin ters çevrilmesi bu şarjın kaybolmasına neden olur ve entegredeki veri silinmiş olur. Şarj işleminin çok az akım gerektirmesinden dolayı, yazma veya silme işlemi, entegre devreye bağlıyken de yapılabilir. Ayrıca EPROM’da ortalama 30-60 dakika olan veri silme süresi EEPROM’da 10 mili saniye dolaylarındadır. EEPROM belleklere Flash bellek de denilmektedir.

PIC MİKRODENETLEYİCİLER

GENEL öZELLİKLERi

HIZ: PIC, hızlı bir mikrodenetleyicidir. Her bir komut döngüsü yaklaşık olarak 1 mikro saniyedir. Örneğin 5 milyon komutluk bir programın 20 Mhz’lik bir kristalle işletilmesi yalnızca 1 saniye sürer. Ayrıca RISC mimarisi işlemcisi olmasının da hıza etkisi büyüktür.

STATİK İŞLEM: PIC tümüyle statik bir mikrodenetleyicidir. Yani saat durdurulduğunda da tüm kaydedici içeriğini korur. Pratikte bunu tam olarak gerçekleştirebilmek mümkün değildir. PIC’te program işletilmediğinde denetleyici uyku moduna geçer ve çok düşük miktarda akım çeker. PIC uyuma durumundayken, uykudan önce mikrodenetleyicinin hangi durumda olduğu çeşitli bayraklarla ifade edilir(elde bayrağı, zero bayrağı vs). PIC uyuma modunda 1 mikro amperden daha düşük miktarlarda akım çeker.

SÜRME KAPATSİTESİ: PIC yüksek bir çıktı kapasitesine sahiptir. Bir PIC’te bir bacaktan 40 mA akım çekilebilmektedir. Ayrıca toplamda entegre 150 mA akım akıtma kapasitesine sahiptir. Entegrenin 4 MHZ osilatör frekansında çektiği akım 2 mA, uyku durumda ise 2 mikro Amper kadardır.

ÇEŞİTLİLİK ve SEÇENEKLER: PIC mikrodenetleyici ailesinde hemen her türlü ihtiyacı karşılamaya yönelik çeşitli hız, sıcaklık, kılıf, Giriş/ Çıkış hatları, timer fonksiyonları, seri iletişim portları, A/D ve bellek kapasite çeşitleri bulunur.

GÜVENLİK: PIC, endüstride en üstün kod koruma özelliğine sahip ürünlerden biridir. Koruma bitinin programlamayla işaretlenmesinden itibaren, program belleğinin içeriği yeniden yapılandırılamaz.

GELİŞTİRME: PIC, program geliştirmeye olanak sağlayan bir yapıya sahiptir. Yani silinip yazılabilen bir bellek yapısına sahiptir. Bunun yanı sıra seri üretim için tek defa programlanabilirlik özelliğine de sahiptir.

PIC MİKRODENETLEYİCİLERİNİN DONANIMSAL İNCELENMESİ

Bu başlık altında PIC mikrodenetleyici ailesinin sık kullanılan elemanlarından bazılarını yapısal olarak inceleyeceğiz. Donanımsal bilgilerin tamamı entegrelerin datasheetlerinden de edinilebilir. Ancak burada bu bilgilerin en azından bir bölümüne değinmek faydalı olacaktır.

PIC16F84’ÜN Bacak Bağlantısı ve Genel Özellikleri

GENEL ÖZELLİKLERİ

  • DC 10 MHZ çalışma hızı
  • 14 bit genişliğinde veri yolu
  • 8 bit genişliğinde veri yolu
  • 8 seviye yığın derinliği
  • Doğrudan, dolaylı ve göreceli adresleme metodları
  • EEPROM’da 40 yıl veri tutma
  • 1 000 000 kez veri yazıp silebilme
  • 13 adet giriş çıkış pini
  • 4 kesme kaynağı
  • 8 bit zamanlayıcı / sayıcı
  • Tamamen statik tasarım
  • Düşük güçlü, yüksek hızlı, CMOS flash bellek
  • Geniş çalışma voltaj aralığı
  • Düşük güç tüketimi
  • Kod koruma
  • Uyuma modunda güç tasarrufu
  • 68 bayt RAM bellek
  • 64 bayt EEPROM bellek
  • Yalnızca 35 adet tek kelime komut öğrenme
  • Geniş çalışma sıcaklığı aralığı

CPU bölgesinin kalbi ALU’dur (Aritmetic Logic Unit- Aritmetik mantık birimi). ALU, W (Working – Çalışan) adında bir kaydedici içerir. PIC, diğer mikroişlemcilerden, aritmetik ve mantık işlemleri için bir tek ana kaydediciye sahip oluşuyla farklılaşır. W kaydedicisi 8 bit genişliğindedir ve CPU’daki herhangi bir veriyi transfer etmek üzere kullanır.

CPU alanında ayrıca iki kategoriye ayırabileceğimiz veri kaydedici dosyaları (Data Register Files) bulunur. Bu veri kaydedici dosyalarından biri, GİRİŞ / ÇIKIŞ ve kontrol işlemlerinde kullanılırken, diğeri RAM olarak kullan-ılır.

PIC’ler de Harward mimarisi kullanılır. Harward mimarisi mikrodenetleyicilerde veri akış miktarını hızlandırmak ve yazılım güvenliğini arttırmak amacıyla kullanılır. Ayrı bus’ların kullanımıyla veri ve program belleğine hızlı bir şekilde erişim sağlanır. Aşağıda PIC’in temel bir blok diyagramını görebilirsiniz.

Tüm PIC 16/17 serisi mikrodenetleyiciler RISC mimarisini kullanmaktadır. PIC16CXX 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ılla (çevrimle) işlenmesini sağlamaktadır. Yalnızca bazı özel komutlar 2 saykıl çekerler. Bu komutlar dallanma komutlarıdır.

PIC16F84 Mikrochip’i 36 bittlik RAM belleğine, 64 bayt EEPROM belleğine ve 13 GİRİŞ / ÇIKIŞ pinine sahiptir. Bunun yanı sıra, timer ve sayaçta mevcuttur.

PIC16CXX 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 pinli RC osilatör , düşük maliyet çözümünü sağlamakta (4MHz), LP osilatör (kristal veya seramik rezonatör), enerji sarfiyatını minimize etmekte (asgari akım) (40 KHz), XT kristal veya seramik rezonatör osilatörü standart hızlı ve HS kristal veya seramik rezonatörlü osilatör çok yüksek hıza sahiptir (20 MHz).

PIC16F84 Mikrochip’i 36 bittlik RAM belleğine, 64 bayt EEPROM belleğine ve 13 GİRİŞ / ÇIKIŞ pinine sahiptir. Bunun yanı sıra, timer ve sayaçta mevcuttur.

PIC16CXX 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 pinli RC osilatör , düşük maliyet çözümünü sağlamakta (4MHz), LP osilatör (kristal veya seramik rezonatör), enerji sarfiyatını minimize etmekte (asgari akım) (40 KHz), XT kristal veya seramik rezonatör osilatörü standart hızlı ve HS kristal veya seramik rezonatörlü osilatör çok yüksek hıza sahiptir (20 MHz).

Hangi tür mikrodenetleyici olursa olsun, temel yapı aşağıdaki bölümlerden oluşmaktadır:

  • İletim Yolları (Buses)
  • Aritmetik Mantık Birimi (ALU)
  • Kaydediciler ve Sayıcılar (Registerers and Counters)
  • Kontrol birimi (CU)
  • Giriş – Çıkış Tampon Devreleri

İLETİM YOLLARI

Mikrodenetleyicinin devre bağlantılarını sağlayan iletkenlerdir. Bu iletkenlere görüntüsünden dolayı yol (bus) adı verilmiştir. İletim yolları 3 gruba ayrılır:

  • Veri Yolları
  • Adres Yolları
  • Kontrol Yolları

A. Veri Yolları: Veri yolları, işlenecek, işlenmekte ya da işlenmiş olan verilerin iletilmesini sağlayan yollardır.

B. Adres Yolları: Adres yolları mikroişlemci ile belek ve giriş – çıkış portları arasındaki iletişimin, hangi bellek gözü veya giriş – çıkış kapısı ile yapılacağının belirlenmesini sağlayan yollardır. Adres yolu iletken sayısı, mikrodenetleyicinin adresleyebileceği bellek gözü veya giriş çıkış kapısı sayısını belirler. Bu da doğrudan mikrodenetleyicinin adresleme kapasitesidir.

C. Kontrol Yolları: Mikrodenetleyicinin kontrol devresi ile diğer kısımlar arasındaki iletişimi sağlayan yollardır. Kontrol yolları insanın sinir sistemine benzetilebilir. Mikrodenetleyicinin içine adeta ağ gibi yayılmıştır. Sistemin çalışması, kontrol yollarındaki saat darbeleriyle yönetilir. Örneğin bir matematiksel işlemin doğru yapılabilmesi için verilerin gönderiliş sırası doğru olmalıdır. Bu doğruluğu kontrol devresi sağlamaktadır.

ARİTMETİK MANTIK BİRİMİ (ALU)

Mikrodenetleyici için birinci derecede öneme sahip bir birimdir. Mikroişlemcinin kalbi olduğu söylenebilir, zira bir mikroişlemcinin işlem gücünü bu birim belirler. Teknolojinin hızlı gelişimiyle başta yalnızca toplama ve çıkarma işlemleri yapabilen ALU devreleri, zamanla çarpma, bölme ve büyük sayılarda kayan nokta (floating point) işlemleri, bilimsel işlemler gibi çok yönlü işlemleri yürütebilen devreler haline gelmişlerdir.

KAYDEDİCİLER ve SAYICILAR

Kaydediciler ve sayıcılar gerek mikroişlemci içerisindeki gerekse de mikroişlemci ile diğer devreler arasındaki işlemleri destekleyen devrelerdir. Saklayıcılar mikrodenetleyicinin ufak birer veri (data) depolama birimleridir ve diğer bellek birimleri gibi ikili (binary) hücrelerden (filp-floplardan) oluşturulmuşlardır.

Birçoğu yazılım kontrolü altındadır ve mikroişlemci ile bellek arasında iletişim sağlar. Böylece işlem oldukça kısa sürede olur. Bazıları ise denetim için gerekli bilgileri saklarlar. Temel yapıları J-K flip floplar ve D filp-floplardır. Sayıcıların görevi ise işlemi yapılacak olan komut verilerin adresini belirlemektir. Sayıcıların temel yapısını da J-K flip floplar oluşturmaktadır. Aşağıda PIC 18F84’ün register haritasını görebilirsiniz.

I/O BİRİMLERİ GİRİŞ ve ÇIKIŞ PORTLARI

Giriş portu (input port) dış aygıtlardan gelen sinyalleri mikroişlemciye aktaran bir IC’dir(integrated circuit, tümdevre). Çıkış portu (output port) ise mikroişlemcinin çıkış sinyallerini dış aygıtlara aktaran bir IC’dir.

Giriş ve çıkış portlarının işlevleri genellikle bir birimde toplanır ki bu birime I/O birimi denir. I/O birimi bir mikroişlemci entegre devresi büyüklüğünde bir entegre devredir. I/O birimi veri kaynağından veri girmede ve çalıştırılan programın belirlediği veriyi dışarıya aktarmada mikroişlemci tarafından kontrol edilir.

PIC 16F84A ve BAZI BAZI BACAK BAĞLANTILARI

Yukarıda PIC ailesi ve 16F84A ile ilgili birtakım bilgilere değindik. Bu başlık altında birtakım ufak tekrarlarla birlikte 16F84A’nın bir takım bacak bağlantıları ve portlardan çekilebilen akımlara değinilecektir. PIC 16F84A için en ideal besleme 5V olup, bu denetleyici 2-6 V arasında da çalışabilmektedir. Portlardan alınan akım yeterli değilse röle veya transistörle bu akım yükseltilebilir. Bütün CMOS’larda olduğu gibi burada da kullanılmayan uçlar lojik 1’e yani 5V’a bağlanmalıdır.

ÇIKIŞ PORTLARINDAN ALINAN AKIMLAR

PIC 16F84’te porttan dışarı alınabilen (source) ya da porttan içeri çekilebilen akımlar (sink) led yakabilecek yeterliliktedir.

1.Sink Akımı: +5V beslemeden portun içine akan akımdır. Bu durumda porttan içeri çekilebilecek azami akım 25 mA olur. Daha fazla akıtılan akım, PIC’i bozulabilir.

2.Source Akımı: Portun içinden dışarıya doğru akan akımdır. Bu durumda dışarı akacak max. Akım miktarı 20 mA dolaylarındadır.

OSİLATÖR DEVRESİ

PIC’in hafızasında bulunan kodların çalıştırılması işlemi kare dalgalarla olur. Kare dalgalara saat darbesi de denir.

OSCI dediğimiz bacak kare dalganın uygulandığı yerdir. 16F84A’nın 16. pini OSCI girişidir. Bu bacak gösterimlerde CLK IN olarak ifade edilmiştir. Dışarıdan buraya uygulanan kare dalga ise OSC2/CLK OUT çıkışından alınabilir. PIC 16F84A’da en çok kullanılan osilatörler aşağıdaki gibidir:

1 ) RC Tipi ( Direnç / Kondansatör )

2 ) XT Tipi ( Kristal veya Seramik Rezonatör )

3 ) HS Tipi ( Yüksek Hızlı Kristal / Seramik Rezonatör )

4 ) LP Tipi ( Düşük Frekanslı Kristal )

Kullanılan osilatör tipi, komut olarak ya da programlama esnasında mutlaka belirtilmelidir. Aşağıda sıklıkla kullanılan 2 osilatör bağlantısını görebilirsiniz…

RC Tipi Bağlantı

XT Tipi Bağlantı

RESET UCU VE DEVRESİ ()

Program herhangi bir nedenden dolayı kilitlenirse programı yeniden başlatmak amacıyla PIC’i resetlememiz gerekir. Aslında PIC’in içinde yeterli gerilimle beslendiğinde, programı yeniden başlatan bir devre mevcuttur (Power on reset). Ayrıca PIC16F84’de 4. bacakta yine reset işlemini yapan bir devre vardır. MCLR ucunda lojik resetleme işlemi gerçekleşir. Yani resetleme öncesi kısa süreli bir “0” sinyali verilir, sonrasında da lojik 1 uygulanır. Bu durumda enerji verildiği anda program başa döner yani resetlenmiş olur. Bunun için aşağıdaki gibi bir reset devresi kullanılabilir:

Özen ÖZKAYA

ozen.ozkaya@itu.edu.tr

İTÜ OTOKON Eğitim Komitesi

 

Sponsorlu Bağlantılar