21.08.2013 Views

Mikro Bilgisayarlı Sistem Tasarımı - Fırat Üniversitesi

Mikro Bilgisayarlı Sistem Tasarımı - Fırat Üniversitesi

Mikro Bilgisayarlı Sistem Tasarımı - Fırat Üniversitesi

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Return<br />

_125us_gecikme ; Ortalama 42*3=126 çevrim elde etmektedir.<br />

Movlw 0x2A<br />

Movwf SAY1<br />

Gec1 decfsz SAY1,f<br />

Goto Gec1<br />

Return<br />

_5ms_gecikme<br />

movlw 0x29<br />

movwf SAY2<br />

Gec2 call _125us_gecikme<br />

Decfsz SAY2,F<br />

Goto Gec2<br />

Return<br />

Darbe<br />

Bsf EN<br />

Nop<br />

Bcf EN<br />

Call _125us_gecikme<br />

Return<br />

9.9. USART<br />

PIC 16F877 de kullanılan ilk seri giriş ve çıkış birimi usart olarak adlandırılmaktadır. Bu<br />

arabirim CRT terminaller, PC‟ler, çevre birimler, seri EPROM gibi birimlerle iletişime geçer.<br />

USART biriminin iki önemli yazmacı; RSCTA ve Baud hız kaynağı SPBRG<br />

yazmacıdır.SPBRG 8 bitlik zamanlayıcıdır.Veri tablolarını incelenerek gerekli baud hızı<br />

seçilir.Asenkron çalıştırılacaksa BRGH(TXSTA) biti de baud hızlarını kontrol edebilir.BRGH<br />

senkron moda gerekmez.Baud hızı ile ilgili üç tane yazmaç vardır. Bunlar ; TXSTA, RCSTA,<br />

SPBRG‟ dir.<br />

USART asenkron modunda ençok kullanılan biçimler;standart 1 başlama(start) biti , 8 veya<br />

9 veri biti, 1 bitiş(stop) bitidir.USART modülü veri iletişiminde önce en düşük öncelikli biti seçer.<br />

Parite biti donanım tarafından yakalanamaz, ancak istendiği takdirde yazılım tarafından<br />

yakalanabilir. USART uyuma (sleep) modunda çalışmaz. USART‟ın 4 önemli elemanı vardır.<br />

Bunlar Baud hız kaynağı, Örnekleme devresi, Asenkron iletim ve Asenkron alıcıdır. Asenkron<br />

iletim yazmaçları ise şunlardır. PIR, RCSTA, TXREG, PIE, TXTA, SPBRG‟dir.<br />

Aşağıda yazılan bu program ile asenkron modda seri iletişimin kurulmasını sağlar.<br />

LIST P16F877<br />

INCLUDE “P16F877.INC”<br />

Variable KRAM=0x20<br />

cblock KRAM<br />

SAYAC<br />

Endc<br />

Variable KRAM=SAYAC+1<br />

ORG 0X03<br />

GOTO BASLANGIC<br />

İbrahim Türkoğlu, <strong>Fırat</strong> <strong>Üniversitesi</strong> - Elektronik ve Bilgisayar Eğitimi Bölümü, Elazığ- 2010. 140

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!