Pıc16f628a

3 Haz 2013
107
0
Haftaya Mikrodenetleyici Tabanlı Kontrol dersimin uygulaması var.
İki adet programın isis programındaki devresi lazım.
Yardımcı olursanız sevinirim.:RpS_smile:

1. Çevrim tablosunun kullanılmasına örnek program. Bir step motoru PORTA’nın 0. bit’ine bağlı RA0 butonuna basınca sağa doğru döndüren, RA1 butonu basılı tutularak RA0 butonuna basıldığında da sola döndürür. Step motor uçlarına gönderilecek olan gerilimler PORTB’deki LED’lerde görülür.
Kod:
	LIST	p=16F628A
	INCLUDE	"P16F628A.INC"
SAYAC1	EQU	h'20'
SAYAC2	EQU	h'21'
ADIM	EQU	h'22'
	ORG	h'00'
	CLRF	PORTB
	BANKSEL	TRISB
	CLRF	TRISB
	MOVLW	h'FF'
	MOVWF	TRISA
	BANKSEL	PORTB
	MOVLW	h'07'
	MOVWF	CMCON
	MOVLW	h'FF'
	MOVWF	ADIM
BASLA
	BTFSC	PORTA, 0
	GOTO	BASLA
	BTFSC	PORTA, 7
	GOTO	SAG
SOL
	INCF	ADIM, F
	MOVF	ADIM, W
	ANDLW	b'00000111'
	CALL	ADIMTBL
	ANDLW	b'00001111'
	MOVWF	PORTB
	CALL	GECIKME
	GOTO	BASLA
SAG
	DECF	ADIM, F
	MOVF	ADIM, W
	ANDLW	b'00000111'
	CALL	ADIMTBL
	ANDLW	b'00001111'
	MOVWF	PORTB
	CALL	GECIKME
	GOTO	BASLA
ADIMTBL
	ADDWF	PCL, F
	RETLW	b'1000'
	RETLW	b'1100'
	RETLW	b'0100'
	RETLW	b'0110'
	RETLW	b'0010'
	RETLW	b'0011'
	RETLW	b'0001'
	RETLW	b'1001'
GECIKME
	MOVLW	h'FF'
	MOVWF	SAYAC1
DONGU1
	MOVLW	h'FF'
	MOVWF	SAYAC2
DONGU2
	DECFSZ	SAYAC2, F
	GOTO	DONGU2
	DECFSZ	SAYAC1, F
	GOTO	DONGU1
	RETURN
	END

2. Bipolar (4 uçlu) bir step motoru bir yöne doğru RA0 butonuna bastıkça adım adım döndüren program. Step motor uçlarına gönderilecek gerilimler PORTB’deki RB0~RB3 uçlarına bağlanan LED’lerde görülür.
Kod:
	LIST	p=16F628A
	INCLUDE	"p16F628A.INC"

SAYAC1	EQU	h'20'
SAYAC2	EQU	h'21'
ADIM	EQU	h'22'
	ORG	h'00'
	CLRF	PORTB
	BANKSEL	TRISB
	CLRF	TRISB
	MOVLW	h'FF'
	MOVWF	TRISA
	BANKSEL	PORTB
	MOVLW	h'07'
	MOVWF	CMCON
BASLA
	MOVLW	h'FF'
	MOVWF	ADIM
SONRAKI_ADIM
TEST_PORTA
	BTFSC	PORTA,0
	GOTO	TEST_PORTA
	INCF	ADIM, F
	MOVF	ADIM, W
	ANDLW	b'00000111'
	CALL	ADIMTBL
	ANDLW	b'00001111'
	MOVWF	PORTB
	CALL	GECIKME
	GOTO	SONRAKİ_ADIM
ADIMTBL
	ADDWF	PCL, F
	RETLW	b'1000'
	RETLW	b'1100'
	RETLW	b'0100'
	RETLW	b'0110'
	RETLW	b'0010'
	RETLW	b'0011'
	RETLW	b'0001'
	RETLW	b'1001'
GECIKME
	MOVLW	h'FF'
	MOVWF	SAYAC1
DONGU1
	MOVLW	h'FF'
	MOVWF	SAYAC2
DONGU2
	DECFSZ	SAYAC2, F
	GOTO	DONGU2
	DECFSZ	SAYAC1, F
	GOTO	DONGU1
	RETURN
	END
 
Son düzenleme:
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.