Servus,

die Application note habe ich schon... Die hat auch einige Fragen klären können. Dennoch bin ich nicht weiter.

Ich habe mal meinen Code nachgebessert. Aber Emfangen tue ich immer noch nichts

Code:
TART_PRESSURE_INIT

call	LCD_INIT

 bcf     STATUS, RP0     ; auf Bank 1 umschalten 
        movlw   B'00111111'     ; internen Takt zählen, Vorteiler zum Timer0, 32:1 
        movwf   T1CON 
		 bsf	STATUS,RP0
		movlw	b'00000000'
		movwf	TRISB
		movlw   0x00          ; 256-125=131 ((1MHz : 32 ): 125 = 250 Hz) 
        bcf     STATUS, RP0     ; auf Bank 0 zurückschalten 

clrf	RXDATA_HIGH
clrf	RXDATA_LOW
clrf	TXDATA

banksel	TRISC
movlw	b'00010000'
movwf	TRISC

banksel SSPSTAT
movlw	b'10000000'		; SMP=1, CKE=1, BF=0
movwf	SSPSTAT
banksel	SSPCON
movlw	b'00100010'    ;  WCOL=0, SSPOV=0, SSPEN=1, CKP=0, SSPM[3..0]= 0010 (FOSC/64)
movwf	SSPCON


bcf		SSPCON, SSPOV ; kein Überlauf
bcf		SSPCON, WCOL
bsf		SSPCON, SSPEN ; SPI=on

movwf	0x1d
movwf	SSPBUF		;

call	BF_BIT	

movwf	0x60
movwf	SSPBUF

call	BF_BIT	

banksel SSPSTAT
bsf	SSPSTAT,CKE
banksel	PORTA

movwf	0x10
movwf	SSPBUF		;

call	BF_BIT	

movwf	RXDATA_HIGH

movwf	0x01
movwf	SSPBUF

call	BF_BIT		

movwf	RXDATA_LOW


		call			LCD_LINE_1
	;	movf			LOW_BYTE,w
		movf			RXDATA_HIGH,w
		movwf			FOR_HEX
		call			HEX_AN_LCD

	call			LCD_LINE_2
	;	movf			LOW_BYTE,w
		movf			RXDATA_LOW,w
		movwf			FOR_HEX
		call			HEX_AN_LCD

banksel	TRISB
movlw	b'00000000'
movwf	TRISB
banksel PORTB
movlw	b'01010101'
movwf	PORTB
ABE
goto	ABE			

BF_BIT

Banksel	SSPSTAT
btfss	SSPSTAT, BF
goto	BF_BIT
banksel	PORTA
movf	SSPBUF,0

return
Wenn ich den Quarz nur für den ADC brauch müsste ich ja zumindest die Calb. Words lesen können... Oder etwa nicht?

Hat vielleicht irgendwer ein Prog für mich, in dem mit SPI gearbeitet wird?
Sollte ich mit dem Oszi den Quarz schwingen sehen? Und wenn wie?

gruß