Hola williambal
Disculpa la demora. Te paso lo que hice, pero si sos nuevo como yo, te recomiendo desde ya que utilices este programa, porque es buenisimo y ahorra muchisimo tiempo. Podes bajarte una demo desde la pagina webb de Niple (
www.niplesoft.com.ar) y la version full no es muy cara.
Yo uso un 16F84, conectado a un max232 para la comunicacion rs232. Este es el programa que use para probar, envia un valor decimal, espera 2 segundo, y despues envia otro. Te adjunto el archivo, cualquier cosa decime.
Ah, y tambien te dejo un programa que es para ver los datos en la PC, es muy util porque podes ver el dato que estas recibiendo en binario, decimal y hexa.

Mala suerte, no puedo subir los archivos.
Te adjunto aca el asm, si queres mandame una direccion de mail y te envio el otro programita.
Saludos
Dario
;------------------------------------------------------------
; Código assembler generado por Niple.
; Nombre del Proyecto:
; Autor: Desarrollo Niple.
; Fecha: 10/12/2004
; PIC: 16F84
; Velocidad de reloj: 4 Mhz
; Descripcion:
;------------------------------------------------------------
LIST P=PIC16F84
;------------------------------------------------------------
; Declaración de Registros
;------------------------------------------------------------
w equ 00h
status equ 0x03
portb equ 0x06
_np_temp1 equ 0x0c
_np_temp2 equ 0x0d
_np_temp3 equ 0x0e
_np_config_interrup equ 0x0f
_np_tiempo equ 0x10
_np_tiempo1 equ 0x12
_np_tiempo2 equ 0x13
_np_tiempo3 equ 0x14
trisb equ 0x86
;------------------------------------------------------------
; Declaración de Bits
;------------------------------------------------------------
c equ 0 ;carry / borrow bit
rb4 equ 4 ;bit 4 del puerto b
rp0 equ 5 ;registrer banck select bit
;------------------------------------------------------------
; Inicio
;------------------------------------------------------------
reset org 0
goto paso2
;------------------------------------------------------------
; programa principal
;------------------------------------------------------------
paso2
movlw b"00000000" ;configurar el puerto b como ssssssss
bsf status,rp0 ;cambiar a pagina 1
movwf trisb
bcf status,rp0 ;cambiar a pagina 0
bsf portb,rb4
;enviar un dato mediante comunicacion rs232
movlw d"35"
movwf _np_temp1
call rs232_tb4_1200
;temporizador 2 seg
movlw .2
call tiempo_1_255_seg
;fin del temporizador 2 seg
;enviar un dato mediante comunicacion rs232
movlw d"33"
movwf _np_temp1
call rs232_tb4_1200
;temporizador 2 seg
movlw .2
call tiempo_1_255_seg
;fin del temporizador 2 seg
goto paso2 ; cierra el ciclo
;------------------------------------------------------------
; Declaración de Subrutinas
;------------------------------------------------------------
rs232_tb4_1200
;enviar un dato rs232 por portb,4 (por codigo)
;_np_temp1 = dato a enviar
;_np_temp2 = contador de bits
movlw .8
bcf status,rp0 ;cambiar a pagina 0
movwf _np_temp2
bcf portb,4
call tiempo_1200_bd
rs232_tb4_1200_tx_otro
bcf portb,4
bcf status,c
rrf _np_temp1,1
btfsc status,c
bsf portb,4
call tiempo_1200_bd
decfsz _np_temp2,1
goto rs232_tb4_1200_tx_otro
bsf portb,4
call tiempo_1200_bd
return
tiempo_1_255_seg
movwf _np_tiempo
goto tiempo_1_255_seg_1
tiempo_1_255_seg_bucle2
nop
nop
nop
nop
nop
nop
nop
tiempo_1_255_seg_1
movlw .10
movwf _np_tiempo1
tiempo_1_255_seg_bucle1
nop
nop
movlw .99
movwf _np_tiempo2
tiempo_1_255_seg_bucle0
nop
nop
nop
movlw .200
movwf _np_tiempo3
tiempo_1_255_seg_bucle
nop
nop
decfsz _np_tiempo3,1
goto tiempo_1_255_seg_bucle
nop
nop
nop
decfsz _np_tiempo2,1
goto tiempo_1_255_seg_bucle0
nop
nop
nop
decfsz _np_tiempo1,1
goto tiempo_1_255_seg_bucle1
decfsz _np_tiempo,1
goto tiempo_1_255_seg_bucle2
return
tiempo_1200_bd
;temporizador de un bit a 1200 baudios
movlw .205
bcf status,rp0 ;cambiar a pagina 0
movwf _np_temp3
tiempo_1200_bd_bucle
nop
decfsz _np_temp3,1
goto tiempo_1200_bd_bucle
retlw 0
End