PIC 16F84 ile ALT PROGRAMLARIN ve ÇEVRİM TABLOLARININ KULLANIMI DERS 11 PIC 16F84 ile ALT PROGRAMLARIN ve ÇEVRİM TABLOLARININ KULLANIMI
İÇERİK Alt Program Çevrim Tabloları Program Sayıcı ( Program Counter – PC )
ALT PROGRAM Bir program içerisinde sıkça tekrar edilmesi gereken program parçaları olabilir. Bunların her defasında tekrar tekrar yazılmasındansa bir kere bir ALT PROGRAM olarak hazırlanıp her gerekli olduğunda çağrılması yaygın bir uygulamadır. Alt Programı CALL komutu ile çağrılır ve RETURN komutu ile de Ana Programa geri dönülür. Bu işlemin yapılması ve geri planda gerçekleştirilen diğer işlemler yedi farklı adımda incelenebilirler.
ALT PROGRAM Alt programın işletilmesi adımları, Mikrodenetleyiciler ve PIC Prog., sayfa 104
ALT PROGRAM Ana program işletilirken CALL komutu ile alt program talep çağrılır. Proram Counter (PC) registerına alt programın başlangıç adresi kaydedilir. CALL komutunu takip eden komutun yer aldığı program adresi Stack Registerına (veya SP- Stack Pointer) kaydedilir. Programın işletilmesi PC kontrolünde lat programdan devam eder. RETURN komutu ile alt programın sonuna gelindiği belirtilir. Alt programdan Ana programa geri dönmek içim SP ‘de kayıtlı olan geri dönülecek program bellek adresi PC registerına geri yüklenir. Dolayısıyla ana programa kalındığı yerden devam edilir.
ÇEVRİM TABLOLARI ( lookup table ) Bazı programların işletilmesi esnasında verilmiş bir kodun başka bir koda dönüştürülmesi gerekli olabilir. Mesela bir ürünün fiyatının ilgili ürünün kodu ile işleştirildiği bir fiyat listesi bunun bir örneği olabilir. Ancak 7 parçalı LED display kullanımı bizim bakış açımızdan daha klasik bir örnektir. Burada belirli bir sırada dizili 7 adet çubuk şeklindeki LED in istenilen sayısal değere karşılık gelen yanma veya yanmama bilgilerinden oluşan binary bilgi karşılıklarının dönüşümü yapılmaktadır. Dolayısıyla bu örnekte sayısal değer binary bit kombinasyonu dönüşümü yapılmaktadır. Temelde bu dönüşüme kodlama denmektedir. Yani bu dönüşüm tabloları ile aslında bir kodlama yapılmaktadır.
ÇEVRİM TABLOLARI 7 parçalı display ile kullanılacak çevrim tablosu, Mikrodenetleyiciler ve PIC Prog., sayfa 137
ÇEVRİM TABLOLARI 7 parçalı displayin ve PIC16F628A bağlantı şeması, Mikrodenetleyiciler ve PIC Prog.(16F28A), sayfa 168
4 x 7-Parçalı Gösterge Kullanımı KAYNAK: http://i.stack.imgur.com/KeSUJ.gif
4 x 7-Parçalı Gösterge Kullanımı KAYNAK:http://embedded-lab.com/blog/wp-content/uploads/2011/03/Lab11_Circuit_SevenSegmentMultiplexing.jpg
Program Sayıcı ( Program Counter – PC ) Program sayıcı program bellek adresinde işlemcinin sıradaki işleteceği komutunun yer aldığı bir tane 13-bit uzunluğundaki bellek hücresidir. PC ile saklanan bilgi 13-bit uzunlukta olduğu için bir tane 8-bit uznluktaki file register yeterli olmadığından iki adet file register ile bu bilgi kullanılabilmektedir. Aslında bizim kullnadığımız PIC modeli olan 16F84A için bu bilgi toplamda 10 bit uzunluktan fazla olması grekmez.
Program Sayıcı ( Program Counter – PC ) PIC16F84 ile PC’nin kullanımı, Mikrodenetleyiciler ve PIC Prog., sayfa 138
Program Sayıcı ( Program Counter – PC ) PIC programlarında PC’nin alt 8-bitlik kısmına PCL adı verilir ve 02h RAM adresindeki bir YAZILABİLİR ve OKUNABİLİR file register olarak kullanılır. PC’nin üst 5-bitlik (3-bit) kısmına da PCH adı verilir ve buna direkt olarak ulaşmak mümkün değidir. Buna sadece RAM belleğin 0Ah ve 8Ah adreslerinde yer alan PCLATH saklayıcısı vasıtasılyla ulaşılabilir. PCLATH sadece 0.-4.bitleri OKUNABİLEN ve YAZILABİLEN geri kalan bitleri hep 0 OKUNABİLEN bir saklayıcıdır.
Program Sayıcı ( Program Counter – PC ) PC’ye bir program bellek adres değeri girmenin iki farklı yolu vardır. Bu ilk yaklaşımda PCL değeri direkt ilgili saklayıcının (PCL) değeri değiştirilerek ve de PCH değeri de PCLATH saklayıcısının değeri değiştirilerek yapılır. PIC16F84 ile PC’nin kullanımı, Mikrodenetleyiciler ve PIC Prog., sayfa 139
Program Sayıcı ( Program Counter – PC ) PC’ye bir program bellek adres değeri girmenin iki farklı yolu vardır. İkinci yaklaşımda ise programda bir CALL veya GOTO komutu çalıştırıldığında alt 11-bit direkt komut opcode’undan geriye kalan üst iki bit ise PCLATH saklayıcısından (hangi page olduğunu belirlemek için) getirilir. PIC16F84 ile PC’nin kullanımı, Mikrodenetleyiciler ve PIC Prog., sayfa 140
ÇEVRİM TABLOLARI PIC16F84 ile çevrim tablolarının kullanımına örnek, Mikrodenet- leyiciler ve PIC Prog., sayfa 143
PIC 16F84 ile ALT PROGRAMLARIN ve ÇEVRİM TABLOLARININ KULLANIMI DERS 11 PIC 16F84 ile ALT PROGRAMLARIN ve ÇEVRİM TABLOLARININ KULLANIMI - SON - Kaynak: Mikrodenetleyiciler ve PIC Prog., Orhan ALTINBAŞAK, ISBN 975-883-409-6