Mikrodenetleyici Seçimi

Mikrodenetleyici Seçimi Yaparken Göz Önüne Alınan Bazı Kıstaslar

Program (flash) ve veri hafızasının büyüklüğü
Giriş-Çıkış portlarınınsayısı
Zamanlayıcı/Sayaç larınbüyüklüğü ve sayısı
Kesme özelliği olup olmadığı ve kaç seviyeli olduğu
İstenilen özelliklerin olması (A/D, SPI, PWM, Capture, Compare, UART, v.s.)

PIC MİKRODENETLEYİCİLER

20 MHz varan saat frekansı
4 taneye kadar zamanlayıcı ve 2 tane CCP modül
Kesmeler
WDT, BOR gibi düşük voltaj veya elektrik kesintilerine karşı koruma özellikleri
SPI özelliği ile istenilen sayıda I/O pinekleme
18FXXX ailesinde math-prosesördesteği
Microchip’in sağladığı MPLAB v.b. parasız program desteği
UART

PIC18F452 CPU TASARIMI

PIC’lerHarvard donanım ve RISC yazılım tasarımına sahiptirler

PIC18F452 PROGRAM HAFIZASININ ADRESLENMESİ

PIC18F452 PROGRAM HAFIZASI

Program Hafızası:

–8 bitlik yerlerden oluşur
–Komutlar 16 bit olarak kodlanır
–PC’ınuzunluğu 21 bittir

Program hafızasındaki 3 adres PIC tarafından özel şekilde değerlendirilir: H’0000’ ,H’0008’ve H’0018’

Denetleyici ilk çalıştığında ve resetlenmedurumunda PC,H’0000’ile yüklenir

Bir kesme geldiğinde ise CPU PC’nino andaki adresini saklar ve PC’ye yüksek öncelikli kesmeler için H’0008’, düşük öncelikli kesmeler için H’0018’ adres değerlerini yükler.

PIC18F452 PROGRAM YAPISI

PIC18F452 VERİ HAFIZASI

Veri hafızası (program hafızasından farklı olarak) 8 bitlik kaydedicilerden oluşur.

İki ana bölümü vardır:GFR (General FunctionRegisters) RAM hafızasıSFR (SpecialFunctionRegisters) Denetleyicinin özelliklerini kullanma, ayarlamave kontrol etme için kullanılanbölüm

•Veri hafızası 256 baytlık kutulardan oluşur
•Toplam 16 kutu(Bank)bulunur. 18F452 serisinde bunlardan 7 tanesi kullanılır
•İlk 6 kutu (Kutu0-Kutu5) genel amaçlı RAM olarak kullanılır (GFR). Kutu 15 özel amaçlı kaydedicileri (SFR) içerir.

•SFR’larmikrodenetleyicininözelliklerinin ayarlandığı ve bu özelliklerin kullanılması için gereken diğer fonksiyonların kontrol edildiği özel kaydedicilerdir.

PIC18F452 KOMUT SETİ

PIC18F452’de 75 adet komut bulunur.

Komutların işleyişi bir yada iki saat sinyali alır.

2 saat sinyali alan komutlar PC değerinin değişmesi gereken goto, call ve benzeri şartlı yada şartsız dallanma komutlarıdır.

WREG kaydedicisiakümülatör görevi görür.

Komut setini 4 ana grupta inceleyebiliriz

Veri hafızası içerisindeki bir kaydedici üzerinde işlem gören komutlar

Veri hafızası içerisindeki bir kaydedicinin bir biti üzerinde işlem gören komutlar

Sabit sayılar üzerinde işlem gören komutlar

Kontrol komutları

Veri Hafızası İçerisindeki Bir Kaydedici Üzerinde İşlem Gören Komutlar

Bu komutlar 3 parametre ile kullanılır:

–Üzerinde işlem görülecek veri hafızası (f ile gösterilir)

–İşlemin sonucunun atanacağı kaydedici (d ile gösterilir). Burda d 0 ise sonuç WREG’e, 1 ise sonuç f ile verilen kaydedicinin içerisine atanır

–Kutulara erişim seçeneği (a ile gösterilir). Burda a 0 ise kutu sıfırın ilk 128 adresinin kullanıldığı Access RAM seçeneği, a 1 ise tüm kutuların kullanıldığı Bank seçeneği kullanılır

Bu komutların yazım formatı:

komut f, (d) , (a)

Not: Parantez içerisinde belirtilen değerler yazılmasada olur. Bu durumda derleyici d için 1 değerini, a için ise 0 değerini alarak komutu işleme alır.

PIC18F452’ LERDE LCD

LCD: Karakter gösterimi için popüler olarak kullanılan, az enerji harcayan elemanlardır

8×2, 16×2, 40×4, v.s. gibi pek çok çeşitleri vardır

Bu elemanlara akıllı çiplerdedenir çünkü içlerinde kendisine ulaşan veriyi işlemek ve ekranda göstermek üzere bir entegre bulunur

Piyasadaki LCD’lerin büyük çoğunluğu Hitachi’nin ürettiği HD44780 entegresini kullanır.

Bu entegre 1, 2, 4 satirlik LCD’leri destekler

LCD’lere Veri Aktarımı

LCD’lere veri aktarımı 4-bitlik ve 8-bitlik olarak yapılabilmektedir

Veri gönderilmeden önce LCD’de bazı ayarlamaların yapılması gerekmektedir. Bu ayarlamalar için özel kontrol komutları kullanılır

Dolayısıyla LCD’ye gönderilen 8-bitlik bir veri kontrol komutu yada ekranda gösterilecek ASCII karakter olabilir

Gelen verinin komut mu yoksa karakter mi olduğunu LCD üzerinde bulunan RS pini belirler

RS=0 ise gelen 8 bitlik veri LCD tarafından komut olarak algılanır
RS=1 ise gelen veri karakter olarak algılanır
LCD üzerindeki E piniyardımıyla gelen veri önce LCD’nin kendi içerisindeki bir kaydediciye alınır.
Bunun için E pinibir saat sinyali boyunca 1 yapılıp sonra 0 yapılır

Piyasadaki LCD’lerin büyük çoğunluğu bu karakter adresi formatını kullanır. 3 veya 4 satırlık LCD’lerin karakter adreslerini belirlemede ise şu kural uygulanır:

Birinci sıra 0x80 adresinden baslar ve bu sıradaki diğer karakter adresleri sağa doğru birer artarak gider

İkinci sıra 0xC0 adresinden baslar ve bu sıradaki diğer karakter adresleri sağa doğru birer artarak gider

LCD Ekraninda Karakter Gosterimi

1) FSR’a dizinin baslangic adresini ata
2) Ilk byte kursor pozisyonlandirici komutu olacagi icin RS=0 yap
3) INDF yardimi ile komutu okuyarak LCD’ye gonder,
4) E=1 yap, E=0 yap vekomutunLCD icerisinde islem gormesi icin 10MSn bekle
5) FSR’i bir arttir. Bundan sonraki baytlar ASCII karakter kodlari olacagindan RS= 1 yap
6) INDF ile karakteri okuyarak LCD’ye gonder
7) E=1 yap, E=0 yap, karakterin ekranda gosterimi icin 40 µSn bekle
8) FSR’i bir arttir ve dizinin sonuna gelinip gelinmedigini kontrol et, gelinmedi ise 6)’ya donerek islemi tekrar et

Yer işareti koy Kalıcı Bağlantı.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir