Detectado el error de los 2.2v, era problema de software que explico:
Programa bueno:
INIC BSF STATUS,5 ;bit 5 de STATUS a 1=banco 1
CLRF TRISB ;configura PORTB de salida
MOVLW B'11111111'
MOVWF TRISA ;configura PORTA de entrada
BCF STATUS,5 ;bit 5 de STATUS a 0=banco 0
main
movlw 0
movwf PORTB
MOVWF PORTA
buc btfsc PORTA,1 ;testeo el RA1
goto ilumina
goto apaga
ilumina
bsf PORTB,3
goto buc
apaga
bcf PORTB,3
goto buc
END
;----------------------------------
Programa con error de logica
INIC BSF STATUS,5 ;bit 5 de STATUS a 1=banco 1
CLRF TRISB ;configura PORTB de salida
MOVLW B'11111111'
MOVWF TRISA ;configura PORTA de entrada
BCF STATUS,5 ;bit 5 de STATUS a 0=banco 0
main
movlw 0
movwf PORTB
MOVWF PORTA
buc btfsc PORTA,1 ;testeo el RA1
goto ilumina
goto apaga
ilumina
bsf PORTB,3
goto main
apaga
bcf PORTB,3
goto main
END
; Conclusion: Un mal salto lo da cualquiera, ya tengo los 5v en RB3 y por suerte no se ha frito ni el PIC ni RB3.
Como transistor he hecho la configuracion que ha dejado "todopic" pero como no tenia el BC337 he puesto un BD135 y chufla el buzzer de escandalo con una resistencia de 1K.
Muchas gracias a todos por vuestra ayuda, ya se un poquito más que ayer.
Saludos.