Led Efekt Devresi
Led PIC 16F84 ile LED Efekt devresi MPLAB ile nasıl hazırlanır? Devamını bu ayki gazetemizde okuyabilirsiniz.
Led efekt devremiz PIC16F84 mikro denetleyicisi ile gerçekleştirildi yazılım assembly ile hazırlandı.Çok basit bir uygulama PIC programlamada yeni başlayan kişiler için faydalı olabilir ayrıca MPLAB üzerinde yazılımın derlenmesi isis üzerinde devrenin tasarlanması aşamaları "Video" olarak kayıt edildi görüntüleri izlediğinizde az çok bu programların kullanımı hakkında bilgi sahibi olabilirsiniz
Uygulamanın .WMV formatında videosu
İsis Similasyonu
Programı MPLAB ile yazdıktan sonra programı ASM uzantısında kaydedip klavyede Alt+F10 tuşlarına bastığınızda MPLAB yazılan ASM kodlarını HEX koduna çevirir (Derler). Eğer ASM kodlarında hata varsa ERROR komutu ile hataları gösterir. ERROR komutunun satrırna çift tıkladığınızda hatalı satırı gösterir. Hatalar düzeltildikten sonra derleme işlemi tekrar yapılır. Derleme işlemi yapıldıktan sonra programın HEX kodları ASM kodlarının kayıtlı olduğu yerde oluşur.
Devrenin asm hex ve isis similasyon dsn dosyaları
LIST P=16F84 ;16F84 PIC'ini kullanacağım
INCLUDE "P16F84.INC" ;16f84'ün dosyalarını tanıttım
SAY1 EQU 0X0C ;SAY1 adlı kaydedici oluşturdum
SAY2 EQU 0X0D ;SAY2 adlı kaydedici oluşturdum
BSF STATUS,5 ;BANK1'e geç
CLRF TRISB ;PORTB çıkış olarak ayarlandı
BCF STATUS,5 ;BANK0'e geç
CLRF PORTB ;PORTB'yi temizle
BASLA
CALL ZAMAN ;ZAMAN adlı alt programını çağır
BSF PORTB,0 ;PORTB'nin 0. bitini HİGH yap
CALL ZAMAN ;ZAMAN adlı alt programını çağır
BCF PORTB,0 ;PORTB'nin 0. bitini LOW yap
BSF PORTB,1 ;PORTB'nin 1. bitini HİGH yap
CALL ZAMAN ;ZAMAN adlı alt programını çağır
BCF PORTB,1 ;PORTB'nin 1. bitini LOW yap
BSF PORTB,2 ;PORTB'nin 2. bitini HİGH yap
CALL ZAMAN ;ZAMAN adlı alt programını çağır
BCF PORTB,2 ;PORTB'nin 2. bitini LOW yap
CALL ZAMAN ;ZAMAN adlı alt programını çağır
MOVLW 0X07 ;W kaydedicisine heksadesimal 07 değerini yükle
MOVWF PORTB ;W kaydedicisindeki değeri PORT'ye çık
CALL ZAMAN ;ZAMAN adlı alt programını çağır
CLRF PORTB ;PORTB'yi temizle
GOTO BASLA ;BASLA adlı etikete git
ZAMAN
MOVLW 0XFF ;W kaydedicisine heksadesimal FF değerini yükle
MOVWF SAY1 ;W kaydedicisindeki değeri SAY1'e yaz
TEKRAR1
MOVLW 0XFF ;W kaydedicisine heksadesimal FF değerini yükle
MOVWF SAY2 ;W kaydedicisindeki değeri SAY2'e yaz
TEKRAR2
DECFSZ SAY2,F ;SAY2'den 1 çıkar tekrar SAY2'ye kaydet. SAY2 sıfır mı?
GOTO TEKRAR2 ;HAYIR -TEKRAR2 etiketine git
DECFSZ SAY1,F ;EVET -SAY1'den 1 çıkar tekrar SAY1'ye kaydet. SAY1 sıfır mı?
GOTO TEKRAR1 ;HAYIR -TEKRAR1 etiketine git
RETURN ;Alt programı bitir
END ;Programın sonu
@gevv 320volt.com Elektronik ve biraz daha fazlası