Das Program sieht nun folgendermassen aus:

Code:
	list p=16f627			
	#include "p16f627.inc"		
				
CHAR	equ	0X22

	__CONFIG        _BODEN_ON & _CP_OFF & _DATA_CP_OFF & _PWRTE_ON & _WDT_OFF & _LVP_OFF & _MCLRE_ON & _XT_OSC

	ERRORLEVEL	-302		
	org	0x00			
	goto	MAIN			
	org	0x04			

	org	0x05
;*************************************************************
MAIN
;*************************************************************

;-----------------------------------------------------------------------------
INITUSART
;-----------------------------------------------------------------------------
	BSF     STATUS,RP0        ; switch to Bank1 
    	MOVLW	0x20              ; sender: RS232 
	MOVWF	TXSTA		  ;
    	BCF     STATUS,RP0        ; switch to Bank 0 
    	MOVLW   0x90              ; receiver: RS232 
    	MOVWF   RCSTA             ;
	movlw	0x07			; Comparator aus und auf 
   	movwf	CMCON			; Digital IO 

	bsf	STATUS, RP0		; switch to bank1 
	movlw	b'00000010'		; RB1 = IN, sonst alles OUT 
	movwf	TRISA			; / 
 	bcf	STATUS, RP0		; switch to bank0 

;-----------------------------------------------------------------------------
SETBAUD
;-----------------------------------------------------------------------------
	BSF	STATUS,RP0		; Bank1 
	MOVLW	15			; Set Baud rate 19,2 kBPS bei 20 MHz 
	MOVWF	SPBRG
	BCF	TXSTA, BRGH		; BRGH=0 
	BCF	STATUS,RP0		; Bank 0

;-----------------------------------------------------------------------------
CLRPORTS
;-----------------------------------------------------------------------------
	clrf	PORTA
	clrf	PORTB

;-----------------------------------------------------------------------------
RECDATA1
;-----------------------------------------------------------------------------
	btfss	PIR1,RCIF        ; sind Daten da ? 
	goto	RECDATA1         ; nein, noch keine Daten da 
	;movfw	RCREG            ; RS232-Register auslesen 
	;movwf	CHAR	         ; und in den Speicher nach 'Zeichen' schreiben

;-----------------------------------------------------------------------------
SETB0ON					; set pin 0 on PortB to 1
;-----------------------------------------------------------------------------
;	bsf	STATUS, RP0		; switch to bank1
;	bcf	TRISB ^ 0x80, 0 	; set on port B pin 0 as output
;	bcf	STATUS, RP0		; switch back to bank0
	movlw	b'00000001'		; set bit 0 high in work reg
	movwf	PORTB			; move work reg to PORTB

;-----------------------------------------------------------------------------
LOOP					; long loop, this allows to see an LED
;-----------------------------------------------------------------------------
count1	equ 	15h
count2	equ 	16h
L1	decfsz	count1,1
	goto	L1
	decfsz	count2,1
	goto	L1
	goto	LOOP			; just for testing
end
Beim Start leuchtet sofort LED3, portb pin2, auf. LED1, portb pin 0, leuchtet nicht auf, wenn ich Daten via RS232 schicke.

Was ist hier falsch?

Vielen Dank für HIlfe.
Gruss
Sam