Güncel Oyun & Program & Resim & Msn Forumu
Elektronik Bölümü icinde Pic Programlama Ders - 15 konusu , DERS - 15 Bu yazimizda çevrim tablosu ve seven segment led display ile ilgili konulara göz gezdirecegiz. Seven segment LED display ortak anotlu veya ortak katotlu olabilen ve 7 adet ...
|
|||||||
| Anlık İletiler | Kayıt ol | Yardım | Üye Listesi | Ajanda | Arama | Bugünki Mesajlar | Forumları Okundu Kabul Et |
|
|
|
DERS - 15
Bu yazimizda çevrim tablosu ve seven segment led display ile ilgili konulara göz gezdirecegiz. Seven segment LED display ortak anotlu veya ortak katotlu olabilen ve 7 adet led içeren bir displaydir. Bu ledlerden bazilarinin yakilmasi durumunda displayde bir görüntü ortaya çikar. Display bir pic yardimi ile sürülür. Pic'in RB0 dan RB7 ye kadar olan 8 bit'i bu is için ayrilir. Genelde RB0 segmentin A ledine gider ve RB7 nokta olarak kullanilir. Bir 7 segmentte saat yönünde giderek ve tepeden baslayarak led ler: A, B, C, D, E, F, G olarak adlandirilir. Segmentin üst ve altinda orta uçlar Ground olarak kullanilir (ortak katot). { Port b den gelen bilgilerin, klasik baglanti yapilmis olan bir display de olusturdugu sekil, port b ye aktrilan bilgiye baglidir. RB0 dan RB7'ye kadar olan bitlerin high veya low olmasina göre, bu çikislarin baglandigi ledler bir görüntü olusturur. Örnegin segmentte 0 olmasi için, A, B, C, D, E, F ledlerinin high olmasi gerekir, bu ledlerin geldigi pic kapilari RB0 – RB6 kapilaridir, o halde bu bitler 1 olmalidir, yani Binary olarak port B ye "00111111" atanmalidir. Bu atamayi binary olarak yapabilecegimiz gibi decimal veya hexadecimal olarak da yapabiliriz, yukaridaki binary sayinin karsiligi D "63" H "3F" tir. Yani decimal 63 sayisi binary olarak ifade edildiginde, karsiligi B "00111111"dir bu da port B de "0"‘ gösterir. Sonuçta port B ye atanan Hex. veya Dec. sayinin Binary karsiligidir. Bu listede görülen bir decimal veya hexadecimal sayiyi port B ye atadiginiz zaman seven segmette karsiligi olan rakami görürsünüz.Bu islem için çevrim tablolari kullanilir.Çevrim tablosuna hexadecimal veya decimal olarak yazdigimiz sayi ,binary karsiligina çevrilerek pic portlarindan segmente aktarilir ve bir görüntü olusur. ÇEVRIM TABLOLARI: Port çikisinda hangi binary sayilar isteniyorsa onlarin karsiligi olan decimal veya hexadecimal sayilarin yazildigi bir listedir. CALL RETURN komutu gibi bu da CALL RETLW komut ikilisi ile kullanilir.Çevrim tablosu binary ‘e çevrilecek sayilari içerir ve bu binary degerlerin port çikislarindaki durumuna göre perifer elemanlar çalisir. RETLW: Return komutu gibi bu da alt programdan ana programa dönüs için kullanilir. Bu komut ana programa dönüste karsisinda yazilan degeri Write registere yazar. PROGRAM COUNTER: Program sayicilar pic lerde kullanilan bir registerdir.Pic belleginin degerine göre 10 ila 14 bit lik sayicilar kullanilir.10 bit yani 210 = 1024 byte oldugundan ve pic 16F84 ün de 1 Kbyte lik bir program hafizasi oldugundan,bunu adreslemek için counterda 10 bit yeterlidir. Pic 16F84 counter 13 bittir. Ilk 8 biti PCL'dir ve bununla 256 byte adreslenir. Diger 5 biti PCH'tir ve bunun dogrudan okunup yazilmasi mümkün degildir, bu ancak PLATCH register ile bu da 5 bittir, kullanilir. Programda PC olarak tüm register bitleri kullanilirsa,PLATCH registerin üst 2 bitini sifirlamak gerekir bu nedenle,dar kapasiteli kullanimlarda PC yerine PCL yazarak bu nun önüne geçeriz. ÖRNEK: Seven segment üzerinde 0 ila 9 arasindaki sayilari gösteren bir program yapalim. ;ADIM ADIM PIC ;DENEME PROGRAM YAZI 15 ;SEVEN SEGMENT ;TA2FR LIST P=16F84 INCLUDE "16F84.INC" CLRF PORTB ;Port b cýkýþlarý low (sönük) BSF STATUS,5 ;Bank 1'e gec CLRF TRISB ;Port B yi çýkýþ pozisyonuna getir BCF STATUS,5 ;Bank 0 'a gel BASLA MOVLW H'00' MOVWF SAYAC4 DONGU MOVF SAYAC4,W ANDLW B'00001111' CALL _7SEG MOVWF PORTB INCF SAYAC4,F CALL GECIKME GOTO DONGU _7SEG ADDWF PCL,F RETLW H'3F' RETLW H'06' RETLW H'5B' RETLW H'4F' RETLW H'66' RETLW H'6D' RETLW H'7D' RETLW H'07' RETLW H'7F' RETLW H'6F' GECIKME MOVLW H'06' MOVWF SAYAC1 DONGU1 MOVLW H'FF' MOVWF SAYAC2 DONGU2 MOVLW H'FF' MOVWF SAYAC3 DONGU3 DECFSZ SAYAC3,F GOTO DONGU3 DECFSZ SAYAC2,F GOTO DONGU2 DECFSZ SAYAC1,F GOTO DONGU1 RETURN END Pic çikislarindan RB0 ila RB7 ye kadar olanlar sirasi ile Segmentin A dan G ye kadar olan bacaklarina baglanir.Nokta bos birakilir ve en son kapi olan RB7 ye gerekirse baglanir. RB0 - A RB1 - B RB2 - C RB3 - D RB4 - E RB5 - F RB6 – G Bu baglanti dan sonra yukaridaki Hex file"li pic"e yükleyiniz ve çalistiriniz . Display de o dan 9 a kadar rakamlar sira ile yanarlar. Bir 7 segment LED display de üst ve alt kisimda bulunan orta uçlar birlesik katot dur. Bu kisim saseye baglanir. A,B,C uclari da yukarida gösterilen resimdeki ayni harfli ledlerin uçlaridir. Bu ledleri RB çikislarina istediginiz gibi bagliyabilirsiniz bu sizin seçiminizdir,yalniz programi buna göre yazmaniz gerekir. Klasik olan RB0 dan RB6 kadar olan uclara sirasi ile A, B, C…. ledlerini baglamaktir. Gerisi yazdiginiz programa baglidir |
![]() |
| Seçenekler | |
| Stil | |
|
|
| LinkBack |
LinkBack URL |
About LinkBacks |
| Bookmark & Share |
Digg this Thread! |
Add Thread to del.icio.us |
Bookmark in Technorati |
Furl this Thread! |