2 pic arasinda 2 ucla veri alma-verme

Başlatan yalnayak, 28 Eylül 2007, 00:59:19

yalnayak

seri haberleserek bir picten digerine 2 ucla displayde gostermek uzere
8 bitlik data gondermek istiyorum.
ben data gonderen picin asm sini asagidaki gibi yaptim.veriyi gonderen ucta ve zamani belirleyen ucta sinyalleri goruyorum.bu sinyale gore alici kismini ayarlayip veriyi veren uctan gelen sinyalleri bir registirde toplayacagim.8 bit oldugunda da alan pic bunu 7 segment displayde gostrecek.amacim bu.
sorum ise su.henuz alici kismini yapmadan sormak istiyorum..asagidaki programdan daha kisa daha kararli bir sekilde ve programin diger kismini kasmadan baska nasil yazilabilinir..selamlar..

SAYAC		EQU	38
DSP		EQU	39
DSP1		EQU	40

;***************************************************
#define	SDA	PORTA,1	;BILGI
#define SCK	PORTA,2	;ZAMAN
#define	LED	PORTA,3	;LED CIKISI
#define	BUTON	PORTA,0	;BUTON GİRİSİ


	ORG 	0
;****************************************************
DIA	BCF	STATUS,5
	CLRF	PORTA
	MOVLW	.7
	MOVWF	CMCON
	BSF	STATUS,5  
	BSF	OPTION_REG,7	
	MOVLW	B'00000001' 
	MOVWF	TRISA       	
   	MOVLW	B'00000000' 
	MOVWF	TRISB	    
	BCF	STATUS,5   
;****************************************************
	CLRF	PORTB
	CLRF	PORTA
	MOVLW	B'10010110'
	MOVWF	DSP

ENBAS	BSF	SCK
	
BAS	CALL	ZAM2	;BUTON ARKI GIDERME
	BTFSC	BUTON
	GOTO	ENBAS
	GOTO	FER

FER	CALL	ZAM2
	BTFSS	BUTON
	GOTO	FER
	CALL	SVERI	;VERI YOLLAMA ALT PROG.CAGIR
	GOTO	ENBAS
	GOTO	BAS
;****************************************************
;SERİ VERI GONDERME ALT PROGRAMI
;****************************************************
SVERI	BCF	SCK	
	BSF	SDA
	CALL	ZAM	;GECIKME
	CALL	ZAM
	BCF	SDA
	BSF	SCK
	CALL	ZAM
	CALL	ZAM
		
	MOVLW	.9
	MOVWF	SAYAC

DON	DECFSZ	SAYAC,F
	GOTO	GONDER
	BSF	LED
	CALL	ZAM1
	BCF	LED
	BCF	SDA
	BSF	SCK
	RETURN

GONDER	BCF	SCK
	BTFSC	DSP,0
	GOTO	BIR
	GOTO	SIFIR

BIR	BSF	SDA
	GOTO	KAYDIR

SIFIR	BCF	SDA
	GOTO	KAYDIR

KAYDIR	CALL	ZAM
	BSF	SCK
	RRF	DSP,F
	CALL	ZAM

	MOVF	DSP,W
	MOVWF	PORTB

	GOTO	DON
Kızımın iffeti batmakta rezîlin gözüne... Acırım tükürüğe billâhi, tükürsem yüzüne..! MEHMED AKİF ERSOY  Kardan Adaminla,GUNES'e calim mi satiyorsun?

bigbey

VERIYUKLE
		MOVFW		DSP		;GÖNDERİLECEK VERİ
		MOVWF		DISP		;VERİ İŞLEME REGİSTERİ
		MOVLW		H'08'
		MOVWF		DTA		;8 BİT GÖNDERİLDİMİ KONTROLÜ İÇİN
GONDER
		BCF		DS	
		BTFSC		DISP,7
		BSF		DS
		CALL		PALSED	
		BCF		STATUS,0
		RLF		DISP,F
		DECFSZ		DTA,F
		GOTO		GONDER
		RETURN
PALSED						;CLOCK PULSE 
		BSF		CP
		NOP				;
		NOP				;ZAMAN GECİKMESİ
		NOP				;
		NOP				;
		BCF		CP
		NOP				;
		NOP				;
		RETURN

;ZAMAN GECİKMESİNİ NOP SAYISI İLE İSTEDİĞİN DEĞERE AYARLAYABİLİRSİN

		END

Size tavsiyem RS232 uygulaması kullanmalısınız.
TA6R