4017'leri arka arkaya bağlamak

Başlatan alabora, 30 Nisan 2007, 17:29:39

alabora

Yapmaya çalıştığım devrede 2 adet 4017'i kullanıp bunlarla 16 sutün bir ledbar yapmayı hedefledim. Problemim 1.ci 4017'i Enable ettiğimde 2.cinin 1. sütunu açık kalıyo ve 2.ci enable olduğunda ise 1.cinin 1. sütunu açık kalıyor.

devre şeması

;**********************************************************************

	list      p=16f628A           ; list directive to define processor
	#include <p16F628A.inc>       ; processor specific variable definitions

	errorlevel  -302              ; suppress message 302 from list file

	__CONFIG   _CP_OFF & _DATA_CP_OFF & _LVP_OFF & _BOREN_OFF & _MCLRE_OFF & _WDT_OFF & _PWRTE_ON & _INTOSC_OSC_NOCLKOUT 



;***** VARIABLE DEFINITIONS
sayac equ 0x61


;**********************************************************************
	ORG     0x000             ; processor reset vector
		goto    main              ; go to beginning of program
	

	ORG     0x004             ; interrupt vector location
	retfie                    ; return from interrupt

main
	call initial
	call	gecikme
	call	gecikme 
	call 	gecikme

goster_devam
	bcf	STATUS,5

	bsf PORTA,1
	bcf PORTA,1

	bcf PORTA,2
	bsf PORTA,3
	
	call gecikme

;1nci ledbar////////////////	
	movlw b'10000011'
	movwf PORTB
	bsf	PORTA,0
	bcf	PORTA,0
		call gecikme
	
	movlw b'11101101'
	movwf PORTB
	bsf	PORTA,0
	bcf	PORTA,0
		call gecikme

	movlw b'11101101'
	movwf PORTB
	bsf	PORTA,0
	bcf	PORTA,0
		call gecikme

	movlw b'10000011'
	movwf PORTB
	bsf	PORTA,0
	bcf	PORTA,0
		call gecikme
	
	movlw	0xFF
	movwf PORTB
	bsf	PORTA,0
	bcf	PORTA,0
		call gecikme


	movlw	0xFF
	movwf PORTB
	bsf	PORTA,0
	bcf	PORTA,0
	call gecikme

                movlw	0xFF
	movwf PORTB	
	bsf	PORTA,0
	bcf	PORTA,0
	call gecikme

                movlw	0xFF
	movwf PORTB
	bsf	PORTA,0
	bcf	PORTA,0
	call gecikme

                movlw	0xFF
	movwf PORTB
	bsf	PORTA,0
	bcf	PORTA,0
	call gecikme

                movlw	0xFF
	movwf PORTB
	bsf	PORTA,0
	bcf	PORTA,0
	call gecikme

;2nci ledbar//////////////////////
bsf PORTA,1
bcf PORTA,1

bsf PORTA,2
bcf PORTA,3

	movlw b'10000011'
	movwf PORTB
	bsf	PORTA,0
	bcf	PORTA,0
		call gecikme
	

	movlw b'11101101'
	movwf PORTB
	bsf	PORTA,0
	bcf	PORTA,0
		call gecikme

	movlw b'11101101'
	movwf PORTB
	bsf	PORTA,0
	bcf	PORTA,0
		call gecikme

	movlw b'10000011'
	movwf PORTB
	bsf	PORTA,0
	bcf	PORTA,0
		call gecikme
	
	movlw	0xFF
	movwf PORTB
	bsf	PORTA,0
	bcf	PORTA,0
		call gecikme


	movlw	0xFF
	movwf PORTB
	bsf	PORTA,0
	bcf	PORTA,0
	call gecikme

	movlw	0xFF
	movwf PORTB	
	bsf	PORTA,0
	bcf	PORTA,0
	call gecikme

	movlw	0xFF
	movwf PORTB
	bsf	PORTA,0
	bcf	PORTA,0
	call gecikme

	movlw	0xFF
	movwf PORTB
	bsf	PORTA,0
	bcf	PORTA,0
	call gecikme

	movlw	0xFF
	movwf PORTB
	bsf	PORTA,0
	bcf	PORTA,0
	call gecikme

goto goster_devam
	
initial
	bsf	STATUS,5
	clrf TRISB	
	movlw	b'11110000';define porta as colums
	movwf	TRISA
	
	movlw	b'00001000' ;presclaer for WTD;WTD off
	movwf	OPTION_REG
	bcf	STATUS,5

	movlw	b'00000111' ;comp is off
	movwf	CMCON

	clrf PORTA
	clrf	INTCON	;define interrupt for T0

	return

gecikme
	movlw 255
	movwf	sayac
dongu
	decfsz sayac,1
	goto dongu
	return
	END                      


Yardımlarınızı bekliyorum

OG

Reset yapılmış bir 4017, 0 nolu çıkışını aktif yapar. Bunu dikkate almanız gerekir. 0 numarayı kullanmayıp 1 hane kaydırır  ve ona göre bir clock sürerseniz çözüm olabilir. Diğer taraftan 4017 nin akım çıkış kapasitesi düşüktür, ledleri yeterince süremez.
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

alabora

OG Hocam
Tavsiyeniz için sağolun. Bu akşam deniyecem dediklerinizi