Hi,
benutze zwar nen anderen controller aber:

nit
bsf STATUS,RP0
movlw B'00000000' ; PortB alle output
movwf TRISB
bcf STATUS, RP0 ; auf Bank 0 zurückschalten
clrf PORTB ; alle LEDs ausschalten
bsf STATUS,RP0 ; Bank1
bcf PORTC, 6 ; PortC output 6 (tx COM) !!!!!!!!!!!!!muss auf 1 !!!
bsf PORTC, 7 ; PortC input 7 (rx COM) !!!!!muss auf 1!!!!!!!!
bcf STATUS,RP0

; USART initialisieren
BCF STATUS,RP0 ; Bank1
MOVLW 0x20 ; Sender: RS232
MOVWF TXSTA ;
MOVLW 0x90 ; Empfänger: RS232
MOVWF RCSTA
BCF STATUS,RP0 ;
; USART Baudrate einstellen
BSF STATUS,RP0 ; Bank1
MOVLW d'25' ; Set Baud rate 2,4 kBPS bei 4 MHz
MOVWF SPBRG
BCF TXSTA, BRGH ; BRGH=0
BCF STATUS,RP0 ; Bank 0
RS232in
btfss PIR1,RCIF ; sind Daten da ?
goto RS232in ; nein, noch keine Daten da
bcf PIR1,RCIF
movfw RCREG ; RS232-Register auslesen
movwf PORTB ; u nd nach 'PORTB' schreiben
bsf PIR1,TXIF !!!!!!!!!brauchste nicht!!!
goto RS232out
RS232out
btfss PIR1,TXIF ; ist Sender leer ?
goto RS232out ; nein, noch nicht leer
bcf PIR1,TXIF !!!!!!!!!brauchste nicht!!!
movfw PORTB ; nächstes Byte holen
movwf TXREG ; und in den RS232-Sender schreiben
goto RS232in
end

Das ist mirt auf den ersten Blick aufgefallen .

SChau mal in das Datenblatt .

Die RX/TX müssen auf eines da du sonst RX = Ausgang = 0 = masse das signal auf null ziehst!!!

Ist mit auch erst letzte Woche paasiert !

mfg