Kategoriler
Son Konular
İnternetten Seçmeler
Rastgele Konu
» IR2153 ile AC 220 Volt ...
» Direnç Genel Bilgiler
» Geleceğin Teknolojisi F ...
» 8 Watt PLL Kontrollü Ka ...
» LCR Metre
» Dökümanlarınız,Yazıları ...
» Dizüstü Bilgisayarda Şa ...
» PT2389 ile 5 Band Ekola ...
» TFT LCD Ekranları Üreti ...
» 4060 Entegresiyle Yapıl ...
» Direnç Genel Bilgiler
» Geleceğin Teknolojisi F ...
» 8 Watt PLL Kontrollü Ka ...
» LCR Metre
» Dökümanlarınız,Yazıları ...
» Dizüstü Bilgisayarda Şa ...
» PT2389 ile 5 Band Ekola ...
» TFT LCD Ekranları Üreti ...
» 4060 Entegresiyle Yapıl ...
Toplist ve Sayaç
|
|||
|
Elektronik malzemelerin veya cihazların karakteristik bilgilerini barındıran dökümanlara Veri Sayfası (datasheet) diyoruz.Bu yazıda başlıktan da anladığınız gibi Pic serisi entegrelerden 16F628 entegresinin Türkçe bilgilerini detaylı olarak sizlere sunacağız.
Pic16F628 entegresinin Türkçe veri sayfası Esin POLAT arkadaşımız tarafından hazırlanmıştır. PIC16F628 MİKRODENETLEYİCİSİ Pic kelimesinin açılımı “Peripheral Interface Controller” kelimesinin baş harflerinden alır. Türkçe çevirisi ise "Çevresel üniteleri denetleyici arabirim"dir. RISC (Reduced Instrucition Set Computer) mimarisi adı verilen bir yöntem kullanılarak üretildiklerinden bir PIC16F628’i programlamak için kullanılacak komutlar oldukça az ve kolaydır. Bir tasarım yöntemi plan RISC mimarisindeki temel düşünce, daha kolay ve az sayıda komut kullanılmasıdır. Şekil 2.15’de PIC16F628’in dış görünüşü görülmektedir. PIC16F628 MİKRODENETLEYİCİSİNİN ÖZELLİKLERİ PIC16F628, diğer picler gibi RISC yapısı üzerine kurulu Harvard mimarisi ile üretilmiştir ve flaş program belleğine sahip PIC16CXX ailesinden 8 bitlik bir mikrodenetleyicidir. PIC16F628’in mimari yapısından dolayı program ve veri bellekleri fiziksel olarak ayrı birimlerdedir ve bunlara farklı veri yolları ile erişilmektedir. Tablo2.12’de PIC16F628’in genel özellikleri görülmektedir. ![]() Pic16F628 entegresinin Pinleri RISC Mimarisinin PIC16F628’ e Kazandırdığı Özellikler • Sadece 35 komut ile kontrol • Çalışma hızı: DC – 20 MHz’lik giriş zamanı • DC – 200 ns’ lik komut periyodu • 14 – bit uzunluğunda komutlar • 8- bit uzunluğunda veri yolu • 15 özel fonksiyonlu donanım Register’leri • 8 seviyeli derin donanım stack’i • Doğrudan – dolaylı ve izafi adresleme yöntemi • 1000 kere program silip yazma özelliğine sahip Flash bellek PIC16F628'İN PORTLARI PIC16F628, A portu ve B portu olmak üzere 8 uçlu iki porta sahiptir. B portunun her bir ucu ayrı ayrı giriş/çıkış olarak ayarlanabilirken, A portunun RA5/ ucu hariç diğer uçları ayrı ayrı giriş/çıkış olarak ayarlanabilmektedir. Bu uç sadece giriş olarak düzenlenebilir. Diğer PIC’lerde olduğu gibi, az sayıdaki uçların etkin kullanımı için bazı uçların birden fazla kullanım özelliği vardır. Böylece fazladan uç kullanımına gerek kalmadan birçok özellik kullanılabilmektedir [5] PIC16F628 MİKRODENETLEYİCİSİNİN DİĞER DONANIM ÖZELLİKLERİ Besleme Gerilimi PIC16F628’in besleme gerilimi 3-5.5V arasında seçilebilir. Daha düşük gerilimle çalışması gereken sistemler için 2-5.5V gerilim aralığında çalışan PIC16LF628 kullanılabilir. PIC16F628’in beslemesi VDD ve VSS uçlarından verilmektedir. DIP kılıf yapısı için 14 numaralı uç olan VDD’nin + beslemeye, 4 numaralı uç olan VSS ise toprağa bağlanması gerekir. PIC’e besleme gerilimini sağlayan gerilim kaynağı ilk açıldığında besleme gerilimindeki dalgalanmaları ve yüksek akım çeken devre elemanlarının devreye girip çıkması ile besleme gerilimindeki ani ve istenmeyen değişimleri engellemek için VSS ile VDD uçları arasına bir kondansatör bağlanmalıdır. Böylece PIC’in istenmeyen şekilde resetlenmesi engellenmiş olur. Şekil 2.20 de PIC16F628’in besleme bağlantı şeması görülmektedir. Osilatör Tipleri PIC16F628 işlemleri gerçekleştirmesi için gerekli olan saat işaretleri birçok farklı devre ile elde edilebilir. Mikroişlemcilerin program kodlarını çalıştırma süresi saat işaretine bağlıdır. Yüksek saat işareti hızında çalışan bir mikroişlemci aynı sürede saat işareti hızı düşük olan bir mikroişlemciye göre daha fazla komutu işler. Öreğin 3 GHz’de çalışan bir işlemci 1 GHz’de çalışan aynı işlemciye göre 3 kat daha hızlı komut işler [5]. PIC16F628 en fazla 20 MHz saat işaretinde düzgün çalışabilir. Saat işareti farklı yollarla elde edilebilir; • LP (Low Power Crystal) : Düşük güçlü kristal • XT (Crystal/Resonator) : Kristal/rezonatör • RS (High Speed Crystal/Resonator) : Yüksek hızlı kristal/rezonatör • ER (External Resistor) Harici direnç (2 çalışma biçimi) • INTRC (Internal Resistor/Capacitor) : Dahili RC (2 çalışma biçimi) • EC (External Clock In) : Harici Saat Girişi • LP, XT veya RS tipi osilatörler OSCI ve OSC2 uçlarına bağlanırlar. Bu tip osilatör devrelerinin PIC16F628’e bağlantısı Şekil 2.21’de görülmektedir. ![]() Şekil 2.21 LP, XT ve HS tipi osilatörlerin PIC16F628’e bağlanması Donanım reset PIC16F628’i donanımsal olarak resetlemenin iki yolu vardır. Bunlardan ilki, besleme verildiğinde PIC’in kendini resetlemesi ve reset vektörüne giderek program kodlarını çalıştırması şeklinde olur. İkincisi ise donanım resetidir. MCLR ucunun ‘0’a çekilmesi ile gerçekleşir. Bu iş için kullanılabilecek devre Şekil 2.22’de görülmektedir. ![]() Şekil 2.22.PIC’in MCLR ucu kullanılarak resetlenmesi Normalde “1” seviyesini gören MCLR ucu, butona basıldığında ‘0’ olur. Bu durumda da PIC yine reset vektörüne giderek program kodlarını çalıştırmaya başlar. MCLR ucu istenirse donanımsal resetleme yerine giriş ucu olarak kullanılabilir. Bu durumda PIC, besleme gerilimi kesilmediği sürece harici olarak resetlenemez. PIC16F628’in Bellek Yapısı PICI6F628’in 2k boyutunda program belleği vardır. Bu bellekteki her bir göz 14-bit uzunluğundadır. Bu gözlerin uzunluğu ve içindeki veriler programcıyı doğrudan ilgilendirmemektedir. Şekil 3.9’da PIC 16F628’in program belleği haritası verilmektedir. Görüldüğü gibi 0-7FFh arasındaki program belleği 2k uzunluğundadır. PIC16F628’in RAM bölgesinin 4 parçaya (bank) ayrıldığından ve bu 4 RAM bölgesinde genel amaçlı saklayıcılar (general purpose registers) ve özel amaçlı saklayıcılar (special function registers) bulunmaktadır. Her bir RAM bölgesinin ilk 32 byte’lık kısmı özel amaçlı saklayıcılar tarafından kullanılmaktadır. Genel amaçlı saklayıcılar için ise 224 byte’lık bir alan ayrılmıştır. Bu saklayıcılarda program yazarken kullanılan değişkenler tutulur. Şekil 2.23 de PIC16F628’in RAM bölgesinin haritası görülmektedir. ![]() Şekil 2.23 PIC16F628’in program bellek yapısı Özel amaçlı saklayıcılar kullanılmak istendiğinde ilgili RAM bölgesine geçiş yapılmalıdır. Örneğin PORTA özel amaçlı saklayıcısına erişmek için mutlaka sıfırıncı RAM (Bank 0) bölgesine geçilmelidir. Bazı özel amaçlı saklayıcılar bütün RAM bölgelerinde bulunmaktadır ve bu saklayıcılara bank değiştirmeden erişilebilir. RAM bölgeleri arasında geçiş STATUS saklayıcısı kullanılarak yapılır. Microchip firması yukarıda bahsedilen RAM bölgesindeki 8-bitlik gözlere veri saklayıcısı (file register) adını vermektedir. PIC işlemlerini genellikle veri saklayıcıları ve W saklayıcısı (Working register) üzerinden yapar. W saklayıcısı 8-bitlik bir saklayıcıdır ve birçok işlem bu saklayıcı üzerinden yapılmak zorundadır. Aşağıdaki şekilde PIC 16F628’in RAM bölgesi haritasının şekli görülmektedir. ![]() KESMELER – Hakkında Temel Bilgiler Mikrodenetleyicinin rutin olarak yaptığı işler dışında bazı özel durumlar oluştuğunda, rutin işlerini bırakıp bu özel durumla ilgili görevleri yerine getirmesi gerekir. Burada bahsedilen, özel durumun oluşup oluşmadığının sürekli kontrol edilmesi yerine, kesme kullanılarak özel durumun oluştuğu mikrodenetleyiciye otomatik olarak bildirilir ve böylece gereksiz kontrollerden kurtulunur. Burada bahsedilen özel durum öncelikli bir görev olabileceği gibi, nadiren yapılması gereken bir görev de olabilir. Örneğin PIC16F628 ile bir sıcaklık kontrolü yapıldığını düşünelim. Ortam sıcaklığı belirli bir değerin (ayar noktasının) üstüne çıktığında klima devreye sokulsun. Ayar noktası iki butonla kontrol edilsin. Sistem sıcaklığı ölçüp ayar noktasına göre klimayı kapatıp açmaktadır. Ayar noktasının değiştirilmesi işlemi nadiren yapılacağından bu işlem kesme ile yapılabilir. Böylece bu butonların sürekli olarak kontrolüne gerek kalmaz. Sadece butonlara basıldığında ayar noktasının değeri kesme hizmet programı ile değiştirilir ve sistem ana programa dönerek rutin sıcaklık kontrolü işlemine devam eder. KESME DURUMUNDA PIC'in TEPKİSİ Herhangi bir program kodu çalışırken bir kesme gelmesi durumunda PIC l6F628’in otomatik olarak yapacağı işler aşağıda listelenmiştir. Şekil 2.25’te ise kesmelerin çalışma mantığı görülmektedir. 1. Kesme gelmeden önce çalıştırılan komuttan sonraki komutun program belleğindeki adresi yığına (stack) otomatik olarak atılır. Böylece kesmeden dönüldüğünde programın nerede kaldığı PIC tarafından bilinecektir ![]() Şekil 2.25. Kesmelerin çalışma mantığı 2. PIC16F628’in kesme vektörü olan program belleğinin 0×0004 adresine gidilir ve buradaki program kodları çalıştırılmaya başlanır. Dolaysıyla kesme kullanılması durumunda 0×0004 adresine ana programa ilişkin program kodu yazılmamalıdır. 3. 0×0004 adresindeki “kesme hizmet programı (interrupt service routine-ISR)” olarak da adlandırılan kesme programı çalıştıktan sonra RETFIE komutu ile kesmeden geri dönüş sağlanır. Bu durumda PIC otomatik olarak yığından ana programda döneceği yerin adresini alır ve program sayıcısına (PC) yükler. 4. Ana program kaldığı yerden çalışmaya devam eder. Şekil 3.12’de bir kesme gelmesi durumunda kesme hizmet programının çalıştırılması görülmektedir. Şekil 2.26.a’da kesme hizmet programının program belleğinin 0×0004 adresinden itibaren yazıldığı durum, Şekil 2.26.b’de ise 0×0004 adresinden başka bir etikete dallanılarak kesme programının bu etiketten itibaren yazıldığı durum görülmektedir. Genellikle Şekil 2.26.b’deki bu yöntem kullanılmaktadır.Şimdi Şekil 2.26.b’deki durumu ayrıntılı olarak inceleyelim. 0×03 adresindeki movlw h’FF’ komutu işletilirken bir kesme geldiğini düşünelim. Bu durumda öncelikle movlw komutunun işini bitirmesi beklenir. Daha sonra 0×035 adresindeki movwf PORTB komutu işletilmeden 0×035 adresi yığına geri dönüş adresi olarak atılır. Bu işlem PIC tarafından otomatik olarak yapılır. Daha sonra yine otomatik olarak 0×0004 kesme vektörüne gidilir. Kesme vektöründe goto ACIL komutu ile ACIL etiketi altındaki program çalıştırılır. Bu programın sonundaki retfie komutunun çalıştırılması ile yığından geri dönüş adresi olan 0×035 alınarak programın bu adresten itibaren çalışmaya devam etmesi sağlanır. PIC16F628’de kesme ile ilgili işlemleri kontrol etmek için INTCON, PIE1 ve PIR1 özel amaçlı saklayıcıları kullanılır. ![]() Şekil 2.26. Kesme durumunda hizmet programının çalışması PIC16F628’in KESME KAYNAKLARI PIC16F628’de kesmeye neden olan 10 farklı durum mevcuttur ve bunlar kesme kaynağı (interrupt source) olarak adlandırılır. Aşağıda PIC16F628’in kesme kaynakları listelenmiştir. • Harici RB0\INT kesmesi • TMR0 taşma kesmesi • PORTB bitlerindeki değişim kesmesi • Karşılaştırıcı kesmesi • USART TX kesmesi • USART RX kesmesi • CCP kesmesi • TMR1 taşma kesmesi • TMR2 kesmesi • EEPROM kesmesi Burada Karşılaştırıcı kesmesi, USART TX kesmesi, USART RX kesmesi, CCP kesmesi, TMR1 taşma kesmesi, TMR2 kesmesi, EEPROM kesmesi ‘çevresel kesmeler’ olarak adlandırılır. |
|||
Etiketler
Ürün Etiketi
Takvim
| Pt | Sa | Çr | Pr | Cu | Ct | Pz |
|---|---|---|---|---|---|---|
Arşiv
Etiketler
2n3055, 555, 7 segment display, aritmetik işlemler, ayarlı güç kaynağı, basic, baskı devre, bilgisayar, bobin, direnç, eeprom, ete, fm verici devresi, güç amfisi, hoparlör, kondansatör, led, logic gates, Lojik kapılar, osilaskop, osilatör, pc, pcb, pic, pic basic pro, pic basic pro dersleri, pic programlama, pic16f628, pic16f84a, power supply, pwm, teknoloji, ton kontrol, transformatör, transistör, tristör, triyak, türkçe datasheet, ölçü aleti
Tüm etiketler
Tüm etiketler











