16F628A İle Basit Buton-Led Uygulaması
Bu yazımda da bir önceli yazıda bahsettiğim uygulamayı yapıyoruz. Konumuş şu şekilde:" PORTA’nın 0. ve 1. ucuna bağlı butonlardan 0. uca bağlı butona basınca yanan( ve yanık kalan) 1. pine bağlı butona basınca da tamamen sönen(sönük kalan) program"ı yazalım.
Kodları ilerde de yapacağım gibi yapıştırıyorum. Zaten yanında açıklamaları mevcut:
;====led_yak_son===22.01.2008======
;====ERHAN HARMANKAYA==============
LIST P=16F628A
INCLUDE "P16F628A.INC"
__CONFIG _INTRC_OSC_NOCLKOUT &_WDT_OFF &_PWRTE_ON &_MCLRE_ON &_BODEN_OFF &_LVP_OFF &_DATA_CP_OFF &_CP_OFF
;==================================
ORG h’00′
BASLA
CLRF PORTB ;PORT B’nin bütün uçlarını temizle
BANKSEL TRISA ;BANK1′e geç
MOVLW h’FF’ ;Akü’ye FF koy
MOVWF TRISA ;TRISA’nın bütün bitleri 1 yapıldı.-Giriş
CLRF TRISB ;B’nin bütün bitlerini 0 la- Çıkış yapıldı
BANKSEL PORTA ;BANK0′a geç
MOVLW h’07′ ;aküye 00000111 koy
MOVWF CMCON ;porta ilk 3 giriş dijital I/O
KARSILAS
BTFSS PORTA,0 ;0. buton basılmış mı?
GOTO SONDUR ;hayır basılı değil
GOTO YAK ;evet basılı
YAK
BSF PORTB,0 ;ledi yak (RB0=1)
BTFSS PORTA,1 ;İkinci buton basılı mı
GOTO YAK ;basılı değil
GOTO SONDUR ;basılmış
SONDUR
BCF PORTB,0 ;ledi söndür (RB0=0)
GOTO KARSILAS
END

Proteus design dosyasını da yine Project.harmankaya.. adresindeki [şuraya] yüklüyorum. Umarım faydalı olabilmişimdir.
Sevgiler…
Merhaba,
kodları inceledim güzel çalışma olmuş ancak devre şemasını büyütemiyorum.net ve büyük bir şekilde olanını yayınlarmısınız?