Herkeze slmlar aşağıdaki devreyi proje ödevim olarak yapmam gerekiyo bunun için uğraşıyorum fakat bana ledlerin yanma hızını kontrol edicek bi eleman gerekli yani bir kontrol elemanı ile led lerin yanıp sönme hızını arttırıp yawaşlatmam gerekiyor manuel olarak devre üzerinden bunu nasıl yapabilirim ?
ve bunun için programda ne gibi değişiklikler yapmam gerekiyor??
şimdiden herkeze teşekkürler..
DEVRENİN AÇIK ŞEMASI
DEVRENİN ASM PROGRAMI
;**************************************************************************** ;PIC0003.ASM PIC16F84 4 PROGRAMLI 8 LEDLI ISIK SOVU UYGULAMASI ;01.2000 HUSEYIN SERIMER ;**************************************************************************** ;**************************************************************************** ; PROGRAM BASLANGICINDA ISLEMCI ILE ILGILI TANIMLAMALAR YAPILMALIDIR ;**************************************************************************** TANIMLAMALAR: list p=16F84 ; DERLEYICIYE ISLEMCI TANITILIR #include <p16F84.inc> ; PIC16F84 TANIMLAMA DOSYASI
BTFSS PORTA,1 GOTO ALG2 ;PORTA,0="0" ISE ALG2 PROGRAMINA GIDER NOP
BTFSS PORTA,2 GOTO ALG3 ;PORTA,0="0" ISE ALG3 PROGRAMINA GIDER NOP
BTFSS PORTA,3 ;PORTA,0="0" ISE ALG4 PROGRAMINA GIDER GOTO ALG4 NOP
; PORTA NIN HICBIR UCU "0" DEGILSE SADECE 1.LED YANIK BEKLER MOVLW B'00000001' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CLRDWT GOTO PROGRAM ;ALGORITMA TEKRARLANIR
ALG1: ;********************************************************************* ; SAGDAN SOLA YURUYEN ISIK ALGORITMASI ;********************************************************************* ;1.ADIM MOVLW B'00000001' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;2.ADIM MOVLW B'00000010' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;3.ADIM MOVLW B'00000100' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;4.ADIM MOVLW B'00001000' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;5.ADIM MOVLW B'00010000' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;6.ADIM MOVLW B'00100000' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;7.ADIM MOVLW B'01000000' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;8.ADIM MOVLW B'10000000' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
GOTO PROGRAM ;ALGORITMA TEKRARLANIR ALG2: ;********************************************************************* ; SOLDAN SAGA YURUYEN ISIK ALGORITMASI ;********************************************************************* ;1.ADIM MOVLW B'10000000' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;2.ADIM MOVLW B'01000000' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;3.ADIM MOVLW B'00100000' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;4.ADIM MOVLW B'00010000' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;5.ADIM MOVLW B'00001000' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;6.ADIM MOVLW B'00000100' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;7.ADIM MOVLW B'00000010' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;8.ADIM MOVLW B'00000001' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
GOTO PROGRAM ;ALGORITMA TEKRARLANIR
ALG3: ;********************************************************************* ; ALG3 ISIK ALGORITMASI ;********************************************************************* ;1.ADIM MOVLW B'00000001' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;2.ADIM MOVLW B'00000011' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;3.ADIM MOVLW B'00000111' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;4.ADIM MOVLW B'00001111' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;5.ADIM MOVLW B'00011111' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;6.ADIM MOVLW B'00111111' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;7.ADIM MOVLW B'01111111' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;8.ADIM MOVLW B'11111111' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;9.ADIM MOVLW B'11111110' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;10.ADIM MOVLW B'11111100' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;11ADIM MOVLW B'11111000' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;12.ADIM MOVLW B'11110000' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;13.ADIM MOVLW B'11100000' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;14.ADIM MOVLW B'11000000' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;15.ADIM MOVLW B'10000000' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;16.ADIM MOVLW B'00000000' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
GOTO PROGRAM ;ALGORITMA TEKRARLANIR
ALG4: ;********************************************************************* ; ALG4 ISIK ALGORITMASI ;********************************************************************* ;1.ADIM MOVLW B'10000001' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;2.ADIM MOVLW B'01000010' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;3.ADIM MOVLW B'00100100' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;4.ADIM MOVLW B'00011000' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;5.ADIM MOVLW B'00100100' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
;6.ADIM MOVLW B'01000010' ;AKU YE SABIT BIR SAYI YUKLENIR MOVWF PORTB ;AKUDEKI SAYI PORTB YE YUKLENIR CALL BEKLET_100MS ; 0.1Sn BEKLETME
GOTO PROGRAM ;ALGORITMA TEKRARLANIR
;**************************************************************************** ; 4MHz CLOCK ICIN BEKLETME RUTINLERI ;**************************************************************************** BEKLET_100MS: DLY_100MS ;YAKLASIK 100 MILI SANIYE CLRWDT movlw D'200' movwf msb GOTO DLY1 DLY1 movlw D'168' movwf lsb DLY2 ;YAKLASIK 3 MICRO SANIYE decfsz lsb,F ;1 INS goto DLY2 ;2 INS decfsz msb,F ;1 INS goto DLY1 ;2 INS RETURN
;**************************************************************************** ; PROGRAMI SONLANDIRMAK ICIN PROGRAM SONUNA END YAZILIR ;**************************************************************************** END
PIC i external osc ile çalıştır programı da external osc ye göre derle. kolay gelsin...
benim o kadar bilgim yok ki :)
programlama ile ilgili pek bişi bilmiyorum bu programın üzerine onu ekliyemezmiyim?
programmı derlerken sadece ext osc seçeneğini tıklayacaksın o kadar. programda bir değişiklik olmayacak bunun yanında bir de xtal osc devresi yapacaksın. farklı hızlar için osc devresi çıkşını bir sayıcı ile bölerek ledlerin yanıp sönme hızlarnı değiştirebileceksin...
hımm bakalım bi deneme yapim yarın sonucu bildiririm :) çok saol :)
yeni mesaja git
Yeni mesajları sizin için sürekli kontrol ediyoruz, bir mesaj yazılırsa otomatik yükleyeceğiz.Bir Daha Gösterme